2020. március 22., vasárnap

2020.03.23. A szöveg pozícionálása, a tömbelemek cseréje; Lottó gyakorló feladat + megoldás+2 videó


        //1. Hozz létre egy 10 elemű tömböt, ami kicsi pozitív számokat tárol majd, a maximális érték 255 lehet! (Válaszd ehhez a legmegfelelőbb adattípust!)
        //2. Kérj be 5 lehetséges lottószámot (1-90), és mindegyiket egy lépésben helyezd el a tömbben! (Nem kell ellenőrizni, feltételezzük, hogy jól írja be a user.)
        //3. Tegyél a tömb többi elemébe véletlen lottószámokat!
        //4. Írasd ki a képernyőre a tömbben levő számokat a következő formában:
        //  Saját tipp:    Gép tippje: 
        //       5             66
        //      77             4
        //      10             8
        //      90             49
        //      55             69
//Segítség:
            Console.WriteLine("     Saját tipp:       Gép tippje:");
            Console.SetCursorPosition(5, 1); //oszlop, sor sorrendben
//tehát mennyit lépünk jobbra, mennyit lépünk lefelé
            Console.WriteLine("{0}", szam[0]);
//és így tovább
        //5. Kérj be egy számot 1 és 5 között!
        //6. Állapítsd meg, hogy a tömb ennyiedik eleme  tényleg 1 és 90 között van-e, és ennek a vizsgálatnak az eredményét tedd bele egy logikai változóba!
        //7. Ha a fenti változó értéke igaz, írd ki, hogy Minden rendben!; ha nem igaz, akkor kérj be helyette egy új számot, és tedd a tömbben a helyére!
        //8. Cseréld meg a tömb 6. és 10. elemének tartalmát! Ellenőrzésképpen írasd ki őket!
//Segítségképpen ezt a feladatot megoldva kapod. Meg kell tanulnod ezt a módszert.
            byte csere = szam[5];
            szam[5] = szam[9];
            szam[9] = csere;
//Tehát létrehozol egy változót, amiben elmented a 6. elemet.
//Aztán a 6. elemet felülírod a 10. elemmel.
//Aztán a 10. elemet az eredeti helyén felülírod az elmentett hatodik elemmel.

//Kész, meg vannak cserélve.
        //9. Hozz létre egy 3 elemű tömböt szavak tárolására!
        //10. Kérj be egy szót, és egy lépésben helyezd el a tömbben!
        //11. Egy változóba tedd bele a bekért szó hosszát!
        //12. Kérd be a második szót is!
        //13. A változó tartalmát NÖVELD MEG a második szó hosszával!
        //14. A harmadik szónál ugyanígy járj el.
        //15. Írd ki a szavakat a képernyőre egy sorban, nagybetűsre alakítva!
        //16. Végül írd ki a szavak hosszának átlagát!


Megoldás:
  //            Lottó
            // Hozz létre egy 10 elemű tömböt, ami kicsi pozitív számokat tárol majd, a maximális érték 255 lehet!(Válaszd ehhez a legmegfelelőbb adattípust!)
            byte[] szam = new byte[10];
            //-Kérj be 5 lehetséges lottószámot (1 - 90), és mindegyiket egy lépésben helyezd el a tömbben!(Nem kell ellenőrizni, feltételezzük, hogy jól írja be a user.)
            Console.Write("Add meg az 1. lottó számot: ");
            szam[0] = Convert.ToByte(Console.ReadLine());

            Console.Write("Add meg az 2. lottó számot: ");
            szam[1] = Convert.ToByte(Console.ReadLine());

            Console.Write("Add meg az 3. lottó számot: ");
            szam[2] = Convert.ToByte(Console.ReadLine());

            Console.Write("Add meg az 4. lottó számot: ");
            szam[3] = Convert.ToByte(Console.ReadLine());

            Console.Write("Add meg az 5. lottó számot: ");
            szam[4] = Convert.ToByte(Console.ReadLine());
            //-Tegyél a tömb többi elemébe véletlen lottószámokat!
            Random rnd = new Random();
            szam[5] = Convert.ToByte(rnd.Next(1, 91));
            szam[6] = Convert.ToByte(rnd.Next(1, 91));
            szam[7] = Convert.ToByte(rnd.Next(1, 91));
            szam[8] = Convert.ToByte(rnd.Next(1, 91));
            szam[9] = Convert.ToByte(rnd.Next(1, 91));
            //-Írasd ki a képernyőre a tömbben levő számokat a következő formában: (SetCursorPosition!)
            //     Saját tipp:       Gép tippje:   
            //     5                     66
            //     77                    4
            //     10                    8
            //     90                    49
            //     55                    69

            Console.Clear();
            Console.WriteLine("     Saját tipp:       Gép tippje:");
            Console.SetCursorPosition(5, 1);
            Console.WriteLine("{0}", szam[0]);
            Console.SetCursorPosition(5, 2);
            Console.WriteLine("{0}", szam[1]);
            Console.SetCursorPosition(5, 3);
            Console.WriteLine("{0}", szam[2]);
            Console.SetCursorPosition(5, 4);
            Console.WriteLine("{0}", szam[3]);
            Console.SetCursorPosition(5, 5);
            Console.WriteLine("{0}", szam[4]);

            Console.SetCursorPosition(27, 1);
            Console.WriteLine("{0}", szam[5]);
            Console.SetCursorPosition(27, 2);
            Console.WriteLine("{0}", szam[6]);
            Console.SetCursorPosition(27, 3);
            Console.WriteLine("{0}", szam[7]);
            Console.SetCursorPosition(27, 4);
            Console.WriteLine("{0}", szam[8]);
            Console.SetCursorPosition(27, 5);
            Console.WriteLine("{0}", szam[9]);


            //- Kérj be egy számot 1 és 5 között!
            Console.Write("Adj meg egy számot 1 és 5 között: ");
            int szamegy = Convert.ToInt32(Console.ReadLine());
            //-Állapítsd meg, hogy a tömb ennyiedik eleme tényleg 1 és 90 között van e, és ennek a vizsgálatnak az eredményét tedd bele egy logikai változóba!
            bool ertek = false;
            if (szam[szamegy - 1] >= 1 && szam[szamegy - 1] <= 90)
            {
                ertek = true;
            }
            else
            {
                ertek = false;
            }

            //-Ha a fenti változó értéke igaz, írd ki, hogy Minden rendben!; ha nem igaz, akkor kérj be helyette egy új számot, és tedd a tömbben a helyére!
            if (ertek) //(ertek == true)
            {
                Console.WriteLine("Minden rendben!");
            }
            else
            {
                Console.WriteLine("Nem volt jó a szám. Adj meg egy számot 1 és 90 között: ");
                szam[szamegy-1] = Convert.ToByte(Console.ReadLine());
                Console.WriteLine("Betettem a helyére a jó számot.");
            }
            //A többi elemet most nem ellenőrizzük.

            //-Cseréld meg a tömb 6.és 10.elemének tartalmát!Ellenőrzésképpen írasd ki őket!


            byte csere = szam[5];
            szam[5] = szam[9];
            szam[9] = csere;

            Console.WriteLine("A tömb 6. eleme (kicserélve a 10-el): {0}", szam[5]);
            Console.WriteLine("A tömb 10. eleme kicserélve a 6-al : {0}", szam[9]);

            //-Hozz létre egy 3 elemű tömböt szavak tárolására!

            string[] szavak = new string[3];

            //-Kérj be egy szót, és egy lépésben helyezd el a tömbben!(ne használj külön változót)

            Console.Write("Adj meg egy szót: ");
            szavak[0] = Console.ReadLine();

            //-Egy változóba tedd bele a bekért szó hosszát!
            double hossz = szavak[0].Length;


            //-Kérd be a második szót is!           
            Console.Write("Adj meg még egy szót: ");
            szavak[1] = Console.ReadLine();

            //-A változó tartalmát NÖVELD MEG a második szó hosszával!
            hossz = hossz + szavak[1].Length; //vagy szebben, C-sebben: hossz += szavak[1].Length;

            //-A harmadik szónál ugyanígy járj el.

            Console.Write("Adj meg egy harmadik szót: ");
            szavak[2] = Console.ReadLine();
            hossz = hossz + szavak[2].Length;

            //- Írd ki a szavakat a képernyőre egy sorban, nagybetűsre alakítva!
            Console.WriteLine("{0}, {1}, {2}", szavak[0].ToUpper(), szavak[1].ToUpper(), szavak[2].ToUpper());

            //-Végül írd ki a szavak hosszának átlagát!
            Console.WriteLine("Szavak hosszának átlaga: {0,0:0.000}", hossz / 3);
            Console.ReadLine();


Nincsenek megjegyzések:

Megjegyzés küldése