2020. november 23., hétfő

2020.11.23. Tömbfüggvények, tömb másolás

 Nem leadandó, csak elvégzendő feladat: a Tömbfüggvények, tömb másolás lecke programját futtatni, tesztelni, és megtanulni belőle a függvényeket, tömbmásolást.


            int[] tomb = new int[5];

            Random rnd = new Random();

            for (int i = 0; i < tomb.Length; i++)

            {

                tomb[i] = rnd.Next(10);

            }

            Console.Write("Első tömb: ");

            for (int i = 0; i < tomb.Length; i++)

            {

                Console.Write("{0} ",tomb[i]);

            }

            Console.WriteLine();

 

            Console.Write("Első tömb átlaga: ");

            Console.WriteLine(tomb.Average());

            Console.Write("Első tömb tartalmazza-e a 6-ot:");

            Console.WriteLine(tomb.Contains(6));

            Console.Write("Első tömb minimuma: ");

            Console.WriteLine(tomb.Min());

            Console.Write("Első tömb maximuma: ");

            Console.WriteLine(tomb.Max());

            Console.Write("Első tömb összege: ");

            Console.WriteLine(tomb.Sum());

 

            //Létrehozok egy új tömböt és belemásolom az elsőt.

            //A második tömbön végrehajtott módosítások az elsőben is megjelennek.

 

            int[] tomb1 = new int[5]; //unnecessary assignment figyelmeztetést kapunk

            tomb1 = tomb; //továbbra is csak egy tömbünk van, mostmár tomb és tomb1 néven is elérhető

 

            Console.Write("Második tömb: ");

            for (int i = 0; i < tomb1.Length; i++)

            {

                Console.Write("{0} ", tomb1[i]);

            }

            Console.WriteLine();

 

            tomb1[0] = 15;

            Console.Write("Első tömb ");

            Console.WriteLine(tomb[0]); //ennek is 15 lesz az értéke

            Console.Write("Második tömb ");

            Console.WriteLine(tomb1[0]);

 

            //Tehát a fenti módszert ne alkalmazzuk, ha egy tömbből valódi másolatot szeretnénk csinálni.

 

            //A másolás számunkra alkalmas módja:

 

            int[] tomb2 = new int[5];

            for (int i = 0; i < tomb.Length; i++)

            {

                tomb2[i] = rnd.Next(10);

            }

            Console.WriteLine();

            int[] tomb3 = new int[5];

            Array.Copy(tomb2, tomb3, tomb.Length); //ezek után két független tömbünk van, ugyanazokkal az értékekkel

       

            Console.WriteLine("Harmadik tömb: ");

            for (int i = 0; i < tomb2.Length; i++)

            {

                Console.Write("{0} ", tomb2[i]);

            }

            Console.WriteLine();

            Console.WriteLine("Negyedik tömb: ");

            for (int i = 0; i < tomb3.Length; i++)

            {

                Console.Write("{0} ", tomb3[i]);

            }

            Console.WriteLine();

            tomb2[0] = 20;

            tomb3[0] = 30;

            tomb2[4] = 40;

            tomb3[4] = 50;

            Console.WriteLine("Változtatás után:");

            Console.WriteLine("Harmadik tömb: ");

            for (int i = 0; i < tomb2.Length; i++)

            {

                Console.Write("{0} ", tomb2[i]);

            }

            Console.WriteLine();

            Console.WriteLine("Negyedik tömb");

            for (int i = 0; i < tomb3.Length; i++)

            {

                Console.Write("{0} ", tomb3[i]);

            }

            Console.ReadLine();

 


Nincsenek megjegyzések:

Megjegyzés küldése