Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using Library;
- namespace Fakultet
- {
- class Fakultet
- {
- string naziv;
- List<Student> spisakStudenata;
- int brDesetki;
- public List<Student> nisuDiplomirali38()
- {
- List<Student> listaa = new List<Student>();
- foreach (Student s in spisakStudenata)
- {
- if (!listaa.Contains(s))
- {
- if (s.S != Status.Diplomirao && s.SpisakPolozenih.Count > 38)
- listaa.Add(s);
- }
- }
- return listaa;
- }
- public double prosecnaOcena(Profesor p, string predmet)
- {
- int ocena = 0;
- int count = 0;
- foreach (Student s in spisakStudenata)
- {
- foreach (Ispit i in s.SpisakPolozenih)
- {
- if (i.Profesor.BrRadneKnjizice == p.BrRadneKnjizice && i.Predmet == predmet)
- {
- ocena += i.Ocena;
- count++;
- }
- }
- }
- return (double)ocena / count;
- }
- public List<string> studentiDaljina(int godina)
- {
- List<string> imePrezime = new List<string>();
- List<Student> jedinstveni = new List<Student>();
- foreach (Student s in spisakStudenata)
- {
- if (!jedinstveni.Contains(s)) jedinstveni.Add(s);
- }
- foreach (Student s in jedinstveni)
- {
- int g = Convert.ToInt32(s.BrIndeksa.Split('/')[1]);
- if (s.S == Status.NaDaljinu && g == godina)
- {
- imePrezime.Add(s.Ime + " " + s.Prezime);
- }
- }
- return imePrezime;
- }
- public bool viseOd9(List<string> predmeti, Student s)
- {
- foreach (Ispit i in s.SpisakPolozenih)
- {
- foreach (string predmet in predmeti)
- {
- if (i.Predmet == predmet && i.Ocena <= 9) return false;
- }
- }
- return true;
- }
- //predmeti sa najvecim brojem desetki - dicionary
- public List<string> najlaksiPredmet()
- {
- Dictionary<string, int> desetke = new Dictionary<string, int>();
- //ubacivanje svih 10-ki u dictionary
- foreach (Student s in spisakStudenata)
- {
- foreach (Ispit i in s.SpisakPolozenih)
- {
- if (i.Ocena == 10)
- {
- if (desetke.ContainsKey(i.Predmet)) desetke[i.Predmet]++;
- else desetke.Add(i.Predmet, 1);
- }
- }
- }
- //nalazenje najveceg broja
- int max = desetke.Values.Max();
- List<string> najlaksi = new List<string>();
- foreach (KeyValuePair<string, int> d in desetke)
- {
- if (d.Value == max) najlaksi.Add(d.Key);
- }
- return najlaksi;
- }
- public List<Student> nemaju6()
- {
- List<Student> listaa = new List<Student>();
- foreach (Student s in spisakStudenata)
- {
- bool ubaci = true;
- foreach (Ispit i in s.SpisakPolozenih)
- {
- if (i.Ocena == 6) ubaci = false;
- }
- if (ubaci && !listaa.Contains(s)) listaa.Add(s);
- }
- return listaa;
- }
- //poslednji ispit unesen u sistem
- public Ispit poslednji()
- {
- Ispit poslednji = new Ispit();
- DateTime datumPoslednjeg = spisakStudenata[0].SpisakPolozenih[0].Datum;
- foreach (Student s in spisakStudenata)
- {
- foreach (Ispit i in s.SpisakPolozenih)
- {
- if (i.Datum > datumPoslednjeg)
- {
- poslednji = i;
- datumPoslednjeg = i.Datum;
- }
- }
- }
- return poslednji;
- }
- //studenti cije prezime sadrzi sva zadata slova
- public List<Student> svaSlova(params char[] slova)
- {
- bool uneti = true;
- List<Student> studentii = new List<Student>();
- foreach (Student s in spisakStudenata)
- {
- foreach(char slovo in slova)
- {
- if (!s.Prezime.Contains(slovo)) uneti = false;
- }
- if (uneti) studentii.Add(s);
- }
- return studentii;
- }
- //predemti iz kojih su polozeni ispiti u poslednjih mesec dana
- //za svaku ocenu, broj predmeta koje je student polozio sa tom ocenom
- public void predmetiPoOcenama(out int sestice, out int sedmice, out int osmice, out int devetke, out int desetke)
- {
- sestice = 0; sedmice = 0; osmice = 0; devetke = 0; desetke = 0;
- foreach (Student s in spisakStudenata)
- {
- foreach (Ispit i in s.SpisakPolozenih)
- {
- switch (i.Ocena)
- {
- case 6: sestice++; break;
- case 7: sedmice++; break;
- case 8: osmice++; break;
- case 9: devetke++; break;
- case 10: desetke++; break;
- }
- }
- }
- }
- static void Main(string[] args)
- {
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement