2021.03.01. Bevezetés: karakteres szelektor kifejezéssel: Színező

            //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ő!

 

 

            //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!

           

 

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

           

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

 

 

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


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();

 

        }

    }

}


2021.02.25. Témazáró előtti gyakorló feladatsor

                     //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)


Megoldás:

using System;

namespace temazaroalengyakorlas20210225
{
    class Program
    {
        static void Main(string[] args)
        {
            //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.
            Console.Write("Mikor festették az adott festményt? --> ");
            int whenDidTheyDraw = Convert.ToInt32(Console.ReadLine());
            //A válaszától függően közöld vele, hogy melyik terembe kell vinnie a képet.
            if (whenDidTheyDraw < 1700 || whenDidTheyDraw >= 2000)
            {
                Console.WriteLine("Másik múzeumba vigyék a képet!");
            }
            else
            { a kék részeket ki lehet hagyni ebben az esetben, úgy a szebb   
                if (whenDidTheyDraw >= 1700 && whenDidTheyDraw < 1800)
                {
                    Console.WriteLine("A Csontváry terembe kell vinni a képet!");
                }
                else
                {
                    if (whenDidTheyDraw >= 1800 && whenDidTheyDraw < 1900)
                    {
                        Console.WriteLine("A Zichy terembe kell vinni a képet!");
                    }
                    else
                    {
                        if (whenDidTheyDraw >= 1900 && whenDidTheyDraw < 2000)
                        {
                            Console.WriteLine("A Munkácsy terembe kell vinni a képet!");
                            Console.Write("Külföldi vagy magyar festő alkotásáról van szó?(külföldi, magyar) --> ");
                            string nationality = Console.ReadLine();
                            if (nationality == "magyar")
                            {
                                Console.WriteLine("A galériára kerülnek a képek!");
                                double rentPrice = 5000 * 0.15;
                                Console.WriteLine("A magyar festmények elhelyezése a galérián: {0, 10} Ft / darab, ebből a felár {1, 10} FT / darab.", 5000 + rentPricerentPrice);
                            }
                            else
                            {
                                if (nationality == "külföldi")
                                {
                                    Console.WriteLine("A terem falaira kerülnek a képek!");
                                }
                                else
                                {
                                    Console.WriteLine("Hiba");
                                }
                            }
                        }
                    }
                }
            }
            //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)
            Console.ReadLine();
        }
    }
}

2021.02.22. Életkori szakaszok

Házi feladat:

 Kérj be egy életkor adatot, majd írd ki, hogy a felhasználó melyik életkori szakaszba tartozik.

0-14 év: gyerek

15-23 év: kamasz

24-62 év: felnőtt

63 év felett: idős korú

            Console.Write("Kérlek add meg az életkorodat: ");
            int eletkor = Convert.ToInt32(Console.ReadLine());
            if (eletkor > 0 && eletkor <= 14)
            {
                Console.WriteLine("Gyerek");
            }
            else
            {
                if (eletkor <= 23)
                {
                    Console.WriteLine("Kamasz");
                }
                else
                {
                    if (eletkor <= 62)
                    {
                        Console.WriteLine("Felnőtt");
                    }
                    else
                    {
                        Console.WriteLine("Idős korú");
                    }
                }

             }

2021.02.19./2 Túlsúly

Házi feladat

 Í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, vagy az 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?


Alen megoldása alapján:

using System;
using System.Threading;
namespace alenhazija20210219tulsuly
{
    class Program
    {
        static void Main(string[] args)
        {
            //            Í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, vagy az alatti érték, akkor írja ki a program, hogy "Gyerekekkel nem foglalkozom!" 
            double hundredValue = 100;
            //Pontosítsuk a feladatot: Ha 100 cm fölött van a magasság és nem túlsúlyos, akkor mit tegyünk? 
            Console.Write("Üdv a programban! Kérem adja meg a testmagasságát!(csak egy szám ami cm-ben értelmezendő)--> ");
            double bodyHeight = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine();
            if (hundredValue > bodyHeight)
            {
                Console.WriteLine("Gyerekekkel nem foglalkozom!");
            }
            else
            {
                Console.Write("Kérem adja meg a testsúlyát!(csak egy szám ami kg-ban értelmezendő)--> ");
                double bodyWeight = Convert.ToDouble(Console.ReadLine());
                if (bodyWeight > bodyHeight - 100)
                {
                    Console.WriteLine("Túlsúlyos! Fogynia kell!");
                }
                else
                {
                    Console.WriteLine("Egészséges vagy!");
                    Thread.Sleep(1000);                   
                }
            }
        }
    }
}


Alen megoldása alapján (bővebb):

using System;
using System.Threading;
namespace alenhazija20210219tulsuly
{
    class Program
    {
        static void Main(string[] args)
        {
            
            //            Í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, vagy az alatti érték, akkor írja ki a program, hogy "Gyerekekkel nem foglalkozom!" 
            double hundredValue = 100;
            //Pontosítsuk a feladatot: Ha 100 cm fölött van a magasság és nem túlsúlyos, akkor mit tegyünk? 
            Console.Write("Üdv a programban! Kérem adja meg a testmagasságát!(csak egy szám ami cm-ben értelmezendő)--> "); 
            double bodyHeight = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine();
            if (hundredValue > bodyHeight)
            {
                Console.WriteLine("Gyerekekkel nem foglalkozom!");
            }
            else
            {
                Console.Write("Kérem adja meg a testsúlyát!(csak egy szám ami kg-ban értelmezendő)--> ");
                double bodyWeight = Convert.ToDouble(Console.ReadLine());
                if (bodyWeight > bodyHeight - 100)
                {
                    Console.WriteLine("Túlsúlyos! Fogynia kell!");
                }
                else
                {
                    Console.WriteLine("Egészséges vagy!");
                    Thread.Sleep(1000);
                    string yes = "igen";
                    string no = "nem";
                    string yes0 = "Igen";
                    string no0 = "Nem";
                    Console.Write("Tudja, hogy hogyan lehet egészségesen élni? (igen vagy nem) -->"); string healthyLifeStyle = Console.ReadLine();
                    if (healthyLifeStyle == yes || healthyLifeStyle == yes0)
                    {
                        Console.WriteLine("Akkor neked nincs miről mesélnem :/)");
                        Thread.Sleep(3000);
                    }
                    else
                    {
                        Console.WriteLine("Tudod sokat segítenek ezek a dolgok: Rendszeres sport, testmozgás, friss levegő, rendszerezett élet, vitamindús étrend, megfelelő minőségű\n " +
                            "és mennyiségű alvás, stresszmentes élet, stb, stb, stb!");
                        Thread.Sleep(10000);
                    }
                }
            }
        }
    }
}

2021.02.19. Dátum-ellenőrző

Házi 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


Egy lehetséges megoldás:
using System;
namespace datum
{
    class Program
    {
        static void Main(string[] args)
        {
            //Házi feladat 
            //Olvassunk be egy hónap és egy nap sorszámát!Írjuk ki, ha a beolvasott számok nem jó intervallumba esnek. 
            Console.WriteLine("Kerem irja be egy honap sorszamat");
            int honap = Convert.ToInt32(Console.ReadLine());
            if (honap < 1 || honap > 12)
            {
                Console.WriteLine("Nem jó intervallumba esik a hónap sorszáma.");
            }
            else
            {
                Console.WriteLine("Kerem irja be a honaphoz egy nap sorszamat.");
                int nap = Convert.ToInt32(Console.ReadLine());
                string hiba = "Nem jó intervallumba esik a nap sorszáma.";
                if (honap == 1 || honap == 4 || honap == 6 || honap == 9 || honap == 11)
                {
                    if (!(nap >= 1 && nap <= 30)) //vagy: if (nap > 30 || nap < 1)
                    {
                        Console.Write(hiba);
                    }
                }
                else
                {
                    if (honap == 3 || honap == 5 || honap == 7 || honap == 8 || honap == 10 || honap == 12)
                    {
                        if (!(nap >= 1 && nap <= 31)) //vagy: if (nap < 1 || nap > 31))
                        {
                            Console.Write(hiba);
                        }
                    }
                    else
                    {
                        if (honap == 2)
                        {
                            if (!(nap >= 1 && nap <= 28)) //vagy: if (nap < 1 || nap > 28))
                            {
                                Console.Write(hiba);
                            }
                        }
                    }
                }
            }
            //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 
            Console.ReadLine();
        }
    }
}

2023.04.26. Javító feladatsor