Wyswietlanie metody gdzie jest blad

0

Witam , problem jest banalny lecz dlugo sie z tym mecze wiec postanowilem poprosic o pomoc.
Otóż w metodzie publicznej nazwie : **public int min() ** muszę wyswietlic minimalna zapłtę, czyli pobrac wartosc z pola zaplata. Wiem ze to jest banał ale jakos nie moglem uzyc tego pola wiec utowrzylem metode pomocnicza znajdujaca sie nad int min() .
Czyli program powinien mi wyswietlic 2280 , a caly czas wyswietla 0.
Gdzie mam błąd jezeli moglby ktos poprawic ten moj kodzik z gory bylbym szczerze bardzo wdzięczny.
Pozdrawiam.


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {

        class Osoba
        {
            public int rok_urodzenia;


            public Osoba(int r)
            {

                rok_urodzenia = r;

            }




        }

        class Klient : Osoba
        {
            public int zaplata;




            public Klient(int r, int z)
                : base(r)
            {
                zaplata = z;
            }



        }
       
        class Ewidencja
        {
            //na tablicach 

            public Osoba[] tab;
            public int i;
            public int[] zaplaty = new int[3];



            public Ewidencja(int n)  // konstruktor
            {
                // przekazanie wieklosci tablicy przez parametr 
                tab = new Osoba[n]; // tworzenie   tablicy n elementowej
                i = 0;
            }

            public void Insert(Osoba o) // 
            {
                tab[i] = o; // w [] miejsce w tablicy 
                i++;
            }

            public void Wypisz()
            {
                int p;
                for (p = 0; p < i; p++)
                {


                    if (tab[p] is Klient) // spr czy w tablicy na miejscu p jest klient
                    {
                        Console.WriteLine("Klient " + tab[p].rok_urodzenia + " " + (tab[p] as Klient).zaplata); //obiekt na miejscu p jako klienta
                    }

                  
                    else
                    {
                        Console.WriteLine("Osoba " + tab[p].rok_urodzenia + " ");
                    }
                }


            }
            public int Ile(Klient k)
            {
                int ile = 0;
                for (int t = 0; t < i; t++)
                {
                    if (tab[t] is Klient && (tab[t] as Klient).zaplata > k.zaplata)
                    {
                        ile++;
                    }
                }

                return ile;
            }

            void pomocnicza(Klient k)
            {
                for (int t = 0; t < i; t++)
                {
                    zaplaty[t] = (tab[t] as Klient).zaplata;
                }
            }





            public int min()
            {
                int minimalna = zaplaty[0];
                for (int t = 0; t < i; t++)
                {
                    if (zaplaty[t] < minimalna)
                    {
                        minimalna = zaplaty[t];
                    }
                }
                return minimalna;
            }













            static void Main(string[] args)
            {

                Ewidencja obiekt = new Ewidencja(1000);     //tworzymy nowy obiekt klasy ewidencja
                obiekt.Insert(new Osoba(1992));
                obiekt.Insert(new Klient(1953, 2280));
                obiekt.Insert(new Klient(1980, 3020));




                obiekt.Wypisz();
                Console.WriteLine(obiekt.min());
                




                Console.ReadLine();




            }
        }
    }
}
0

Nigdzie nie wywołujesz metody "pomocnicza" więc tablica "zaplaty" nigdy się nie uzupełnia

0
szogun1987 napisał(a):

Nigdzie nie wywołujesz metody "pomocnicza" więc tablica "zaplaty" nigdy się nie uzupełnia

a da sie to zrobic nie uzywajac pomocniczej ? hmm...
na pewno sie da sie ale nie wiem jak uzyc tej zaplaty jakos nie chce przejsc , z gry dzieki za pomoc.

0
Kimimaro napisał(a):
szogun1987 napisał(a):

Nigdzie nie wywołujesz metody "pomocnicza" więc tablica "zaplaty" nigdy się nie uzupełnia

a da sie to zrobic nie uzywajac pomocniczej ? hmm...
na pewno sie da sie ale nie wiem jak uzyc tej zaplaty jakos nie chce przejsc , z gry dzieki za pomoc.

Albo jakby ktos pomogl wywowal ta metode pomocnicza bo cos nie chce zalapac mi ;/

0

Wyliczenie możesz zrobić na wypisaniu jest to jakieś rozwiązanie

1 użytkowników online, w tym zalogowanych: 0, gości: 1