2022. november 22., kedd

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

Nincsenek megjegyzések:

Megjegyzés küldése

2024.04.25., 29., 05.02. 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...