2023. január 17., kedd

2023.01.18. Matematikai számítások megoldás

Elmélet számonkérés várható (2. félévi jegy)

MM megoldása alapján

 using System;


namespace Orai20230117
{
    class Program
    {
        static void Main(string[] args)
        {
            //Tömbkezelés gyakorlása – Matematikai számítások
            //1.    feladat:
            //  Kérd be egy szabálytalan négyszög oldalainak hosszát,
            //            és ezeket tárold egy tömbben.
            int[] negyszog = new int[4];
            for (int i = 0; i < negyszog.Length; i++)
            {
                Console.Write($"Adja meg a négyszög {i + 1}. oldalának hosszát:  ");
                negyszog[i] = Convert.ToInt32(Console.ReadLine());
            }
            Console.WriteLine();
            //2.    feladat:
            //  Hozz létre egy új tömböt, amelynek elemeit töltsd fel egy olyan
            //    szabálytalan négyszög oldalainak hosszértékeivel,
            //    aminek oldalai 10-szer akkorák, mint az első feladatban megadott négyszögé.
            //  Írd ki, hogy hány érték kiírása következik, ehhez használd
            //    a <<tömbNeve>>.Length függvényt.
            //  Írasd ki a tömb elemeinek értékét a képernyőre.
            int[] negyszog2 = new int[4];
            for (int i = 0; i < negyszog.Length; i++)
            {
                negyszog2[i] = negyszog[i] * 10;
            }
            Console.WriteLine($"A második alakzat oldalainak száma: {negyszog2.Length} \n Az oldalak méretei:");
            for (int i = 0; i < negyszog2.Length; i++)
            {
                Console.WriteLine($"Az alakzat {i + 1}. oldalának mérete: {negyszog2[i]}");
            }
            Console.WriteLine();
            //3.    feladat:
            //  Egy tömbben tárold le a naprendszerünk 3 tetszőleges
            //    bolygójának nevét, és negyedikként a Nap nevét.
            //  Ezután egy másik tömbben tárold le ugyanezeket a neveket nagybetűsen!
            //    Ehhez az első tömbből olvasd ki a szavakat.
            string[] egitestek = new string[4];
            for (int i = 0; i < 3; i++)
            {
                Console.WriteLine($"Adja meg az {i + 1} bolygó nevét:  ");
                egitestek[i] = Console.ReadLine();
            }
            egitestek[3] = "Nap";
            string[] egitestekNagy = new string[4];
            for (int i = 0; i < egitestekNagy.Length; i++)
            {
                egitestekNagy[i] = egitestek[i].ToUpper();
            }
            Console.WriteLine();
            //4.    feladat:
            //  Vizsgáld meg egyenként a második tömb elemeit:
            //    ha a hosszuk egyenlő 3-mal, írd ki, hogy ez csak a Nap lehet,
            //    egyébként írd ki, hogy ez biztosan egy bolygó.
            for (int i = 0; i < egitestekNagy.Length; i++)
            {
                if (egitestekNagy[i].Length == 3)
                {
                    Console.WriteLine("Ez csak a Nap lehet");
                }
                else
                {
                    Console.WriteLine("Ez biztosan egy bolgyó");
                }
            }
            Console.WriteLine();
            //5.    feladat:
            //  Definiálj egy változót (pl. szamlalo néven), amelyben számolni fogod,
            //    hány számítást végzel el a 6. feladatban.
            //  Kezdőértéke legyen 0.
            int szamlalo = 0;
            //6.    feladat:
            //  Egy tömbben tárold le a következő számokat:
            //    1000 gyöke (Math.SQRT()), 200-nak a 20-szorosa,
            //    10000 osztva 3-mal művelet maradéka,
            //    500 a négyzeten (Math.Pow()), 90 osztva 8-cal.
            //  Írd ki a számítások eredményét a képernyőre,
            //    megválasztott hosszon megformázva.
            //  Írd ki a tömb hosszát is.
            double[] szamok = new double[5];
            szamok[0] = Math.Sqrt(1000);
            szamok[1] = 200 * 20;
            szamok[2] = 10000 % 3;
            szamok[3] = Math.Pow(500, 2);
            szamok[4] = 90 / 8;
            for (int i = 0; i < szamok.Length; i++)
            {
                Console.WriteLine($"Az {i + 1}. számítás eredménye: {szamok[i]}");
                szamlalo = i + 1;
            }
            Console.WriteLine($"A tömb hossza: {szamlalo}");
            Console.WriteLine();

            //Tömbkezelés gyakorlása – Matematikai számítások

            //7.    kreatív feladat:
            Random rnd = new Random();
            //  Tölts föl 1 és 5 közötti véletlen számokkal
            //    egy 5 elemű double tömböt.
            //  Az előbbi tömb elemei közül sorsolj ki egy indexet
            //    (véletlenszám segítségével válassz ki egy tömbelemet).
            //  Aztán többágú szelekció alkalmazásával oldd meg,
            //    hogy a tömbelem tartalma által meghatározott színűre
            //    álljon át a képernyő háttérszíne.
            //  Végül egy választott betűszínnel írj ki egy üdvözlést a képernyőre.
            //Például: a tömbbe bekerült sorrendben: 4,2,3,1,1
            //Ebből kisorsolom a 2-es indexű elemet, melynek tartalma a 3.
            //Írok egy többágú szelekciót, amelyben megadom, hogy
            //ha a tömbelem értéke 1, akkor a háttérszín legyen kék;
            //ha a tömbelem értéke 2, akkor a háttérszín legyen piros; stb.
            double[] veletlen = new double[5];
            for (int i = 0; i < veletlen.Length; i++)
            {
                veletlen[i] = rnd.Next(1, 6);
            }
            int v = rnd.Next(0, 5);
            double sz = veletlen[v];
            switch (sz)
            {
                case (1):
                    Console.BackgroundColor = ConsoleColor.Red;
                    break;
                case (2):
                    Console.BackgroundColor = ConsoleColor.Yellow;
                    break;
                case (3):
                    Console.BackgroundColor = ConsoleColor.Green;
                    break;
                case (4):
                    Console.BackgroundColor = ConsoleColor.Cyan;
                    break;
                case (5):
                    Console.BackgroundColor = ConsoleColor.DarkMagenta;
                    break;
            }
            Console.ForegroundColor = ConsoleColor.Blue;
            Console.WriteLine("Helló!");
            Console.ReadLine();
        }
    }
}

2023.01.18. Feladat: Füzeteket rendbe tenni

 Ha szükséges, otthon befejezed.

  • minden bejegyzés meglegyen
  • mindegyiknek legyen a blogból címsora
  • minden saját feladatmegoldásod benne legyen, ehhez vigyél haza minden megoldásodat a hálózatról
  • minden színes legyen benne

(Saját megjegyzések, jegyzetek, kérdések, stb., plusz címsorok lehetnek benne. )

Bármikor kaphatsz rá érdemjegyet.

2023.01.18. Összefoglaló feladat – Tömbök - Munkanélküliek

  Összefoglaló feladat – Tömbök - Munkanélküliek                            

A három legelmaradottabb megyében kezeljük a szakiskolákból frissen kikerült munkanélküliek adatait ebben az évben. (A feladat tartalma és a benne szereplő adat teljes mértékben kitalált.)

1       feladat:

       Hozz létre egy 3 elemű tömböt, melybe kérd be a három legelmaradottabb megye nevét!

2       feladat:

       Hozz létre egy újabb tömböt, melybe bekéred az előbbi megyékben a szakiskolai végzettségű friss munkanélküliek számát.

3       feladat:

       Tárold konstansban a szakiskolai végzettségű friss munkanélküliek országos számát: 12.000 fő.

       Írd ki a képernyőre (ne tárold sehol) azt a számított értéket megyénként, hogy hány százaléka a helyi, szakiskolai végzettségű, friss munkanélküliek száma az országos értéknek. A megye nevét az első tömbből vedd. A számításhoz használd fel a második tömb elemeit, és a konstanst. Például:

       „Nógrád megyében a szakiskolai végzettségű munkanélküliek aránya az országos értékhez viszonyítva 10%.”

       Tehát 3 ilyen sort kell kiírnod (megyénként egyet).

A minisztérium a jövő évre is szeretne tervezni, de még nincsenek adatai. Azért, hogy tudjon kalkulálni, becsült értékeket képez. Ehhez kapcsolódik a következő feladat.

4       feladat:

       Hozz létre egy új tömböt, és benne tárold le a következő számított értékeket soronként: szorozd meg a második tömb elemeinek értékét egy 0 és 5 közötti véletlen számmal.

       Miközben képzed ezeket az értékeket, egy változóban gyűjtsd azok aktuális összegét.

       Írd ki a képernyőre ennek a harmadik tömbnek a tartalmát.

       Írd ki a képernyőre, hogy hány szakiskolai végzettségű munkanélküli várható a (harmadik tömbből számított) becslés szerint.

2023. 01.18. Gyakorló feladatlap

//1. feladat:
        //Kérd be egy háromszög oldalainak hosszát, és ezeket tárold
        //egy haromszog nevű tömbben.
        //2. feladat:
        //Hozz létre egy új tömböt ujHaromszog néven, amelynek elemeit
        //töltsd fel egy olyan háromszög oldalainak hosszértékeivel,
        //aminek oldalai negyedakkorák, mint az első feladatban megadott háromszögé.
        //3. feladat:
        //Egy etelek nevű tömbben tárold le 3 étel nevét nagybetűsen!
        //Ezeket az értékeket a felhasználótól kérd be.
        //Utólag vizsgáld meg az értékeket.
        //Ha nem nagybetűsen írta be bármelyiket, a program strukturált módszert használva fejeződjön be.
        //Írd át mindegyik tömbben tárolt nevet a kisbetűs megfelelőjére
        //(ott a helyén, a tömbben, függvénnyel)!
        //Írasd ki az új értékeket a képernyőre, számozd meg a sorokat!
        //4. feladat:
        //Egy szamok nevű tömbben tárold le a következő számokat
        //(ki kell számoltatni a programmal):
        //100-ból 50,
        //200 fele,
        //20 osztva 2-vel művelet maradéka,
        //10 a negyediken,
        //40-ben a 4.
        //5. feladat:
        //Tölts föl 0 és 500 közötti véletlen számokkal egy
        //200 elemű tömböt.
        //Írd ki őket a képernyőre egy utasítással, egymás mellé,
        //mindegyiket 5 hossz szélességen, a számok között legyen vessző!

2023.01.17. SQL - Diákok táblához gyakorló feladatlap, megoldással

 Diákok táblához gyakorló feladatlap.

Jövő órán röpi lesz hasonló tartalommal. A min, max, count függvényekig kell tudni a tananyagot.

Márk megoldása alapján:

/* 1. Listázzuk ki azok nevét, akinek a születési helye általad megadott betűvel kezdődik. */
SELECT nev FROM diakok WHERE szuletesi_hely LIKE "A%";
/* 2. Listázzuk ki azok nevét, akinek a születési helye általad megadott kétjegyű betűvel végződik. */
SELECT nev FROM diakok WHERE szuletesi_hely LIKE "%Gy";
/* 3. Listázzuk ki azok nevét, akinek a születési helyében valahol az általad megadott 3 betű (egymás mellett) benne van. */
SELECT nev FROM diakok WHERE szuletesi_hely LIKE "%ape%";
/* 4. Listázzuk ki azoknak a diákoknak 3 választott tulajdonságát, akiknek az egyik,
 választott szöveges tulajdonsága általad választott betűvel végződik. */
SELECT nev,szuletesi_hely,szuletesi_ev FROM diakok WHERE szuletesi_hely LIKE "%B";
/* 5. Listázzuk ki azoknak a diákoknak 2 tulajdonságát, akiknek a nevében van
 általad választott betű és egy általad választott évben születtek. */
SELECT nev, szuletesi_ev FROM `diakok` WHERE nev LIKE "%t%" AND szuletesi_ev=1990;
/* 6. Listázzuk ki az összes tulajdonságot, az oszlopfejlécben mindegyiknek egy új szöveg jelenjen meg.
 (pl. a neveknél: A diák neve, stb.) Ne kelljen felsorolni a mezőneveket. */
SELECT ID AS "Azonosító", nev as "Név", beiratkozas as "Beiratkozás", szuletesi_hely as "Születési hely", szuletesi_ev as "Születési év" FROM `diakok`;
/* 7. Listázzuk ki csak az első sort, a diák tetszőleges tulajdonságaival. */
SELECT * FROM `diakok` LIMIT 1;
/* 8. Írjuk ki, hány sora van az adattáblának. */
SELECT COUNT(ID) FROM `diakok`;
/* 9. Írjuk ki a legkisebb értéket valamelyik szám/dátum típusú mező esetén. Használjunk aggregáló függvényt. */
SELECT MIN(szuletesi_ev) FROM `diakok`;
/* 10. Írjuk ki a legnagyobb értéket valamelyik másik szám/dátum típusú mező esetén.
 Használjunk aggregáló függvényt. */
SELECT MAX(beiratkozas) FROM `diakok`;
/* 11. Átlagosan hány évesek a tanulók? Írjuk ki csak ezt az egy adatot. */
SELECT AVG(2023 - szuletesi_ev) FROM `diakok`;
/* 12. Mely születési helyek szerepelnek az adattáblában? Írjuk ki őket, mindegyiket csak egyszer. */
SELECT DISTINCT szuletesi_hely FROM `diakok`;
/* 13. Listázzuk ki a tanulók tetszőleges adatait valamelyik tulajdonság szerinti abc sorrendben (növekvő). */
SELECT * FROM `diakok` ORDER BY nev ASC;
/* 14. Listázzuk ki azoknak a tanulóknak a születési helyét születési hely szerinti csökkenő abc sorrendben,
akik 1988 és 1990 között születtek (a két értéket nem beleértve). */
SELECT szuletesi_hely FROM `diakok` WHERE szuletesi_ev > 1988 and szuletesi_ev < 1990  ORDER BY szuletesi_hely DESC;