2022. november 28., hétfő

2022.11.29.-12.02. Adatbázis feladatok

Először be kell fejezni a közösségi platformos feladatot, a diagrammal együtt. Fel kell tölteni a drive-odra. Aztán választasz magadnak egy párt, és megosztod vele a megoldásodat (az xlsx-et). A párod átnézi a feladatodat, és értékeli, méghozzá úgy, hogy beleírja az xlsx-be valamilyen színnel, mit talál jónak, rossznak.

A múlt órán mindenki választott magának két egyedi témát. A hét további részében azokat kell kidolgozni. Ha kész, a fenti módon ellenőrizzétek le.

2022.11.29.-12.02. Helyettesítés - Programozás feladatok

Programozás

Új anyag jönne, de most önálló gyakorló feladatokat kaptok.

A héten a lenti feladatokkal haladjatok előre, segíthettek egymásnak. A szelekciós megoldásnál váltogassátok a kétágú és a többágú (switch) szelekciót, ha a feladat nem ragaszkodik egy konkrét módszerhez. Lehet for ciklust használni, próbálgassátok, ha a feladat igényli.


1. Domino day - nézz utána a neten ennek az eseménynek, egy pár perces videó belefér az órába.

            //A Domino Day-en a terep felépítéséhez háromféle dominót használnak.

            //Csak egyfajta méretű szállítódoboz van, melynek a méretei: 50*80*40 cm.

            //Az egyik napon 15 doboz dominó érkezik, mind azonos méretű

            //dominókat tartalmaz.

            //Feladat:

            //Tárold a programban a 3 fajta dominó-méretet konstansokban:

            //(elég a szorzat értékét tárolni)

            //1. fajta dominó: 50 * 30 * 6 mm;

            //2. fajta dominó: 40 * 25 * 5 mm;

            //3. fajta dominó: 70 * 35 * 8 mm.

            //Írd ki a képernyőre ezeket a méreteket, és kérdezd meg a felhasználót,

            //hogy melyik fajta dominó érkezett ma. Írd ki a képernyőre, hogy akkora

            //dominókból hány darab fért bele a 15 nagy dobozba.

            //Ehhez először ki kell számolni a doboz térfogatát,

            //majd elosztani egy dominó méretével.

            // A megoldáshoz egymásba ágyazott szelekciókat használj.

            //Vigyázz a tört számok kezelésénél.


2. Léggömbhámozó verseny

A léggömbhámozó versenyen a csapatoknak 10 perc alatt minél több

léggömböt meg kell hámozniuk az általuk elkészített gépekkel.

Értékeljük a versenyzőket az eredményük alapján.

Feladat:

1. Kérjük be, hány lufit hámoztak meg a géppel.

2. Az eredménytől függően írjunk ki minősítéseket.

(Próbáljuk ezt a csökkenő sorrendet tartani a szelekciók megírásánál.):

20-nál több lufi: kiváló

10 fölött, 20-ig: közepes

10, és 10 alatt: gyenge

3. Az eredmények kiírása után aki a „gyenge” kategóriába tartozik,

nyilatkozzon, hogy mennyi pénzt áldozott a gép fejlesztésére. Ezt kérjük be.

4. A bekért összeg alapján írjunk ki üzenetet:

0 - 10.000 forintig: Kevés!

10.000-20.000 között: Pedig ez elég lett volna!

20.000 fölött: Teljesen fölösleges ennyi pénzt  erre elkölteni!

Figyelem! Arra vigyázzatok, hogy a 3.-4. feladatot a 2. feladat utolsó ágának

 belsejében kell megírni.


3. Fuvolaverseny  

            //A megyei fuvolaversenyre jelentkeznek a versenyzők.

            //Az alapján rendezik a versenyzőket kategóriákba, hogy

            //hány évig tanultak zenét.

            //I. kategória: 2, vagy 3 évig tanult zenét

            //II. kategória: 4, vagy 5 évig tanult zenét

            //III. kategória: 6, vagy 7 évig tanult zenét

            //A fenti intervallumokat a tanult módon, egyszerű feltétellel add meg a feltételben.

            //Feladat:

            //Kérd be, hány évig tanult a jelentkező zenét!

            //Írd ki, melyik kategóriába tartozik!

            //Kérd be, hány pontot kapott (0-60 között) a versenyen.

            //Ha 50 pont fölött kapott, írd ki, hogy továbbjutott

            //az országos versenyre.

            //Egyébként pedig írd ki, hogy nem jutott tovább.

            //Ha továbbjutott, kérdezd meg, hogy a szüleivel utazik, vagy kísérőtanárral.

            //Ha a szüleivel utazik, kérd be az egyik szülő telefonszámát.

            //Ha kísérőtanárral utazik, kérdezd meg a tanára nevét.

            //Ha nem jutott tovább, akkor kérd be az iskolája nevét és címét

            //mert oda fogják küldeni a vigaszdíjat.

            //Ha ez kész, egészítsd ki a megoldást hibaellenőrzéssel.


4. Túlsúly

forrás: https://slideplayer.hu/slide/2140810/

Írj programot, amely bekéri egy felnőtt férfi testmagasság (cm-ben) és testsúly (kg-ban) adatait.

Ha a magasság 100 cm fölötti, akkor megvizsgálja, hogy túlsúlyos-e: ha a kg-ban mért súlya nagyobb, mint a cm-ben mért magasság 100 fölötti része, akkor kiírja: "Túlsúlyos, fogynia kell!".

Ha a magasság 100 alatti érték, akkor írja ki a program, hogy "Gyerekekkel nem foglalkozom!"

Pontosítsuk a feladatot: Ha 100 cm fölött van a magasság és nem túlsúlyos, akkor mit tegyünk? 


5. Dátum-ellenőrző

forrás: http://csharptk.ektf.hu/online/ch01s10s01.html

Feladat:

Olvassunk be egy hónap és egy nap sorszámát! Írjuk ki, ha a beolvasott számok nem jó intervallumba esnek.

Segítség:

28 napos: február

30 napos: január, április, június, szeptember, november

31 napos: március, május, július, augusztus, október, december


6. Feladványok

Írj programot, amelyben a felhasználó választhasson egy menüből, hogy matematika, logikai, szöveges, vagy karakteres feladványt szeretne megoldani. A választását többágú szelekcióval kezeld.

Ha választott, kérj be tőle további adatokat. Adj neki egy feladatot. Ugyanazt a feladatot a program is végezze el. A végén vesd össze az eredményeket és jelezd neki, hogy jól, vagy rosszul oldotta-e meg a feladatot.

Pl: kérj be tőle két számot. A feladat az legyen, hogy össze kell őket adni. Összeadja a program és tárolja. Bekéred tőle is az összeget. Összehasonlítod a kettőt, és üzensz.


7. Múzeum

                     //Múzeum

            //Egy múzeumban a soron következő kiállításra folyamatosan

            //szállítják a festményeket. A múzeum 3 termet ad bérbe erre a célra.

            //Csontváry. terem: 18. századi festmények

            //Zichy. terem: 19. századi festmények

            //Munkácsy. terem: 20. századi festmények

            //A 18-19. századi festmények csak magyar festőtől származhatnak.

            //A 20. századi festmények közül van magyar és külföldi kategória is.

            //A festmények kiállításáért bérleti díjat kell fizetni, képenként 5000 forintot.

            //Feladat:

            //1. Kérdezd meg a felhasználót, hogy mikor festették az adott képet.

            //A válaszától függően közöld vele, hogy melyik terembe kell vinnie a képet.

            //Csontváry. terem: 18. századi festmények

            //Zichy terem: 19. századi festmények

            //Munkácsy. terem: 20. századi festmények

            //Ha a bekért év nem a 18-20. századba esik, írd ki, 

            //hogy másik múzeumba vigyék a képet.

            //2. Ezt a feladatot a Munkácsy terem szelekciós ágán belül kell kidolgoznod:

            //A Munkácsy terembe tartók új kérdést is kapnak: válaszolniuk kell, hogy

            //magyar, vagy külföldi festő képéről van-e szó.

            //A magyar festmények a galériára kerülnek, a külföldiek a terem falaira.

            //Ezt a feladatrészt a magyar festmények szelekciós ágán belül kell kidolgoznod:

            //A galériára kerülő képekért a bérleti díjon felüli felárat kell fizetni.

            //A számítás módja: a felár a bérleti díj 15 százaléka.

            //(Help: bérleti díj * 0.15)

            //A magyar képeket szállító felhasználó számára írd ki a felárat,

            //és a teljes összeget a következő szöveggel,

            //az értékeket 10 karakteren jobbra rendezve:

            //A magyar festmények elhelyezése a galérián:     00000 Ft/db, ebből a felár     00000 Ft/db.

            //(a 00000 helyére az értékek kerülnek)


Szorgalmi – Mars-robot

//Mars-robot

//1. Egy mars-robot ütközésérzékelőkkel van ellátva.

//A robot testéből kiálló rugalmas érzékelő egy derékszögű háromszög

//derékszögénél helyezkedik el. Ha az ütköző benyomódik,

//a háromszög többé nem lesz derékszögű,

//ezt a program jelzi a mozgásvezérlő központnak,

//ez alapján módosítja az irányát.

//Feladat: Kérd be a derékszögű háromszög két befogójának hosszát,

//és számold ki az átfogót!

//Ha az egyenlőség hamissá válik,

//a robot nekiment valaminek.

//(Később megtanuljuk, hogyan tudjuk folyamatosan vizsgálni az ütköző helyzetét.)

//2. Egy homokvihar tönkretette a robot egyes érzékelőit.

//Le kell ellenőrizni, hogy az érzékelő helyes adatot küld-e a processzornak.

//Feladat: Kérd be egy háromszög a,b,c oldalának hosszát!

//Állapítsd meg, hogy a háromszög egyáltalán megszerkeszthető-e!

//(Ha bármely két oldalának összege nagyobb, mint a harmadik oldal.

//Most nem kell ellenőrizned, hogy derékszögű-e.)

//3. Tegyük fel, hogy az érzékelő képes eltolni a robotot az akadálytól úgy,

//hogy a háromszög magassága a nyugalmi helyzethez viszonyítva megnyúlik 10 centivel.

//Feladat: Számold ki, mekkora lesz ez esetben a befogók hossza?


2022. november 25., péntek

2022.11.24. Adatbázis tervezés

 Folytattuk a Közösségi platformos feladatot.

2022.11.25. Többágú szelekció gyakorlás: Ford márkakereskedés

//Ford márkakereskedés

//A feladat megoldásában szelekcióból csak többágút használj.

//A hibás adatbevitelekre írj ki hibaüzenetet.

//Ford márkakereskedő vagy. Jön a vevő, és érdeklődik a készleten levő autók iránt.

//Feladat:

//-      Kérdezd meg tőle, hogy milyen típus érdekli (legalább 3 típus van készleten).

//-      A típustól függően adj neki tájékoztatást az autó fontos paramétereiről

//    (pl. ár, motor térfogata, személyek száma, teljesítmény, stb.,).

//-      Meggyőzted a vevőt, meg akarja venni azt a típusú autót, ami iránt érdeklődött - programban ehhez nem kapcsolódik feladat.

//-      Kérdezd meg tőle, milyen módon akar fizetni.

//       ha készpénzzel, akkor adj neki 5% kedvezményt,

//       ha azonnal átutalással, akkor adj neki 3% kedvezményt,

//       ha pedig hitelt vesz föl rá, akkor tegyél az árra 5% felárat.

//-      Ezek után írd ki a rá vonatkozó árat.


2022. november 23., szerda

2022.11.23. Szám típusú szelektor kifejezéssel: Három kis feladat

Házi feladat befejezni. 

Szám típusú szelektor kifejezéssel: Három kis feladat

1        feladat:

        Kérd be egy diák évvégi matematika jegyét numerikusan.

        Írasd ki szöveges formában (elégtelen, elégséges, közepes, jó, jeles).

        Ha a beírt jegy nem 1-5 közötti szám, akkor írd ki, hogy hibás az adat!

2        feladat:

        Kérd be egy nap sorszámát numerikusan, és írd ki a nevét (hétfő, kedd...)

        Ha nem jó számot írt be, jelezz hibát.

3        feladat:

        Kérjen be a program két számot, és egy műveleti jelet (+,-,/,*).

        Írja ki a program a művelet eredményét!

        Ha hibás műveletet írt be, írjuk ki, hogy hibás.

2022.11.23. Telefon-választó - többágú szelekciós feladat

  Telefon-választó

-        Írj ki a képernyőre 3-4 telefonmárkát. Zárójelben a szavak mögött jelölj meg egy betűt, amivel ki lehet választani az adott márkát.

-        Kérdezd meg a felhasználót, hogy melyiket választja; ehhez a zárójelben lévő betűt kell megnyomnia.

-        Választásától függően sorolj fel 2-3 konkrét telefon típust ahhoz a márkához, amit választott. (Ezek csak kiírások, és itt vége is a programnak.)

-        Ha betűt tévesztett, írj ki hibaüzenetet.

2022.11.23. Többágú szelekció bevezetés

 using System;

using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace tobbaguSzelekcio
{
    class Program
    {
        static void Main(string[] args)
        {
            //Többágú szelekció bevezetése
            //Egyágú szelekció
            //Kérdezd meg a felhasználót, hogy akar-e más színt látni a képernyőn?
            //Ha igen, akkor írd ki neki sárgával, hogy Cső!
            Console.Write("Akarsz más színt látni a képernyőn? i/n: ");
            string valasz = Console.ReadLine();
            if (valasz == "i")
            {
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("Cső!");  
            }
            //Kétágú szelekció
            //Kérdezd meg a felhasználót, hogy  kék színt, vagy másmilyen színt szeretne látni a képernyőn?
            //Ha i-t üt be, állítsd át a színt kékre, ha m-et üt be, állítsd át a színt valamilyen általad választott színre! Eztán írj ki valamit!
            Console.Write("Fehéret, vagy valami más színt szeretnél látni a képernyőn? f/m: ");
            valasz = Console.ReadLine();
            if (valasz == "f")
            {
                Console.ForegroundColor = ConsoleColor.White;
                Console.WriteLine("Ez fehér!");  
            }
            else
                if (valasz == "m")
                {
                    Console.ForegroundColor = ConsoleColor.DarkYellow;
                    Console.WriteLine("Ez sötétsárga!");  
                }
            //Egyágú szelekciók egymás után
            // Kérdezd meg a felhasználót, hogy piros (p), kék (k), vagy zöld (z) színt szeretne-e!
            //Három egymás után írt szelekcióval állítsd be a színt. Ha rossz betűt írt be, írj ki hibaüzenetet.
            //Írj ki valamilyen szöveget, hogy lásd az új színeket, vagy hiba esetén a régit.
            Console.Write("Piros, kék, vagy zöld színt szeretnél látni a képernyőn? p/k/z: ");
            valasz = Console.ReadLine();
            if (valasz == "p")
                Console.ForegroundColor = ConsoleColor.Red;
            if (valasz == "k")
                Console.ForegroundColor = ConsoleColor.Blue;  
            if (valasz == "z")
                Console.ForegroundColor = ConsoleColor.Green;
            if (valasz != "p" && valasz != "k" && valasz != "z")
                Console.WriteLine("Nem jó betűt írtál be!");              
            else
                Console.WriteLine("Ez az új szín!");
            //Kétágú szelekciók egymásba ágyazva
            //Állítsd vissza az eredeti színeket, és erről tájékoztasd a felhasználót!
            //Kérdezd meg a felhasználót, hogy piros (p), kék (k), vagy zöld (z) színt szeretne-e!
            //Ha pirosat akar, állítsd be a színt pirosra, ha nem pirosat akar, hanem kéket, akkor állítsd be a színt kékre, egyébként legyen a szín zöld!
            //Ha rossz betűt írt be, írj ki hibaüzenetet.
            //Írj ki valamilyen szöveget, hogy lásd az új színeket, vagy hiba esetén a régit.
            Console.ResetColor();
            Console.WriteLine("Visszaállítottam az eredeti színeket!");
            Console.Write("Piros, kék, vagy zöld színt látni szeretnél látni a képernyőn? p/k/z: ");
            valasz = Console.ReadLine();
            if (valasz == "p")
                Console.ForegroundColor = ConsoleColor.Red;
            else
                {
                    if (valasz == "k")
                        Console.ForegroundColor = ConsoleColor.Blue;
                    else
                        if (valasz == "z")
                            Console.ForegroundColor = ConsoleColor.Green;
                        else
                            if (valasz != "p" && valasz != "k" && valasz != "z")
                                Console.WriteLine("Nem jó betűt írtál be!");
                }
            Console.WriteLine("Ez az új szín!");
            //Többágú szelekció
            //Állítsd vissza az eredeti színeket, és erről tájékoztasd a felhasználót!
            //Kérdezd meg a felhasználót, hogy piros (p), kék (k), vagy zöld (z) színt szeretne-e!
            //A kiválasztott betűnek megfelelően állítsd át a színt egy lépésben. Ha rossz betűt írt be, írj ki hibaüzenetet.
            //Írj ki valamilyen szöveget, hogy lásd az új színeket, vagy hiba esetén a régit.
            Console.ResetColor();
            Console.WriteLine("Visszaállítottam az eredeti színeket!");
            Console.Write("Piros, kék, vagy zöld színt szeretnél látni a képernyőn? p/k/z: ");
            valasz = Console.ReadLine();
            switch (valasz)
            {
                case "p":
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Ez piros.");  
                    break;
                case "k":
                    Console.ForegroundColor = ConsoleColor.Blue;
                    Console.WriteLine("Ez kék.");  
                    break;
                case "z":
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.WriteLine("Ez zöld.");  
                    break;
                default:
                    Console.WriteLine("Nem jó színt adtál meg.");
                    break;
            }
            Console.ReadLine();
        }
    }
}

2022.11.23. Programozók lakása megoldás

             //Kérd be a lakás alapterületét.

            //A következő feladathoz egymásba ágyazott kétágú szelekciókat használj.
            //Írd ki, hogy szerinted kié lehet a lakás, ha
            //az alapterülete:
            //- kisebb, mint 50 négyzetméter (pl. junior fejlesztő);
            //- 50-149 között van (pl. senior fejlesztő);
            //- 150-999 között van (pl. menő fejlesztő cég vezére)
            //- 1000-től (pl. az Anonymus vezére :).
            //35 négyzetméter alatt adj hibaüzenetet.
            //A mondat, amit ki kell írni például:
            //Szerintem a lakás tulajdonosa senior fejlesztő lehet.
            //Ha tudod, oldd meg, hogy az egyetlen kiírt sornyi üzenetet
            //3 részből rakd össze úgy, hogy minden ágban csak a tulajdonos fokozatát írd bele.
            Console.Write($"Add meg a lakás alapterületét: ");
            double alapterulet = Convert.ToDouble(Console.ReadLine());
            if (alapterulet < 35)            {
                Console.WriteLine("Nincs ilyen kicsi lakás.");
            }
            else
            {
                Console.Write("Szerintem a lakás tulajdonosa "); //1. utasítás az első hamis ágban
                if (alapterulet < 50) //2. utasítás az első hamis ágban
                {
                    Console.Write("junior fejlesztő");
                }
                else
                {
                    if (alapterulet < 150)
                    {
                        Console.Write("senior fejlesztő");
                    }
                    else
                    {
                        if (alapterulet < 1000)
                        {
                            Console.Write("menő fejlesztő cég vezére");
                        }
                        else
                        {
                            Console.Write("az Anonymus vezére");
                        }
                    }
                }
                Console.WriteLine(" lehet.");//3. utasítás az első hamis ágban
            }
            Console.ReadLine();

Levi megoldása:

            Console.Write("Adja meg a lakás alapterületét: ");

            int lakter = Convert.ToInt32(Console.ReadLine());

 

            //A következő feladathoz egymásba ágyazott kétágú szelekciókat használj.

            //Írd ki, hogy szerinted kié lehet a lakás, ha

            //az alapterülete:

 

            string fokozat = string.Empty;

 

            if (lakter < 50)

            {

                fokozat = "junior fejlesztő";

            }

            else

            {

                if (lakter <= 149)

                {

                    fokozat = "senior fejlesztő";

                }

                else

                {

                    if (lakter <= 999)

                    {

                        fokozat = "menő fejlesztő cég vezére";

                    }

                    else

                    {

                        fokozat = "az Anonymus vezére";

                    }

                }

            }

 

            Console.WriteLine($"Szerintem a lakás tulajdonosa {fokozat} lehet.");

2022. november 22., kedd

2022.11.22. Adatbázis tervezés

 Elkezdtük a közösségi platformos feladatot, itt folytatjuk.

Házi feladat: mindenki találjon ki három olyan témát, amiben legalább egy darab N:M-es kapcsolat és legalább egy 1:N-es kapcsolat van (tehát a fentihez hasonló). Aki bevállalós, belekalkulálhat még egy N:M-s kapcsolatot is.

Írd le a két témát a digifüzetedbe.

2022.11.22. Programozók lakása - egymásba ágyazott szelekciós feladat

Házi feladat

//Programozók lakása
//Kérd be a lakás alapterületét.
            //A következő feladathoz egymásba ágyazott kétágú szelekciókat használj.
            //Írd ki, hogy szerinted kié lehet a lakás, ha
            //az alapterülete:
            //- kisebb, mint 50 négyzetméter (pl. junior fejlesztő);
            //- 50-149 között van (pl. senior fejlesztő);
            //- 150-999 között van (pl. menő fejlesztő cég vezére)
            //- 1000-től (pl. az Anonymus vezére :).
            //35 négyzetméter alatt adj hibaüzenetet.
            //A mondat, amit ki kell írni például:
            //Szerintem a lakás tulajdonosa senior fejlesztő lehet.
            //Ha tudod, oldd meg, hogy az egyetlen kiírt sornyi üzenetet
            //3 részből rakd össze úgy, hogy minden ágban csak a tulajdonos fokozatát írd bele.

 

2022.11.22. Mobiltelefonok megoldás

 using System;

namespace dolgozatPontozas
{
    class Program
    {
        static void Main(string[] args)
        {
            //A mobiltelefon nagykerbe x db okostelefon
            //érkezett a legújabb modellből. Az ország y üzletébe
            //kell szétosztani a készletet.
            //Használj x és y tárolásához a következő értékű konstansokat:
            //1. alkalommal próbáld meg 100 telefonnal és 9 bolttal.
            //2. alkalommal próbáld meg 100 telefonnal és 10 bolttal.
            //Írd ki az értékeket a képernyőre.
            //A programban arra keressük a választ, hogy szét lehet-e osztani egyenlően,
            //vagy marad a nagykerben néhány készülék?
            const int telefonok = 100;
            const int bolt = 9; //próbáld ki 10-zel is
            Console.WriteLine($"{telefonok} telefont kell szétosztani {bolt} boltba.");
            //Ha nem maradt ki telefon, írd ki a képernyőre:
            //"A telefonokat el lehetett osztani egyenlően."
            //Ha maradt ki telefon, írd ki:
            //A telefonokat nem lehetett egyenlően elosztani, <z> telefon maradt meg. (a <z> értelemszerűen a maradék)
            //Ha maradt ki telefon, akkor kérdezz tovább:
            //A maradék készülékeket odaadjuk a legnagyobb boltnak? (I/N)
            //Oldd meg, hogy kicsi és nagy betűvel is beírhassa a választ.
            //3 eset lehetséges:
            //1.
            //Ha "igen" volt a válasz,
            //ezt írd ki először:
            //Köszönjük a választ. A maradék telefonokat szétosztjuk.
            //Eztán írd ki, hogy:
            //- mennyi telefont osztottunk szét összesen,
            //- hogy mennyi telefon került egy boltba,
            //- és hogy mennyi telefon maradt ki.
            //2.
            //Ha "nem" volt a válasz, ezt írd ki:
            //Köszönjük a választ.A maradék telefonok a raktárban maradnak.
            //3.
            //Adj hibaüzenetet, ha nem jó betűt írt be.
            if (telefonok % bolt == 0)// a % művelet: maradékos osztás, az osztás művelet maradékát mondja meg
                                      //az osztás eredényét így nem tudjuk meg,
                                      //csak ha külön elvégezzük az osztást is:  telefonok/bolt
                                      //maradékos osztás: 100 / 9 = 11, és maradt 1
                                      //maradékos osztás: 100 / 10 = 10, és maradt 0
            {
                Console.WriteLine("A telefonokat el lehetett osztani egyenlően.");
                //Itt figyeld meg: amikor a konstansok értékéből az következik, hogy ez az ág nem teljesülhet,
                //akkor "Unreachable code detected" üzenetet kapsz.
                //Ez csak a konstansoknál
            }
            else
            {
                Console.WriteLine($"A telefonokat nem lehetett egyenlően elosztani, {telefonok % bolt} telefon maradt meg.\n");
                Console.Write($"A maradék készülékeket odaadjuk a legnagyobb boltnak? (I/N) ");
                string ertek = Console.ReadLine();
                if (ertek.ToUpper() == "I")
                {
                    Console.WriteLine("Köszönjük a választ. A maradék telefonokat szétosztjuk.");
                    int maradek = telefonok % bolt;
                    int osztas = telefonok / bolt; //csak az egész részét veszi a tört számnak (ha törtre jön ki)
                    int kivonas = telefonok - maradek;
                    Console.WriteLine("Ennyi telefont osztottunk szét: {0}", kivonas);
                    Console.WriteLine("Ennyi telefont küldtünk egy boltba: {0}", osztas);
                    Console.WriteLine("Ennyi kimaradt: {0}", maradek);
                }
                else
                {
                    if (ertek.ToUpper() == "N")
                    {
                        Console.WriteLine("Köszönjük a választ. A maradék telefonok a raktárban maradnak.");
                    }
                    else
                    {
                        Console.WriteLine("Rossz választ adott meg.");
                    }
                }
            }
            Console.ReadLine();
        }
    }
}

2022.11.22. Egymásba ágyazott szelekció gyakorlás - Mobiltelefonok

   //A mobiltelefon nagykerbe x db okostelefon

            //érkezett a legújabb modellből. Az ország y üzletébe
            //kell szétosztani a készletet.
            //Használj x és y tárolásához a következő értékű konstansokat:
            //1. alkalommal próbáld meg 100 telefonnal és 9 bolttal.
            //2. alkalommal próbáld meg 100 telefonnal és 10 bolttal.
            //Írd ki az értékeket a képernyőre.
            //A programban arra keressük a választ, hogy szét lehet-e osztani egyenlően,
            //vagy marad a nagykerben néhány készülék?

            //Ha nem maradt ki telefon, írd ki a képernyőre:
            //"A telefonokat el lehetett osztani egyenlően."
            //Ha maradt ki telefon, írd ki:
            //A telefonokat nem lehetett egyenlően elosztani, <z> telefon maradt meg. (a <z> értelemszerűen a maradék)

            //Ha maradt ki telefon, akkor kérdezz tovább:
            //A maradék készülékeket odaadjuk a legnagyobb boltnak? (I/N)
            //Oldd meg, hogy kicsi és nagy betűvel is beírhassa a választ.
            //3 eset lehetséges:
            //1.
            //Ha "igen" volt a válasz,
            //ezt írd ki először:
            //Köszönjük a választ. A maradék telefonokat szétosztjuk.
            //Eztán írd ki, hogy:
            //- mennyi telefont osztottunk szét összesen,
            //- hogy mennyi telefon került egy boltba,
            //- és hogy mennyi telefon maradt ki.
            //2.
            //Ha "nem" volt a válasz, ezt írd ki:
            //Köszönjük a választ.A maradék telefonok a raktárban maradnak.
            //3.

            //Adj hibaüzenetet, ha nem jó betűt írt be. 

2022.11.22. Egymásba ágyazott szelekció - Dolgozatpontozás

 using System;

namespace dolgozatPontozas
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("A dolgozatban elérhető max. pontszám: 100");
            //1.Ki akarod számolni, hogy a társad hányast kapott
            //a dolgozatára. Kérd be az 5 feladat pontszámát,
            //végül add össze őket.
            //Szekvenciális megoldások
            //Első megoldás:
            Console.WriteLine("Add meg az 1. feladatban elért pontszámodat!");
            int feladat1 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg az 2. feladatban elért pontszámodat!");
            int feladat2 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg az 3. feladatban elért pontszámodat!");
            int feladat3 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg az 4. feladatban elért pontszámodat!");
            int feladat4 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg az 5. feladatban elért pontszámodat!");
            int feladat5 = Convert.ToInt32(Console.ReadLine());
            int osszpont = feladat1 + feladat2 + feladat3 + feladat4 + feladat5;
            Console.WriteLine("Összpontszámod: {0} ", osszpont);
            //Második megoldás:
            //Mindig csak az aktuális pontszámot tároljuk addig, amíg
            //hozzá nem adtuk a többihez.
            osszpont = 0;
            Console.WriteLine("Add meg az 1. feladatban elért pontszámodat!");
            int pontszam = Convert.ToInt32(Console.ReadLine());
            osszpont = osszpont + pontszam;
            Console.WriteLine("Add meg az 2. feladatban elért pontszámodat!");
            pontszam = Convert.ToInt32(Console.ReadLine());
            osszpont = osszpont + pontszam;
            Console.WriteLine("Add meg az 3. feladatban elért pontszámodat!");
            pontszam = Convert.ToInt32(Console.ReadLine());
            osszpont = osszpont + pontszam;
            Console.WriteLine("Add meg az 4. feladatban elért pontszámodat!");
            pontszam = Convert.ToInt32(Console.ReadLine());
            osszpont = osszpont + pontszam;
            Console.WriteLine("Add meg az 5. feladatban elért pontszámodat!");
            pontszam = Convert.ToInt32(Console.ReadLine());
            osszpont = osszpont + pontszam;
            Console.WriteLine("Összpontszámod: {0} ", osszpont);
            //Harmadik megoldás:
            //Kiírjuk a feladat sorszámát is.
            int sorszam = 1;
            osszpont = 0;
            Console.WriteLine("Add meg a(z) {0}. feladatban elért pontszámodat!", sorszam);
            sorszam++;
            feladat1 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg a(z) {0}. feladatban elért pontszámodat!", sorszam);
            sorszam++;
            feladat2 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg a(z) {0}. feladatban elért pontszámodat!", sorszam);
            sorszam++;
            feladat3 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg a(z) {0}. feladatban elért pontszámodat!", sorszam);
            sorszam++;
            feladat4 = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("Add meg a(z) {0}. feladatban elért pontszámodat!", sorszam);
            sorszam++;
            feladat5 = Convert.ToInt32(Console.ReadLine());
            osszpont = feladat1 + feladat2 + feladat3 + feladat4 + feladat5;
            //Megoldás for ciklussal
            osszpont = 0;
            for (int i = 1; i <= 5; i++)
            {
                Console.WriteLine($"Add meg a(z) {i}. feladatban elért pontszámodat!");
                pontszam = Convert.ToInt32(Console.ReadLine());
                osszpont = osszpont + pontszam;
            }
            Console.WriteLine($"Összpontszámod: {osszpont} ");
            //2. Írjuk ki, hogy a pontszám alapján a user hányast kapott.
            //Az első megoldáshoz ezeket az intervallumokat használjuk
            //a feltételekben:0-60,61-70,71-80,81-90,91-100
            //A második megoldáshoz ezeket az intervallumokat használjuk
            //a feltételekben:0-60,60-70,70-80,80-90,90-100 - JÁTSZANI KELL AZ EGYENLŐSÉGJELEKKEL!
            //A harmadik megoldáshoz alkalmazzunk egymásba ágyazott szelekciókat.
            //Egyágú szelekciós megoldások
            //Első megoldás:
            if (osszpont <= 60)
                Console.WriteLine("Egyest kaptál!");
            if (osszpont >= 61 && osszpont <= 70)
                Console.WriteLine("Kettest kaptál!");
            if (osszpont >= 71 && osszpont <= 80)
                Console.WriteLine("Hármast kaptál!");
            if (osszpont >= 81 && osszpont <= 90)
                Console.WriteLine("Négyest kaptál!");
            if (osszpont >= 91 && osszpont <= 100)
                Console.WriteLine("Ötöst kaptál! Gratulálok!");
            //Második megoldás:
            if (osszpont <= 60)
                Console.WriteLine("Egyest kaptál!");
            if (osszpont > 60 && osszpont <= 70)
                Console.WriteLine("Kettest kaptál!");
            if (osszpont > 70 && osszpont <= 80)
                Console.WriteLine("Hármast kaptál!");
            if (osszpont > 80 && osszpont <= 90)
                Console.WriteLine("Négyest kaptál!");
            if (osszpont > 90 && osszpont <= 100)
                Console.WriteLine("Ötöst kaptál! Gratulálok!");
            //Második megoldás másképp megjelenítve:
            if (osszpont <= 60) Console.WriteLine("Egyest kaptál!");
            if (osszpont > 60 && osszpont <= 70) Console.WriteLine("Kettest kaptál!");
            if (osszpont > 70 && osszpont <= 80) Console.WriteLine("Hármast kaptál!");
            if (osszpont > 80 && osszpont <= 90) Console.WriteLine("Négyest kaptál!");
            if (osszpont > 90 && osszpont <= 100) Console.WriteLine("Ötöst kaptál! Gratulálok!");
            //Kétágú szelekciós megoldás        
            //Harmadik megoldás (használd ki a kód beírását segítő code-snippet megoldást (if-TAB-TAB)
            //PRÓBÁLJUK KI AZ EGYES ÁGAK ZÁRÁSÁT-NYITÁSÁT!
            if (osszpont < 0)
            {
                Console.WriteLine("Rossz pontszám! (0 alatti)");
            }
            else
            {
                if (osszpont <= 60)
                {
                    Console.WriteLine("Egyest kaptál!");
                }
                else
                {
                    if (osszpont <= 70)
                    {
                        Console.WriteLine("Kettest kaptál!");
                    }
                    else
                    {
                        if (osszpont <= 80)
                        {
                            Console.WriteLine("Hármast kaptál!");
                        }
                        else
                        {
                            if (osszpont <= 90)
                            {
                                Console.WriteLine("Négyest kaptál!");
                            }
                            else
                            {
                                if (osszpont <= 100)
                                {
                                    Console.WriteLine("Ötöst kaptál! Gratulálok!");
                                }
                                else
                                {
                                    Console.WriteLine("Rossz pontszám! (100 fölötti)");
                                }
                            }
                        }
                    }
                }
            }
            Console.ReadLine();
        }
    }
}

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...