Advertisement
miljdze

Untitled

Dec 14th, 2016
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.30 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.IO;
  6.  
  7. namespace ConsoleApplication162
  8. {
  9. class Program
  10. {
  11. /* Zadatak je bio da se omoguci unos studenata(ime,prezime,poeni) sve dok se ne unese "end", treba ih ispisati
  12. * i sacuvati u fajlu, isto tako i kad sledeci put pokrenes program da se iscitaju studenti iz fajla, z
  13. * atim da se napravi matrica 3x3 od poena studenata, ako ih nema dovoljno, odnosno ako se matrica ne popuni do kraja ispise se greska
  14. * i zavrsi se program, u suprotnom tu matricu sabrati sa unetom kvadratnom matricom sa tastature i ispisati u novi fajl,
  15. * ako se ne mogu sabrati, sabrati sume njihovih glavnih dijagonala
  16. * i upisati u fajl, i bilo je jos da se na konzoli ispisu svi studenti sortirani po prezimenu, mislim da je to to
  17. * */
  18. struct Student
  19. {
  20. public string ime;
  21. public string prezime;
  22. public int brPoena;
  23. }
  24. static int[,] UnosMatrice()
  25. {
  26. Console.WriteLine("Unesite broj redova matrice: ");
  27. int br = int.Parse(Console.ReadLine());
  28. Console.WriteLine("Unesite broj kolona: ");
  29. int bk = int.Parse(Console.ReadLine());
  30. int[,] matrica = new int[br, bk];
  31. Console.WriteLine("Unesite elemente u matricu: ");
  32. for (int i = 0; i < br; i++)
  33. {
  34. for (int j = 0; j < bk; j++)
  35. {
  36. matrica[i, j] = int.Parse(Console.ReadLine());
  37. }
  38.  
  39. }
  40. return matrica;
  41. }
  42. static int[,] matrica3x3(List<Student> Lista)
  43. {
  44. int dim = 3;
  45. int[,] matrica = new int[3,3];
  46. for (int i = 0; i < 3; i++)
  47. {
  48. for (int j = 0; j < 3; j++)
  49. {
  50. foreach (var el in Lista)
  51. {
  52. matrica[i, j] = el.brPoena;
  53. }
  54. }
  55. }
  56. return matrica;
  57.  
  58. }
  59. static int[,] ZbirMatrica(int[,] matrica1, int[,] matrica2)
  60. {
  61. StreamWriter sw = new StreamWriter("Matrice.txt");
  62. int[,] sumMatrica = new int[matrica1.GetLength(0), matrica1.GetLength(1)];
  63. for (int i = 0; i < sumMatrica.GetLength(0); i++)
  64. {
  65. for (int j = 0; j < sumMatrica.GetLength(1); j++)
  66. {
  67. sumMatrica[i, j] = matrica1[i, j] + matrica2[i, j];
  68. }
  69.  
  70. }
  71. for (int i = 0; i < sumMatrica.GetLength(0); i++)
  72. {
  73. for (int j = 0; j < sumMatrica.GetLength(1); j++)
  74. {
  75. sw.Write(sumMatrica[i,j] + " ");
  76. }
  77. sw.WriteLine();
  78. }
  79. sw.Close();
  80. return sumMatrica;
  81.  
  82.  
  83. }
  84. static int sumDiagonala(int[,] matrica1, int[,] matrica2)
  85. {
  86. StreamWriter sw = new StreamWriter("SumaDijagonala.txt");
  87. int sumDiagonala1 = 0;
  88. int sumDiagonala2 = 0;
  89. int sumDiagonala3 = 0;
  90. for (int i = 0; i < matrica1.GetLength(0); i++)
  91. {
  92. for (int j = 0; j < matrica1.GetLength(1); j++)
  93. {
  94. if(i==j)
  95. {
  96. sumDiagonala1 = sumDiagonala1 + matrica1[i, j];
  97. }
  98.  
  99. }
  100. }
  101. for (int i = 0; i < matrica2.GetLength(0); i++)
  102. {
  103. for (int j = 0; j < matrica2.GetLength(1); j++)
  104. {
  105. if (i == j)
  106. {
  107. sumDiagonala2 = sumDiagonala2 + matrica2[i, j];
  108. }
  109.  
  110. }
  111. }
  112.  
  113. sumDiagonala3 = sumDiagonala1 + sumDiagonala2;
  114. sw.WriteLine("Suma dijagonala matrica je: {0}", sumDiagonala3);
  115. sw.Close();
  116. return sumDiagonala3;
  117.  
  118. }
  119. static void Prezimena(List<Student> Studenti)
  120. {
  121. Student student;
  122. foreach (var el in Studenti)
  123. {
  124.  
  125.  
  126. }
  127.  
  128. }
  129.  
  130.  
  131. static void Main(string[] args)
  132. {
  133. List<Student> SviStudenti = new List<Student>();
  134. Student student;
  135. string imeFajla = "Studenti.txt";
  136. string opcija;
  137. if (File.Exists(imeFajla))
  138. {
  139. StreamReader f = File.OpenText(imeFajla);
  140.  
  141. foreach (var stud in SviStudenti)
  142. {
  143.  
  144. student.ime = f.ReadLine();
  145. student.prezime = f.ReadLine();
  146. student.brPoena = int.Parse(f.ReadLine());
  147. }
  148.  
  149. f.Close();
  150. }
  151.  
  152. do {
  153. Console.WriteLine("Unesite ime studenta: ");
  154. student.ime = Console.ReadLine();
  155. opcija = student.ime;
  156. if (opcija == "end")
  157. break;
  158. Console.WriteLine("Unesite prezime studenta: ");
  159. student.prezime = Console.ReadLine();
  160. opcija = student.prezime;
  161. if (opcija == "end")
  162. break;
  163. Console.WriteLine("Unesite broj poeana studenta: ");
  164. student.brPoena = int.Parse(Console.ReadLine());
  165. SviStudenti.Add(student);
  166.  
  167.  
  168. } while(opcija != "end");
  169.  
  170. if (SviStudenti.Count < 9)
  171. {
  172. Console.WriteLine("GRESKA");
  173. }
  174. else
  175. {
  176. int[,] matrica = matrica3x3(SviStudenti);
  177. int[,] matricaTast = UnosMatrice();
  178. if (matrica.GetLength(0) == matricaTast.GetLength(0) && matrica.GetLength(1) == matricaTast.GetLength(1))
  179. {
  180. ZbirMatrica(matrica, matricaTast);
  181.  
  182. }
  183. else
  184. {
  185. sumDiagonala(matrica, matricaTast);
  186. }
  187.  
  188.  
  189. }
  190. StreamWriter sw = File.CreateText(imeFajla);
  191. foreach (var stud in SviStudenti)
  192. {
  193. sw.WriteLine(stud.ime);
  194. sw.WriteLine(stud.prezime);
  195. sw.WriteLine(stud.brPoena);
  196. }
  197.  
  198. sw.Close();
  199. Console.ReadKey();
  200.  
  201.  
  202.  
  203.  
  204. }
  205. }
  206. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement