Advertisement
Guest User

Untitled

a guest
Jun 18th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.89 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using Library;
  6.  
  7. namespace Fakultet
  8. {
  9. class Fakultet
  10. {
  11. string naziv;
  12. List<Student> spisakStudenata;
  13. int brDesetki;
  14.  
  15. public List<Student> nisuDiplomirali38()
  16. {
  17. List<Student> listaa = new List<Student>();
  18. foreach (Student s in spisakStudenata)
  19. {
  20. if (!listaa.Contains(s))
  21. {
  22. if (s.S != Status.Diplomirao && s.SpisakPolozenih.Count > 38)
  23. listaa.Add(s);
  24.  
  25. }
  26. }
  27. return listaa;
  28. }
  29.  
  30. public double prosecnaOcena(Profesor p, string predmet)
  31. {
  32.  
  33. int ocena = 0;
  34. int count = 0;
  35. foreach (Student s in spisakStudenata)
  36. {
  37. foreach (Ispit i in s.SpisakPolozenih)
  38. {
  39. if (i.Profesor.BrRadneKnjizice == p.BrRadneKnjizice && i.Predmet == predmet)
  40. {
  41. ocena += i.Ocena;
  42. count++;
  43. }
  44. }
  45. }
  46. return (double)ocena / count;
  47. }
  48.  
  49. public List<string> studentiDaljina(int godina)
  50. {
  51. List<string> imePrezime = new List<string>();
  52. List<Student> jedinstveni = new List<Student>();
  53. foreach (Student s in spisakStudenata)
  54. {
  55. if (!jedinstveni.Contains(s)) jedinstveni.Add(s);
  56.  
  57. }
  58. foreach (Student s in jedinstveni)
  59. {
  60. int g = Convert.ToInt32(s.BrIndeksa.Split('/')[1]);
  61. if (s.S == Status.NaDaljinu && g == godina)
  62. {
  63. imePrezime.Add(s.Ime + " " + s.Prezime);
  64. }
  65. }
  66. return imePrezime;
  67. }
  68.  
  69. public bool viseOd9(List<string> predmeti, Student s)
  70. {
  71. foreach (Ispit i in s.SpisakPolozenih)
  72. {
  73. foreach (string predmet in predmeti)
  74. {
  75. if (i.Predmet == predmet && i.Ocena <= 9) return false;
  76. }
  77. }
  78. return true;
  79. }
  80.  
  81. //predmeti sa najvecim brojem desetki - dicionary
  82. public List<string> najlaksiPredmet()
  83. {
  84. Dictionary<string, int> desetke = new Dictionary<string, int>();
  85.  
  86. //ubacivanje svih 10-ki u dictionary
  87. foreach (Student s in spisakStudenata)
  88. {
  89. foreach (Ispit i in s.SpisakPolozenih)
  90. {
  91. if (i.Ocena == 10)
  92. {
  93. if (desetke.ContainsKey(i.Predmet)) desetke[i.Predmet]++;
  94. else desetke.Add(i.Predmet, 1);
  95. }
  96. }
  97. }
  98. //nalazenje najveceg broja
  99. int max = desetke.Values.Max();
  100. List<string> najlaksi = new List<string>();
  101. foreach (KeyValuePair<string, int> d in desetke)
  102. {
  103. if (d.Value == max) najlaksi.Add(d.Key);
  104. }
  105.  
  106.  
  107.  
  108. return najlaksi;
  109.  
  110.  
  111. }
  112.  
  113. public List<Student> nemaju6()
  114. {
  115. List<Student> listaa = new List<Student>();
  116. foreach (Student s in spisakStudenata)
  117. {
  118. bool ubaci = true;
  119. foreach (Ispit i in s.SpisakPolozenih)
  120. {
  121. if (i.Ocena == 6) ubaci = false;
  122. }
  123. if (ubaci && !listaa.Contains(s)) listaa.Add(s);
  124. }
  125. return listaa;
  126. }
  127.  
  128. //poslednji ispit unesen u sistem
  129. public Ispit poslednji()
  130. {
  131. Ispit poslednji = new Ispit();
  132. DateTime datumPoslednjeg = spisakStudenata[0].SpisakPolozenih[0].Datum;
  133. foreach (Student s in spisakStudenata)
  134. {
  135. foreach (Ispit i in s.SpisakPolozenih)
  136. {
  137. if (i.Datum > datumPoslednjeg)
  138. {
  139. poslednji = i;
  140. datumPoslednjeg = i.Datum;
  141. }
  142. }
  143. }
  144. return poslednji;
  145. }
  146.  
  147.  
  148. //studenti cije prezime sadrzi sva zadata slova
  149. public List<Student> svaSlova(params char[] slova)
  150. {
  151. bool uneti = true;
  152. List<Student> studentii = new List<Student>();
  153. foreach (Student s in spisakStudenata)
  154. {
  155. foreach(char slovo in slova)
  156. {
  157. if (!s.Prezime.Contains(slovo)) uneti = false;
  158. }
  159. if (uneti) studentii.Add(s);
  160. }
  161. return studentii;
  162. }
  163.  
  164. //predemti iz kojih su polozeni ispiti u poslednjih mesec dana
  165.  
  166. //za svaku ocenu, broj predmeta koje je student polozio sa tom ocenom
  167. public void predmetiPoOcenama(out int sestice, out int sedmice, out int osmice, out int devetke, out int desetke)
  168. {
  169. sestice = 0; sedmice = 0; osmice = 0; devetke = 0; desetke = 0;
  170. foreach (Student s in spisakStudenata)
  171. {
  172. foreach (Ispit i in s.SpisakPolozenih)
  173. {
  174. switch (i.Ocena)
  175. {
  176. case 6: sestice++; break;
  177. case 7: sedmice++; break;
  178. case 8: osmice++; break;
  179. case 9: devetke++; break;
  180. case 10: desetke++; break;
  181. }
  182. }
  183. }
  184. }
  185.  
  186. static void Main(string[] args)
  187. {
  188.  
  189. }
  190. }
  191. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement