2022. december 16., péntek

2022.12.16. Tömbök - bevezetés

Első órán számonkérés volt.

Házi feladat befejezni:

 using System;


namespace tombokBevezetese
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.BackgroundColor = ConsoleColor.Blue;
            Console.ForegroundColor = ConsoleColor.White;
            Console.Clear();
            //Végre valami érdekes :)
            //Tömb definiálása és értékadása:

            //típus[] tömbnév = new típus[elemszám];
            //definiálás: bal oldal
            //inicializálás (kezdőértékadás): az egyenlőségjel és a jobb oldal

            string[] nevek = new string[17]; //helyet foglalunk a new-val
            //17 string típusú értéknek a memóriában

            //Értékadás a tömb elemeinek programból:

            nevek[0] = "Öröm Melitta"; //ez az első elem, indexe:0
            nevek[1] = "Avon Mór";
            nevek[2] = "Ordy Bálint";
            nevek[3] = "Szikla Szilárd";
            nevek[4] = "Bekre Pál";
            nevek[5] = "Heu Réka";
            nevek[6] = "Mérta Nóra";
            nevek[7] = "Emanci Pál";
            nevek[8] = "Hot Elek";
            nevek[9] = "Parady Csoma";
            nevek[10] = "Patkóm Ágnes";
            nevek[11] = "Szüre Tibor";
            nevek[12] = "Teo Dóra";
            nevek[13] = "Veg Eta";
            nevek[14] = "Zúz Mara";
            nevek[15] = "Halo Lajos";
            nevek[16] = "Citad Ella"; //ez a 17. elem, indexe: 16

            //Tömbelem értékének kiírása a képernyőre:
            Console.WriteLine("A tömb első eleme: {0}", nevek[0]);
            Console.WriteLine("A tömb utolsó eleme: {0}", nevek[16]);
            Console.WriteLine();

            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérem a vezetékneved: ");
            nevek[0] = Console.ReadLine();
            Console.Write("Kérem keresztneved: ");
            nevek[1] = Console.ReadLine();

            //Művelet tömbelemekkel:
            Console.WriteLine("A neved: {0} {1}", nevek[0], nevek[1]);
            Console.WriteLine($"A neved: {nevek[0]} {nevek[1]}");
            Console.WriteLine();

            //További példák:

            int[] egeszSzamok = new int[10]; //10 elemű a tömb

            egeszSzamok[0] = 86;
            egeszSzamok[1] = 234217;
            //...
            egeszSzamok[9] = 56; //ez az utolsó, a 10. elem, indexe:9

            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy egész számot: ");
            egeszSzamok[0] = Convert.ToInt32(Console.ReadLine());
            Console.Write("Kérek egy újabb egész számot: ");
            egeszSzamok[9] = Convert.ToInt32(Console.ReadLine());


            //Művelet tömbelemekkel:
            Console.WriteLine($"Első és utolsó elem összege: {egeszSzamok[0] + egeszSzamok[9]}");
            Console.WriteLine();

            byte[] kisSzamok = new byte[20]; //20 elemű a tömb

            kisSzamok[0] = 31;
            kisSzamok[1] = 255;
            //...
            kisSzamok[19] = 4; //ez az utolsó, a 20. elem, indexe:19

            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy egész számot 0 és 255 között: ");
            kisSzamok[0] = Convert.ToByte(Console.ReadLine());
            Console.Write("Kérek egy újabb egész számot 0 és 255 között: ");
            kisSzamok[9] = Convert.ToByte(Console.ReadLine());

            //Művelet tömbelemekkel:
            Console.WriteLine($"Első és utolsó elem különbsége: {kisSzamok[0] - kisSzamok[9]}");
            Console.WriteLine();

            double[] valosSzamok = new double[100];

            valosSzamok[0] = 76.78;
            valosSzamok[1] = 9943.571;
            //...
            valosSzamok[99] = 0.5; //ez az utolsó!

            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy tört számot: ");
            valosSzamok[0] = Convert.ToDouble(Console.ReadLine());
            Console.Write("Kérek egy újabb tört számot: ");
            valosSzamok[99] = Convert.ToDouble(Console.ReadLine());

            //Művelet tömbelemekkel:
            Console.WriteLine($"Második elem osztva az utolsóval: {valosSzamok[1] / valosSzamok[99]}");
            Console.WriteLine();

            char[] betuk = new char[55];

            betuk[0] = 'g';
            betuk[1] = 'f';
            //...
            betuk[54] = 'W'; //ez az utolsó!  

            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy betűt: ");
            betuk[0] = Convert.ToChar(Console.ReadLine());
            Console.Write("Kérek egy újabb betűt: ");
            betuk[9] = Convert.ToChar(Console.ReadLine());

            //Művelet tömbelemekkel:
            Console.WriteLine($"A két betű egy szóként: {Convert.ToString(betuk[0]) + Convert.ToString(betuk[9])}");
            Console.WriteLine();

            bool[] logikaiErtekek = new bool[7];

            logikaiErtekek[0] = true;
            logikaiErtekek[1] = false;
            //...
            logikaiErtekek[6] = true; //ez az utolsó!

            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy logikai értéket (true/false): ");
            logikaiErtekek[0] = Convert.ToBoolean(Console.ReadLine());
            Console.Write("Kérek egy logikai értéket (true/false): ");
            logikaiErtekek[1] = Convert.ToBoolean(Console.ReadLine());

            //Művelet tömbelemekkel:
            Console.WriteLine($"első logikai érték ÉS a második logikai érték: {logikaiErtekek[0] && logikaiErtekek[1]}" );
            Console.WriteLine();

            Console.ReadLine();

            //Feladatok:

            //1.Hozz létre egy egész értékeket tartalmazó tömböt kedved szerinti elemszámmal (max. 5).
            //2.Töltsd föl adatokkal.

            //3.Írd ki két tetszőleges elem értékét a képernyőre.

            //4.Írd ki a képernyőre egy szomszédos elemmel végzett szorzás eredményét.

            //5.A fenti műveleteket ismételd meg más adattípusokkal, tehát double, char, stb. tömbökkel.
            //Mindig az adattípusnak megfelelő műveleteket végezz.
            //Pl.: double, byte: matematikai művelet;
            //char: nagybetűsre alakítás (előtte stringgé kell alakítani);
            //string: mondjuk meg a hosszát (.Length);
            //bool: logikai művelet
        }
    }
}

Órai megoldás:

using System;
namespace tombokBevezetese
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.BackgroundColor = ConsoleColor.Blue;
            Console.ForegroundColor = ConsoleColor.White;
            Console.Clear();
            //Végre valami érdekes :)
            //Tömb definiálása és értékadása:
            //típus[] tömbnév = new típus[elemszám];
            //definiálás: bal oldal
            //inicializálás (kezdőértékadás): az egyenlőségjel és a jobb oldal
            string[] nevek = new string[17]; //helyet foglalunk a new-val
            //17 string típusú értéknek a memóriában
            //Értékadás a tömb elemeinek programból:
            nevek[0] = "Öröm Melitta"; //ez az első elem, indexe:0
            nevek[1] = "Avon Mór";
            nevek[2] = "Ordy Bálint";
            nevek[3] = "Szikla Szilárd";
            nevek[4] = "Bekre Pál";
            nevek[5] = "Heu Réka";
            nevek[6] = "Mérta Nóra";
            nevek[7] = "Emanci Pál";
            nevek[8] = "Hot Elek";
            nevek[9] = "Parady Csoma";
            nevek[10] = "Patkóm Ágnes";
            nevek[11] = "Szüre Tibor";
            nevek[12] = "Teo Dóra";
            nevek[13] = "Veg Eta";
            nevek[14] = "Zúz Mara";
            nevek[15] = "Halo Lajos";
            nevek[16] = "Citad Ella"; //ez a 17. elem, indexe: 16
            //Tömbelem értékének kiírása a képernyőre:
            Console.WriteLine("A tömb első eleme: {0}", nevek[0]);
            Console.WriteLine("A tömb utolsó eleme: {0}", nevek[16]);
            Console.WriteLine();
            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérem a vezetékneved: ");
            nevek[0] = Console.ReadLine();
            Console.Write("Kérem keresztneved: ");
            nevek[1] = Console.ReadLine();
            //Művelet tömbelemekkel:
            Console.WriteLine("A neved: {0} {1}", nevek[0], nevek[1]);
            Console.WriteLine($"A neved: {nevek[0]} {nevek[1]}");
            Console.WriteLine();
            //További példák:
            int[] egeszSzamok = new int[10]; //10 elemű a tömb
            egeszSzamok[0] = 86;
            egeszSzamok[1] = 234217;
            //...
            egeszSzamok[9] = 56; //ez az utolsó, a 10. elem, indexe:9
            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy egész számot: ");
            egeszSzamok[0] = Convert.ToInt32(Console.ReadLine());
            Console.Write("Kérek egy újabb egész számot: ");
            egeszSzamok[9] = Convert.ToInt32(Console.ReadLine());
            //Művelet tömbelemekkel:
            Console.WriteLine($"Első és utolsó elem összege: {egeszSzamok[0] + egeszSzamok[9]}");
            Console.WriteLine();
            Console.WriteLine("Az egeszSzamok tömb elemei:");
            for (int i = 0; i < egeszSzamok.Length; i++)
            {
                Console.WriteLine(egeszSzamok[i]);
            }
            Console.ReadLine();
            byte[] kisSzamok = new byte[20]; //20 elemű a tömb
            kisSzamok[0] = 31;
            kisSzamok[1] = 255;
            //...
            kisSzamok[19] = 4; //ez az utolsó, a 20. elem, indexe:19
            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy egész számot 0 és 255 között: ");
            kisSzamok[0] = Convert.ToByte(Console.ReadLine());
            Console.Write("Kérek egy újabb egész számot 0 és 255 között: ");
            kisSzamok[9] = Convert.ToByte(Console.ReadLine());
            //Művelet tömbelemekkel:
            Console.WriteLine($"Első és utolsó elem különbsége: {kisSzamok[0] - kisSzamok[9]}");
            Console.WriteLine();
            Console.WriteLine("A kisSzamok tömb elemei:");
            for (int i = 0; i < kisSzamok.Length; i++)
            {
                Console.WriteLine(kisSzamok[i]);
            }
            Console.ReadLine();
            double[] valosSzamok = new double[100];
            valosSzamok[0] = 76.78;
            valosSzamok[1] = 9943.571;
            //...
            valosSzamok[99] = 0.5; //ez az utolsó!
            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy tört számot: ");
            valosSzamok[0] = Convert.ToDouble(Console.ReadLine());
            Console.Write("Kérek egy újabb tört számot: ");
            valosSzamok[99] = Convert.ToDouble(Console.ReadLine());
            //Művelet tömbelemekkel:
            Console.WriteLine($"Második elem osztva az utolsóval: {valosSzamok[1] / valosSzamok[99]}");
            Console.WriteLine();
            Console.WriteLine("A valosSzamok tömb elemei:");
            for (int i = 0; i < valosSzamok.Length; i++)
            {
                Console.WriteLine(valosSzamok[i]);
            }
            Console.ReadLine();
            char[] betuk = new char[55];
            betuk[0] = 'g';
            betuk[1] = 'f';
            //...
            betuk[54] = 'W'; //ez az utolsó!  
            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy betűt: ");
            betuk[0] = Convert.ToChar(Console.ReadLine());
            Console.Write("Kérek egy újabb betűt: ");
            betuk[9] = Convert.ToChar(Console.ReadLine());
            //Művelet tömbelemekkel:
            Console.WriteLine($"A két betű egy szóként: {Convert.ToString(betuk[0]) + Convert.ToString(betuk[9])}");
            Console.WriteLine();
            Console.WriteLine("A betűk tömb elemei:");
            for (int i = 0; i < betuk.Length; i++)
            {
                Console.WriteLine(betuk[i]);
            }
            Console.ReadLine();
            bool[] logikaiErtekek = new bool[7];
            logikaiErtekek[0] = true;
            logikaiErtekek[1] = false;
            //...
            logikaiErtekek[6] = true; //ez az utolsó!
            //Tömbelem értékadása billentyűzetről (felülírjuk az eredeti értékeket):
            Console.Write("Kérek egy logikai értéket (true/false): ");
            logikaiErtekek[0] = Convert.ToBoolean(Console.ReadLine());
            Console.Write("Kérek egy logikai értéket (true/false): ");
            logikaiErtekek[1] = Convert.ToBoolean(Console.ReadLine());
            //Művelet tömbelemekkel:
            Console.WriteLine($"első logikai érték ÉS a második logikai érték: {logikaiErtekek[0] && logikaiErtekek[1]}");
            Console.WriteLine();
            Console.WriteLine("A logikaiErtekek tömb elemei:");
            for (int i = 0; i < logikaiErtekek.Length; i++)
            {
                Console.WriteLine(logikaiErtekek[i]);
            }
            Console.ReadLine();
            //Feladatok:
            //1.Hozz létre egy egész értékeket tartalmazó tömböt kedved szerinti elemszámmal (max. 5).
            int[] veletlen = new int[5];
            //2.Töltsd föl adatokkal.
            Random rnd = new Random();
            for (int i = 0; i < veletlen.Length; i++)
            {
                veletlen[i] = rnd.Next(-10,11);
                Console.WriteLine(veletlen[i]);
            }

Innentől önálló munka volt befejezni.
            //3.Írd ki két tetszőleges elem értékét a képernyőre.
            //4.Írd ki a képernyőre egy szomszédos elemmel végzett szorzás eredményét.
            //5.A fenti műveleteket ismételd meg más adattípusokkal, tehát double, char, stb. tömbökkel.
            //Mindig az adattípusnak megfelelő műveleteket végezz.
            //Pl.: double, byte: matematikai művelet;
            //char: nagybetűsre alakítás (előtte stringgé kell alakítani);
            //string: mondjuk meg a hosszát (.Length);
            //bool: logikai művelet
        }
    }
}

2024.04.25. Időjárás app

 Feladat: Időjárás app - OOP módszerekkel, haladóknak adatkötéssel Az alkalmazás célja, hogy a felhasználók hozzáadjanak és eltávolítsanak v...