Advertisement
miljdze

Untitled

Dec 14th, 2016
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.10 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 ConsoleApplication169
  8. {
  9. class Program
  10. {
  11. /*Treba da uneses ime, prezime i ID korisnika... upises u fajl ako fajl ne postoji,
  12. * a ako postoji ocitas sta pise i dodas ovo novo. Prva linija u fajlu je broj koliko ima korisnika u fajlu.
  13. * Od njihovih ID-jeva treba da napravis matricu..ali tako da oni od nazad budu uneseni..Sa konzole treba da se u
  14. * nese jos jedna matrica dimenzija koje se zadaju isto preko konzole ... ako mozes oduzmes matrice,
  15. * ako ne moze saberes parne elemente na glavnoj dijagonali jedne te matrice i ispises u neki novi fajl
  16. * i da ako nemos da popunis matricu sa ID treba da izadje iz svega
  17. *
  18. * */
  19. struct Korisnik
  20. {
  21. public string ime;
  22. public string prezime;
  23. public int id;
  24.  
  25. }
  26. static int[,] matrica3x3(List<Korisnik> Lista)
  27. {
  28. int[,] matrica = new int[3,3];
  29. for (int i = matrica.GetLength(0) - 1 ; i >= 0; i--)
  30. {
  31. for (int j = matrica.GetLength(0) - 1; j >= 0; j--)
  32. {
  33. foreach (var kor in Lista)
  34. {
  35. matrica[i, j] = kor.id;
  36. }
  37. }
  38. }
  39.  
  40. return matrica;
  41. }
  42.  
  43. static int[,] UnosMatrice()
  44. {
  45. Console.Write("Unesite broj redova: ");
  46. int br = int.Parse(Console.ReadLine());
  47. Console.Write("Unesite broj kolona: ");
  48. int bk = int.Parse(Console.ReadLine());
  49. int[,] matrica = new int[br, bk];
  50. Console.WriteLine("Unesite elemente matrice: ");
  51. for (int i = 0; i < br; i++)
  52. {
  53. for (int j = 0; j < bk; j++)
  54. {
  55. matrica[i, j] = int.Parse(Console.ReadLine());
  56. }
  57. }
  58.  
  59. return matrica;
  60.  
  61. }
  62.  
  63. static int[,] razlikaMatrica(int[,] matrica1, int[,] matrica2)
  64. {
  65. StreamWriter sr = new StreamWriter("razlikaMatrica.txt");
  66. int[,] razMat = new int[matrica1.GetLength(0), matrica1.GetLength(1)];
  67. for (int i = 0; i < razMat.GetLength(0); i++)
  68. {
  69. for (int j = 0; j < razMat.GetLength(1); j++)
  70. {
  71. razMat[i, j] = matrica1[i, j] - matrica2[i, j];
  72. }
  73. }
  74. for (int i = 0; i < razMat.GetLength(0); i++)
  75. {
  76. for (int j = 0; j < razMat.GetLength(1); j++)
  77. {
  78. sr.Write(razMat[i, j]);
  79. }
  80. sr.WriteLine();
  81. }
  82.  
  83. sr.Close();
  84.  
  85. return razMat;
  86. }
  87. static int sumDijagonala(int[,] matrica)
  88. {
  89. StreamWriter sw = new StreamWriter("sumaParnihDijagonala.txt");
  90. int sumDijagonala = 0;
  91. for (int i = 0; i < matrica.GetLength(0); i++)
  92. {
  93. for (int j = 0; j < matrica.GetLength(1); j++)
  94. {
  95. if (i == j)
  96. {
  97. if (matrica[i, j] % 2 == 0)
  98. {
  99. sumDijagonala = sumDijagonala + matrica[i, j];
  100. }
  101. }
  102. }
  103. sw.Write("Suma dijagonala je: {0}", sumDijagonala);
  104. }
  105. sw.Close();
  106. return sumDijagonala;
  107.  
  108. }
  109. static void Main(string[] args)
  110. {
  111. Korisnik korisnik;
  112. List<Korisnik> ListaKorisnika = new List<Korisnik>();
  113. string imeFajla = "Korisnici.txt";
  114. string opcija = "";
  115. if (File.Exists(imeFajla))
  116. {
  117. StreamReader f = File.OpenText(imeFajla);
  118. foreach (var kor in ListaKorisnika)
  119. {
  120. int brKorisnika = ListaKorisnika.Count;
  121. brKorisnika = int.Parse(f.ReadLine());
  122. korisnik.ime = f.ReadLine();
  123. korisnik.prezime = f.ReadLine();
  124. korisnik.id = int.Parse(f.ReadLine());
  125. }
  126. f.Close();
  127. }
  128. do {
  129. Console.Write("Unesite ime: ");
  130. korisnik.ime = Console.ReadLine();
  131. opcija = korisnik.ime;
  132. if (opcija == "end")
  133. break;
  134. Console.Write("Unesite prezime: ");
  135. korisnik.prezime = Console.ReadLine();
  136. opcija = korisnik.prezime;
  137. if (opcija == "end")
  138. break;
  139. Console.Write("Unesite ID korisnika: ");
  140. korisnik.id = int.Parse(Console.ReadLine());
  141.  
  142. ListaKorisnika.Add(korisnik);
  143.  
  144.  
  145. } while(opcija != "end");
  146.  
  147. if (ListaKorisnika.Count < 9)
  148. {
  149. do
  150. {
  151. Console.WriteLine("Greska!");
  152. break;
  153. } while (ListaKorisnika.Count < 9);
  154.  
  155. }
  156. else
  157. {
  158. int[,] matrica = matrica3x3(ListaKorisnika);
  159. int[,] matricaTast = UnosMatrice();
  160. if (matrica.GetLength(0) == matricaTast.GetLength(0) && matrica.GetLength(1) == matricaTast.GetLength(1))
  161. {
  162. razlikaMatrica(matrica, matricaTast);
  163.  
  164. }
  165. else
  166. {
  167. sumDijagonala(matricaTast);
  168.  
  169. }
  170.  
  171. }
  172.  
  173.  
  174. StreamWriter sw = File.AppendText(imeFajla);
  175. foreach (var kor in ListaKorisnika)
  176. {
  177. int brKorisnika = ListaKorisnika.Count;
  178. sw.WriteLine(brKorisnika);
  179. sw.WriteLine(kor.ime);
  180. sw.WriteLine(kor.prezime);
  181. sw.WriteLine(kor.id);
  182. }
  183. sw.Close();
  184.  
  185. Console.ReadKey();
  186.  
  187. }
  188.  
  189.  
  190. }
  191. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement