2021.02.05. Egymásba ágyazott kétágú szelekció gyakorlása: Dolgozat pontozás

 Házi feladat:

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.

            //Első megoldás:

            //Egyenként tároljuk őket változókban.

 

            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;

 

            //Második megoldás:

            //Mindig csak az aktuális pontszámot tároljuk addig, amíg

            //hozzá nem adtuk a többihez.

 

            //2. Írjuk ki, hogy a pontszám alapján a user hányast kapott.

            //Alkalmazzunk egymást kizáró egyágú szelekciókat.

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

            //A harmadik megoldáshoz alkalmazzunk egymásba ágyazott szelekciókat.

 

            //Első megoldás:

 

            //Második megoldás:

 

            //Második megoldás másképp megjelenítve:

 

            //Harmadik megoldás:

            Console.ReadLine();

        }

    }

}


Megoldá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.
            //Első megoldás:
            //Egyenként tároljuk őket változókban.
            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);
            //másik megoldás:
            int sorszam = 1;
            Console.WriteLine("Add meg a(z) {0}. feladatban elért pontszámodat!"sorszam);
            sorszam++;  //sorszam=sorszam+1;
            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;
            Console.WriteLine("Összpontszámod: {0} "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
            //A harmadik megoldáshoz alkalmazzunk egymásba ágyazott szelekciókat.
            //Első megoldás:
            if (osszpont <= 60)
                Console.WriteLine("Te egyest kaptál!");
            if (osszpont >= 61 && osszpont <= 70)
                Console.WriteLine("Te kettest kaptál!");
            if (osszpont >= 71 && osszpont <= 80)
                Console.WriteLine("Te hármast kaptál!");
            if (osszpont >= 81 && osszpont <= 90)
                Console.WriteLine("Te négyest kaptál!");
            if (osszpont >= 91 && osszpont <= 100)
                Console.WriteLine("Te ötöst kaptál! Gratulálok!");
            //Második megoldás:
            if (osszpont <= 60)
                Console.WriteLine("Te egyest kaptál!");
            if (osszpont > 60 && osszpont <= 70)
                Console.WriteLine("Te kettest kaptál!");
            if (osszpont > 70 && osszpont <= 80)
                Console.WriteLine("Te hármast kaptál!");
            if (osszpont > 80 && osszpont <= 90)
                Console.WriteLine("Te négyest kaptál!");
            if (osszpont > 90 && osszpont <= 100)
                Console.WriteLine("Te ötöst kaptál! Gratulálok!");
            //Második megoldás másképp megjelenítve:
            if (osszpont <= 60Console.WriteLine("Te egyest kaptál!");
            if (osszpont > 60 && osszpont <= 70) { Console.WriteLine("Te kettest kaptál!"); }
            if (osszpont > 70 && osszpont <= 80Console.WriteLine("Te hármast kaptál!");
            if (osszpont > 80 && osszpont <= 90Console.WriteLine("Te négyest kaptál!");
            if (osszpont > 90 && osszpont <= 100Console.WriteLine("Te ötöst kaptál! Gratulálok!");
            //Harmadik megoldás:
            if (osszpont < 0)
                Console.WriteLine("A pontszam nem lehet negatív!");
            else
                if (osszpont >= 0 && osszpont <= 60)
                    Console.WriteLine("Te egyest kaptál!");
                else
                    if (osszpont <= 70)
                        Console.WriteLine("Te kettest kaptál!");
                    else
                        if (osszpont <= 80)
                            Console.WriteLine("Te hármast kaptál!");
                        else
                            if (osszpont <= 90)
                                Console.WriteLine("Te négyest kaptál!");
                            else
                                if (osszpont <= 100)
                                    Console.WriteLine("Te ötöst kaptál! Gratulálok!");
                                else
                                    Console.WriteLine("Rossz pontszám! (100 fölötti)");

            //másik megoldás:
            if (osszpont < 0)
            {
                Console.WriteLine("A pontszam nem lehet negatív!");
            }
            else
            {
                if (osszpont >= 0 && osszpont <= 60)
                {
                    Console.WriteLine("Te egyest kaptál!");
                }
                else
                {
                    if (osszpont <= 70)
                    {
                        Console.WriteLine("Te kettest kaptál!");
                    }
                    else
                    {
                        if (osszpont <= 80)
                        {
                            Console.WriteLine("Te hármast kaptál!");
                        }
                        else
                        {
                            if (osszpont <= 90)
                            {
                                Console.WriteLine("Te négyest kaptál!");
                            }
                            else
                            {
                                if (osszpont <= 100)
                                {
                                    Console.WriteLine("Te ötöst kaptál! Gratulálok!");
                                }
                                else
                                {
                                    Console.WriteLine("Rossz pontszám! (100 fölötti)");
                                }
                            }
                        }
                    }
                }
            }
            Console.ReadLine();
        }
    }
}

2021.02.05. Egymásba ágyazott szelekció bevezetés


            // 1. feladat:

            //- Kérj be egy egész számot.

 

            //- Vizsgáld meg, hogy osztható-e 5-tel.

            //- Ha osztható 5-tel, vizsgáld meg, hogy osztható-e kettővel. Ha igen, írd ki, hogy akkor osztható 10-zel is.

        //- Ha nem volt osztható 5-tel, akkor írd ki, hogy nem vizsgálod a kettővel oszthatóságot.

 

            //2. feladat:

            //- Kérd be, hogy a tanuló gimis, vagy szakgimis.

 

            //- Ha szakgimis, kérd be az évfolyamát is.

            //- Ha évfolyamként azt adta meg, hogy 9, akkor kérdezd meg, hogy infós, vagy tesis.

            //- Ha kilencedikes és infós, írd ki, hogy most programozás órája lesz.

 

            //- Ha kilencedikes és tesis, írd ki, hogy most éppen tesi órája lesz.

 Megoldás:


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace egymasbaAgyazott
{
    class Program
    {
        static void Main(string[] args)
        {
            // 1. feladat:
            //- Kérj be egy egész számot.
            Console.WriteLine("Kérek egy egész számot!");
            int szam = Convert.ToInt32(Console.ReadLine());
            //- Vizsgáld meg, hogy osztható-e 5-tel.
            if (szam % 5 == 0) //"igaz" ág
            { //blokkjel(pár), ezen belül végrehajtódik minden utasítás, ha a feltétel igaz
                Console.WriteLine("A szám osztható 5-tel, vizsgálom a kettővel való oszthatóságot.");

                if (szam % 2 == 0)
                {
                    Console.WriteLine("A szám osztható kettővel.");
                    Console.WriteLine("A szám osztható tízzel is.");
                }
                else
                {
                    Console.WriteLine("A szám nem osztható kettővel.");
                }
            }
            else // "hamis" ág
            {
                Console.WriteLine("A szám nem osztható 5-tel, nem vizsgálom a kettővel való oszthatóságot.");
            }
            //- Ha osztható 5-tel, vizsgáld meg, hogy osztható-e kettővel. Ha igen, írd ki, hogy akkor osztható 10-zel is.
            //- Ha nem volt osztható 5-tel, akkor írd ki, hogy nem vizsgálod a kettővel oszthatóságot.



            //2. feladat:
            //- Kérd be, hogy a tanuló gimis, vagy szakgimis.
            //- Ha szakgimis, kérd be az évfolyamát is.
            //- Ha évfolyamként azt adta meg, hogy 9, akkor kérdezd meg, hogy infós, vagy tesis.
            //- Ha kilencedikes és infós, írd ki, hogy most programozás órája lesz.
            //- Ha kilencedikes és tesis, írd ki, hogy most tesi órája lesz.

            Console.Write("Válassz: gimis, vagy szakgimis vagy? ");
            string szak = Console.ReadLine();
            if (szak == "gimis")
            {
                Console.WriteLine("Köszönjük, nem kérünk további adatokat.");
            }
            else
            {
                if (szak == "szakgimis")
                {
                    Console.Write("Kérem az évfolyamodat:");
                    string evfolyam = Console.ReadLine();
                    if (evfolyam == "9")
                    {
                        Console.WriteLine("Infós, vagy tesis vagy?");
                        string szakirany = Console.ReadLine();
                        if (szakirany == "infós")
                        {
                            Console.WriteLine("Programozás órád van.");
                        }
                        else
                        {
                            Console.WriteLine("Tesi órád van.");
                        }
                    }
                    else
                    {
                        Console.WriteLine("Köszönjük, további szép napot!");
                    }
                }
                else
                {
                    Console.WriteLine("Hiba!");
                }

            }
            Console.ReadLine();
        }
    }
}

Második megoldás, kevesebb blokkjellel:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace egymasbaAgyazott
{
    class Program
    {
        static void Main(string[] args)
        {
            // 1. feladat:
            //- Kérj be egy egész számot.
            Console.WriteLine("Kérek egy egész számot!");
            int szam = Convert.ToInt32(Console.ReadLine());
            //- Vizsgáld meg, hogy osztható-e 5-tel.
            if (szam % 5 == 0) //"igaz" ág
            { //blokkjel(pár), ezen belül végrehajtódik minden utasítás, ha a feltétel igaz
                Console.WriteLine("A szám osztható 5-tel, vizsgálom a kettővel való oszthatóságot.");

                if (szam % 2 == 0)
                {
                    Console.WriteLine("A szám osztható kettővel.");
                    Console.WriteLine("A szám osztható tízzel is.");
                }
                else     
                    Console.WriteLine("A szám nem osztható kettővel.");          
            }
            else // "hamis" ág
                Console.WriteLine("A szám nem osztható 5-tel, nem vizsgálom a kettővel való oszthatóságot.");
          
            //- Ha osztható 5-tel, vizsgáld meg, hogy osztható-e kettővel. Ha igen, írd ki, hogy akkor osztható 10-zel is.
            //- Ha nem volt osztható 5-tel, akkor írd ki, hogy nem vizsgálod a kettővel oszthatóságot.



            //2. feladat:
            //- Kérd be, hogy a tanuló gimis, vagy szakgimis.
            //- Ha szakgimis, kérd be az évfolyamát is.
            //- Ha évfolyamként azt adta meg, hogy 9, akkor kérdezd meg, hogy infós, vagy tesis.
            //- Ha kilencedikes és infós, írd ki, hogy most programozás órája lesz.
            //- Ha kilencedikes és tesis, írd ki, hogy most tesi órája lesz.

            Console.Write("Válassz: gimis, vagy szakgimis vagy? ");
            string szak = Console.ReadLine();
            if (szak == "gimis")           
                Console.WriteLine("Köszönjük, nem kérünk további adatokat.");           
            else
            {
                if (szak == "szakgimis")
                {
                    Console.Write("Kérem az évfolyamodat:");
                    string evfolyam = Console.ReadLine();
                    if (evfolyam == "9")
                    {
                        Console.WriteLine("Infós, vagy tesis vagy?");
                        string szakirany = Console.ReadLine();
                        if (szakirany == "infós")                       
                            Console.WriteLine("Programozás órád lesz.");                       
                        else                       
                            Console.WriteLine("Tesi órád lesz.");                       
                    }
                    else                    
                        Console.WriteLine("Köszönjük, további szép napot!");                   
                }
                else               
                    Console.WriteLine("Hiba!");               
            }
            Console.ReadLine();
        }
    }
}

2024.02.15.-16. Helyettesítés

 Adatbázis: vizsgaremek adatbázisának befejezése teljesen készre, dokumentáció kiegészítése, befejezése. Vizsgaremek felületének megvalósítá...