public static void PoziviPrekoDelegata()
        {
            //  Instancirati delegata tipa MojDelegat metodom StatičkaMetoda te pozvati delegata
            MojDelegat md = StatičkaMetoda;

            md();
            // Gornjem delegatu pridružiti metodu MetodaInstance te ponovno pozvati delegata
            StatičkeNestatičkeDelegatskeMetode o = new StatičkeNestatičkeDelegatskeMetode();

            md += o.MetodaInstance;
            md();
        }
Beispiel #2
0
        static void Suma(int n, MojDelegat F)
        {
            int[]     tab    = new int[n];
            int       suma   = 0;
            Stopwatch stoper = new Stopwatch();

            stoper.Start();

            for (int i = 0; i < n; i++)
            {
                tab[i] = i;
                suma  += tab[i];
                // Console.WriteLine(tab[i]);
            }
            stoper.Stop();
            Console.WriteLine("Czas wykonania: {0}, czas teoretyczny: {1}, T(n)/F(n): {2}",
                              stoper.ElapsedTicks, F(n), stoper.ElapsedTicks / F(n));
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            // MojDelegat F1 = new MojDelegat(Liniowa);
            MojDelegat F2 = new MojDelegat(Kwadratowa);



            //zapis do pliku
            using (new OutToFile("output.txt")) // redirect the output to a text file
            {
                // Tutaj nasz cały kod zawierający informacje, które chcemy przesłać do pliku
                for (int i = 1; i <= 20; i++)
                {
                    Suma(1000 * i, F2);
                }
            } // redirection ends upon exiting the using block

            Console.ReadKey();
        }
        static void Main(string[] args)
        {
            MojDelegat del1 = KlasaA.MetodA;
            MojDelegat del2 = KlasaB.MetodB;

            MojDelegat del = del1;

            del += del2;
            del("Miki Maus");
            Console.WriteLine("---");

            del -= del1;
            del("Dusko Dugousko");
            Console.WriteLine("---");

            del -= del2;
            del += del1;
            del("Patak Daca");
            Console.WriteLine("---");
        }
Beispiel #5
0
        static void Suma(int n, MojDelegat F)
        {
            int[]     tab    = new int[n];
            Stopwatch stoper = new Stopwatch();

            stoper.Start();

            int suma = 0;

            for (int i = 0; i < n; i++)
            {
                tab[i] = i;
                // Console.WriteLine(i);
                suma = suma + tab[i];
            }

            stoper.Stop();

            Console.WriteLine("{0,10}, {1,10}, {2,10}, {3,10}", n,
                              stoper.ElapsedTicks, F(n), stoper.ElapsedTicks / F(n));
        }
Beispiel #6
0
        static void Suma(int n, MojDelegat F)
        {
            int[] tab = new int[n];

            Stopwatch stoper = new Stopwatch();

            stoper.Start();

            int suma = 0;

            for (int i = 0; i < n; i++)
            {
                tab[i] = i;
                suma   = suma + tab[i];
                //Console.WriteLine(i);
            }

            stoper.Stop();
            Console.WriteLine("Rozmiar danych: {0,10}, Czas wykonania T: {1,10}, funkcja dopasowana F {2,10}," +
                              " iloraz T/F {3,10}",
                              n, stoper.ElapsedTicks, F(n), stoper.ElapsedTicks / F(n));
        }
 public static void InvokeDelegate(MojDelegat del) // parametar koji predstavlja delegat
 {
     del("Hello World");
 }
Beispiel #8
0
        static void Registruj(Klinika klinika17818, NormalniPacijent n, bool hitanSlucaj)
        {
            Hitnislucaj hitan17818 = new Hitnislucaj(n);

            if (hitanSlucaj)
            {
                Console.WriteLine("Je li pruzena prva pomoc?");
                string prvaPomoc    = Console.ReadLine();
                bool   ispravanUnos = Boolean.TryParse(prvaPomoc, out bool pruzenaPrvaPomoc);
                Console.WriteLine("Opisite postupak koji je proveden nad pacijentom...");
                string postupakPrvePomoci = Console.ReadLine();
                Console.WriteLine("Pacijent je stabiliziran?\n1-DA\n2-NE");
                int stabilan = Convert.ToInt32(Console.ReadLine());
                hitan17818.Stabilan = (stabilan == 1);
                if (hitan17818.Stabilan == false)
                {
                    Console.WriteLine("Pacijent je mrtav?\n" +
                                      "1-DA\n" +
                                      "2-NE");
                    int DaLiJeMrtav = Convert.ToInt32(Console.ReadLine());
                    if (DaLiJeMrtav == 1)
                    {
                        Console.WriteLine("Unesite datum i vrijeme smrti...");
                        hitan17818.VrijemeSmrti = Console.ReadLine();
                        Console.WriteLine("Opisite postupak lijecenja pacijenta...");
                        hitan17818.PostupakLijecenja = Console.ReadLine();
                        Console.WriteLine("Koji je uzrok smrti pacijenta?");
                        hitan17818.UzrokSmrti = Console.ReadLine();
                        Console.WriteLine("Unesite rezultat obdukcije...");
                        hitan17818.Obdukcija = Console.ReadLine();
                    }
                }
            }
            Console.WriteLine("Unesite ime pacijenta...");
            n.Ime = Console.ReadLine();
            Console.WriteLine("Unesite prezime pacijenta...");
            n.Prezime = Console.ReadLine();
            Console.WriteLine("Unesite datum rodjenja pacijenta...");
            n.Datumrodjenja = Convert.ToDateTime(Console.ReadLine());
            Console.WriteLine("Unesite mat. broj pacijenta...");
            n.MaticniBroj = Console.ReadLine();
            Console.WriteLine("Kojeg je spola pacijent?");
            n.Spol = Console.ReadLine();
            Console.WriteLine("Unesite adresu pacijenta...");
            n.AdresaStanovanja = Console.ReadLine();
            NormalniPacijent pacijent17818_1; //od sada on preuzima da je lakse registrovati preglede

            if (hitanSlucaj == false)
            {
                klinika17818.pacijenti.Add(n);
                pacijent17818_1 = n;
            }
            else
            {
                klinika17818.pacijenti.Add(hitan17818);
                pacijent17818_1 = n;
            }
            Console.WriteLine("Dodan pacijent, sada ih ukupno ima {0}", klinika17818.pacijenti.Count());
            Console.Write(Environment.NewLine);
            Console.WriteLine("Za koje preglede ste zainteresirani?\n" +
                              "1-VOZACKA DOZVOLA\n" +
                              "2-SISTEMATSKI PREGLED\n" +
                              "3-SAM/A ZELIM BIRATI");
            int zainteresiran = Convert.ToInt32(Console.ReadLine());

            switch (zainteresiran)
            {
            case 1:
                MojDelegat delegat17818_1 = VozackaDozvola;
                delegat17818_1(klinika17818, pacijent17818_1);
                break;

            case 2:
                MojDelegat delegat17818_2 = PoslovniPregled;
                delegat17818_2(klinika17818, pacijent17818_1);
                break;

            case 3:
                MojDelegat delegat17818_3 = SamostalanIzbor;
                delegat17818_3(klinika17818, pacijent17818_1);
                break;
            }
        }
Beispiel #9
0
        public static void metodaZaObavijestiDELEGAT(KlasaElemenata ke, String tekstPoruke, String idKlijenta)
        {
            MojDelegat delegat = metodaZaObavijesti;

            delegat(ke, tekstPoruke, idKlijenta);
        }
Beispiel #10
0
        static void Main(string[] args)
        {
            Klinika MalaKlinika = new Klinika();
            Doktor  Medina      = new Doktor("Medina", "Dacic", "16051996", "1605996175068");

            MalaKlinika.DodajDoktora("Medina", "Dacic", "16051996", "1605996175068");
            MalaKlinika.DodajDoktora("Neki", "Sandzo", "11111991", "11111991175068");
            MalaKlinika.DodajPacijenta("Bolesnik", "Prvi", "01051996", "0105996175068");
            MalaKlinika.DodajPacijenta("Bolesnik", "Drugi", "12071996", "1207996175068");

            MalaKlinika.DodajOrdinaciju("Ortopedija", 102, true, 0);
            MalaKlinika.DodajOrdinaciju("Kardiologija", 103, true, 0);
            MalaKlinika.DodajOrdinaciju("Dermatologija", 104, true, 0);
            MalaKlinika.DodajOrdinaciju("Otorinolaringologija", 105, true, 0);
            MalaKlinika.DodajOrdinaciju("Oftalmologija", 106, true, 0);
            MalaKlinika.DodajOrdinaciju("Laboratorija", 107, true, 0);
            MalaKlinika.DodajOrdinaciju("Stomatologija", 108, true, 0);
            MalaKlinika.DodajOrdinaciju("Hirurgija", 109, true, 0);

            bool ValidacijaUnosa(ref int n)
            {
                if (n == 1 || n == 2 || n == 3 || n == 4 || n == 5 || n == 6 || n == 7 || n == 8)
                {
                    return(true);
                }

                return(false);
            }

            MojDelegat delegatic;

            delegatic = new MojDelegat(ValidacijaUnosa);



            int unos;

            Pacijent test_fja(ref bool testna)
            {
                string id;

                Console.WriteLine("Unesite id pacijenta: ");
                id = Console.ReadLine();
                MalaKlinika.NadjiOsobu(id, ref testna);
                if (testna == true)
                {
                    return(MalaKlinika.NadjiOsobu(id, ref testna));
                }
                else
                {
                    throw new Exception();
                }
            }

            do
            {
                Console.WriteLine("Dobro dosli!\nOdaberite neku od sljedecih opcija:\n");
                Console.WriteLine("1.Registruj/brisi pacijenta\n2.Prikazi raspored pregleda pacijenta\n3.Kreiranje kartona pacijenta\n4.Pretraga kartona pacijenta\n5.Registruj novi pregled\n6.Analiza sadrzaja\n7.Naplata\n8.Izlaz");
                int br = 0;
                do
                {
                    if (br == 1)
                    {
                        Console.WriteLine("Neispravan odabir opcije!\nPonovite odabir opcije!");
                    }
                    try
                    {
                        unos = Convert.ToInt32(Console.ReadLine());
                        br   = unos;
                    }
                    catch
                    {
                        Console.WriteLine("Pogresan odabir opcije!");
                        unos = -1;
                    }
                }while (!delegatic(ref unos));
                Pacijent p = new Pacijent(MalaKlinika);

                bool testna = true;
                switch (unos)
                {
                case 1:
                    Console.WriteLine("1 - za registraciju pacijenta\n2 - za brisanje pacijenta ");
                    string broj = Console.ReadLine();

                    if (broj == "1")
                    {
                        p.UnosOsobe();
                        MalaKlinika.DodajPacijenta(p);
                    }
                    else if (broj == "2")
                    {
                        testna = false;
                        p      = test_fja(ref testna);
                        p.BrisiPacijenta(p.DajID());
                    }
                    else
                    {
                        Console.WriteLine("Neispravan odabir opcije");
                    }
                    //p.Ispisi();
                    break;

                case 2:
                    //daje raspored pregleda
                    try
                    {
                        testna = false;
                        p      = test_fja(ref testna);

                        if (testna == true)
                        {
                            p.DajRasporedPregleda();
                        }
                    }
                    catch
                    {
                        Console.WriteLine("Neispravni podaci!\n");
                    }

                    break;

                case 3:
                    //kreira karton
                    try
                    {
                        testna = false;
                        p      = test_fja(ref testna);

                        if (testna == true)
                        {
                            p.KreirajKarton();
                        }
                    }
                    catch
                    {
                        Console.WriteLine("Neispravni podaci!\n");
                    }

                    break;

                case 4:
                    //pretraga kartona pacijenta
                    try
                    {
                        testna = false;
                        p      = test_fja(ref testna);

                        if (testna == true)
                        {
                            p.DajObavljenePreglede();
                            p.DajRasporedPregleda();
                        }
                    }
                    catch
                    {
                        Console.WriteLine("Neispravni podaci!\n");
                    }

                    break;

                case 5:
                    //registruj pregled, znaci dodaj zavrseni pregled

                    try
                    {
                        testna = false;
                        p      = test_fja(ref testna);

                        if (testna == true)
                        {
                            p.DodajZavrsenPregled();
                        }
                    }
                    catch
                    {
                        Console.WriteLine("Neispravni podaci!\n");
                    }



                    break;

                case 6:
                    //analiza sadrzaja
                    Console.WriteLine("Za listing svih doktora pritisnite 1\n" +
                                      "Za listing svih pacijenata pritisnite 2\n" +
                                      "Za najzastupljenije dječije zarazne bolesti pritisnite 3\n" +
                                      "Za odjel koji je najmanje posjećen ove godine pritisnite 4");
                    int opcija = Convert.ToInt32(Console.ReadLine());
                    if (opcija == 1)
                    {
                        MalaKlinika.IspisiSveDoktore();
                    }
                    else if (opcija == 2)
                    {
                        MalaKlinika.IspisiSvePacijente();
                    }
                    else if (opcija == 3)
                    {
                        Console.WriteLine("1.Vodene kozice(Varicele)\n2.Ospice\n3.Hripavac\n4.Rubeola");
                    }
                    else if (opcija == 4)
                    {
                        Console.WriteLine("Otorinolaringologija");
                    }

                    else
                    {
                        Console.WriteLine("Neispravan unos!");
                    }



                    break;

                case 7:
                    //naplata
                    try
                    {
                        testna = false;
                        p      = test_fja(ref testna);


                        int  cijena  = 15 * p.BrojObavljenihPregleda();
                        int  temp    = p.DajBrojDolazakaNaKliniku();
                        bool redovan = false;
                        if (temp > 3)
                        {
                            redovan = true;
                        }

                        Console.WriteLine("Gotovina ili rate : g ili r");
                        string nacin_placanja = Console.ReadLine();
                        if (nacin_placanja == "g")
                        {
                            if (redovan == true)
                            {
                                cijena = Convert.ToInt32((double)cijena * 0.9);
                            }
                            //p.DajObavljenePreglede();
                            Console.WriteLine("Za svaki navedeni pregled cijena je 15KM.\nUkupan iznos za naplatu je " + cijena);
                        }
                        else if (nacin_placanja == "r")
                        {
                            if (redovan == true)
                            {
                                ;
                            }
                            else
                            {
                                cijena = Convert.ToInt32((double)cijena * 1.15);
                            }
                            Console.WriteLine("Na koliko rata zelite placanje (najvise 4): ");
                            int br_rata = Convert.ToInt32(Console.ReadLine());
                            //p.DajObavljenePreglede();
                            Console.WriteLine("Za svaki obavljeni pregled cijena je 15KM.\nUkupan iznos naplate za prvu ratu  je " + cijena / br_rata);
                        }
                        p.PovecajBrojDolazaka();
                        p.AnulirajStanje();
                    }

                    catch
                    {
                        Console.WriteLine("Neispravni podaci!\n");
                    }



                    break;

                case 8:
                    break;
                }
            } while (unos != 8);
            Console.WriteLine("\nSrdacan pozdrav!");
            Console.ReadKey();
        }