Házi feladat a 8. feladat végéig megoldani csütörtökig.
//1. Az
ablak címsorába írj be a mai napodra vonatkozó "jelmondatot". (Csak
kulturáltan, uraim.)
//2. Adj
egy hangjelzést.
//3.
Definiálj egy konstanst <<akcio>> néven, amelyben a termékakcióban
használt
//százalékértéket
kell tárolnod. (pl. 20%-os kedvezménynél: 20.)
//4.
A konstans értéke legyen 20.
//5. Hozz
létre egy 3 elemű tömböt <<termekek>> néven, amelyben a termékek
nevét fogod tárolni.
//6.
Programból töltsd föl a tömböt terméknevekkel (pl. maszk, kézfertőtlenítő,
gumikesztyű :)
//7. Hozz
létre egy 3 elemű tömböt <<arak>> néven, amelyben a termékek árát
fogod tárolni.
//8. Ezt
a tömböt a felhasználótól bekért adatokkal kell feltöltened.
//Ehhez
írd ki neki, hogy 10-re végződő árakat kell beírnia,
//majd
helyezd el a bekért értékeket a tömbben.
//Ne
használj változót a bevitelhez, egyenesen a tömbbe tedd be az értékeket.
//9.
Csökkentsd az árakat 1-gyel a -- operátor segítségével.
//Ehhez
itt egy mintaprogram:
//int[]
tomb=new int[2];
//tomb[0]--;
//Console.WriteLine(tomb[0]);
//10. Írd
ki a két tömb első értékeit a képernyőre a következőképpen:
//állítsd
át a betűszínt, és a betű hátterének színét;
//írd ki
az akció kulcsának értékét (20) a 10. sor 5. oszlopába, írd mögé, hogy %;
//ehhez a
SetCursorPosition()-t használd
//írd ki
a termék nevét (a következő sor elejére) úgy,
//hogy közben
gondoskodj róla, hogy a kurzor ott maradjon kiírás után;
//állítsd
át a betűszínt, és a betű hátterének színét más színekre;
//írd ki
a termék árát;
//hagyj
egy üres sort a képernyőn.
//11.
Ismételd meg ezeket minden termékkel. Később erre ciklust fogunk használni.
//12.
Hozz létre egy 3 elemű tömböt <<akcios_ar>> néven, amelyben a
termékek akciós árát fogod tárolni.
//13.
Ennek a tömbnek az elemeit töltsd föl a termékek általad kiszámolt akciós
árával.
//Feltételek:
//Ha
a termék ára 1000 forint, vagy annál magasabb, akkor a konstansban megadott
százalékértéket használjuk (20).
//Ha
a termék ára 1000 forint alatt van, akkor a konstansban megadottnál 5 %-kal
alacsonyabb értékű akció vonatkozik rá.
//14.
Írd ki a három tömb értékeit a képernyőre a következő mintapélda alapján:
//MASZK
500 Ft helyett: 425 Ft
//Ehhez a
termékek nevét nagybetűssé kell alakítanod (csak a kiírás idejére, a tömbben ne
változzon).
//Ne
használj szóközöket.
//1. Az ablak címsorába írj be a mai napodra vonatkozó "jelmondatot". (Csak kulturáltan, uraim.)
Console.Title = ":)";
//2. Adj egy hangjelzést.
Console.Beep();
//3. Definiálj egy konstanst <<akcio>> néven, amelyben a termékakcióban használt
//százalékértéket kell tárolnod. (pl. 20%-os kedvezménynél: 20.)
//4. A konstans értéke legyen 20.
const double akcio = 20;
//5. Hozz létre egy 3 elemű tömböt <<termekek>> néven, amelyben a termékek nevét fogod tárolni.
string[] termekek = new string[3];
//6. Programból töltsd föl a tömböt terméknevekkel (pl. maszk, kézfertőtlenítő, gumikesztyű :)
termekek[0] = "maszk";
termekek[1] = "kézfertőtlenítő";
termekek[2] = "gumikesztyű";
//7. Hozz létre egy 3 elemű tömböt <<arak>> néven, amelyben a termékek árát fogod tárolni.
double[] arak = new double[3];
//8. Ezt a tömböt a felhasználótól bekért adatokkal kell feltöltened.
//Ehhez írd ki neki, hogy 10-re végződő árakat kell beírnia,
//majd helyezd el a bekért értékeket a tömbben.
//Ne használj változót a bevitelhez, egyenesen a tömbbe tedd be az értékeket.
Console.Write("Kérem az első 10-re végződő árat: ");
arak[0] = Convert.ToInt32(Console.ReadLine());
Console.Write("Kérem a második 10-re végződő árat: ");
arak[1] = Convert.ToInt32(Console.ReadLine());
Console.Write("Kérem a harmadik 10-re végződő árat: ");
arak[2] = Convert.ToInt32(Console.ReadLine());
//9. Csökkentsd az árakat 1-gyel a -- operátor segítségével.
//Ehhez itt egy mintaprogram:
//int[] tomb = new int[1];
//tomb[0]--;
arak[0]--;
arak[1]--;
arak[2]--;
//10. Írd ki a két tömb első értékeit a képernyőre a következőképpen:
//állítsd át a betűszínt, és a betű hátterének színét;
Console.ForegroundColor = ConsoleColor.Red;
Console.BackgroundColor = ConsoleColor.White;
//írd ki az akció kulcsának értékét (20) a 10. sor 5. oszlopába, írd mögé, hogy %;
//ehhez a SetCursorPosition()-t használd
Console.SetCursorPosition(4, 9);
Console.WriteLine("Akció: {0}%", akcio); // később kiderül, hogy nem mindenhol ennyi, de nem baj
//írd ki a termék nevét (a következő sor elejére) úgy,
//hogy közben gondoskodj róla, hogy a kurzor ott maradjon kiírás után;
Console.Write("{0} ", termekek[0]);
//állítsd át a betűszínt, és a betű hátterének színét más színekre;
Console.ForegroundColor = ConsoleColor.DarkGray;
Console.BackgroundColor = ConsoleColor.Cyan;
//írd ki a termék árát;
Console.WriteLine("Ár: {0} Ft ", arak[0]);
//hagyj egy üres sort a képernyőn.
Console.WriteLine();
//11. Ismételd meg ezeket minden termékkel. Később erre ciklust fogunk használni.
Console.ForegroundColor = ConsoleColor.Red;
Console.BackgroundColor = ConsoleColor.White;
Console.SetCursorPosition(4, 12);
Console.WriteLine("Akció: {0}%", akcio);
Console.Write("{0} ", termekek[1]);
Console.ForegroundColor = ConsoleColor.DarkGray;
Console.BackgroundColor = ConsoleColor.Cyan;
Console.WriteLine("Ár: {0} Ft", arak[1]);
Console.WriteLine();
Console.ForegroundColor = ConsoleColor.Red;
Console.BackgroundColor = ConsoleColor.White;
Console.SetCursorPosition(4, 15);
Console.WriteLine("Akció: {0}%", akcio);
Console.Write("{0} ", termekek[2]);
Console.ForegroundColor = ConsoleColor.DarkGray;
Console.BackgroundColor = ConsoleColor.Cyan;
Console.WriteLine("Ár: {0} Ft", arak[2]);
Console.WriteLine();
//12. Hozz létre egy 3 elemű tömböt <<akcios_ar>> néven, amelyben a termékek akciós árát fogod tárolni.
double[] akcios_ar = new double[3];
//13. Ennek a tömbnek az elemeit töltsd föl a termékek általad kiszámolt akciós árával.
//Feltételek:
//Ha a termék ára 1000 forint, vagy annál magasabb, akkor a konstansban megadott százalékértéket használjuk (20).
if (arak[0] >= 1000)
{
akcios_ar[0] = arak[0] - (arak[0] * akcio) / 100;
}
//Ha a termék ára 1000 forint alatt van, akkor a konstansban megadottnál 5 %-kal alacsonyabb értékű akció vonatkozik rá.
else
{
akcios_ar[0] = arak[0] - (arak[0] * (akcio - 5)) / 100;
}
if (arak[1] >= 1000)
{
akcios_ar[1] = arak[1] - (arak[1] * akcio) / 100;
}
//Ha a termék ára 1000 forint alatt van, akkor a konstansban megadottnál 5 %-kal alacsonyabb értékű akció vonatkozik rá.
else
{
akcios_ar[1] = arak[1] - (arak[1] * (akcio - 5)) / 100;
}
if (arak[2] >= 1000)
{
akcios_ar[2] = arak[2] - (arak[2] * akcio) / 100;
}
//Ha a termék ára 1000 forint alatt van, akkor a konstansban megadottnál 5 %-kal alacsonyabb értékű akció vonatkozik rá.
else
{
akcios_ar[2] = arak[2] - (arak[0] * (akcio - 5)) / 100;
}
//14. Írd ki a három tömb értékeit a képernyőre a következő mintapélda alapján:
//MASZK 500 Ft helyett: 425 Ft
//Ehhez a termékek nevét nagybetűssé kell alakítanod (csak a kiírás idejére, a tömbben ne változzon).
//Ne használj szóközöket.
Console.SetCursorPosition(0, 25);
Console.WriteLine("{0, -16} {1, 5} Ft helyett:{2, 5} Ft", termekek[0].ToUpper(), arak[0], (int)akcios_ar[0]);
//(int)akcios_ar[0] - ebben az (int) típuskényszerítés: "kényszerítjük", hogy egész szám legyen a tört számból
//csak a kiírás idejére, így egyszerűen levágja a tört részt (ez nem igazi kerekítés)
Console.WriteLine("{0, -16} {1, 5} Ft helyett:{2, 5} Ft", termekek[1].ToUpper(), arak[1], (int)akcios_ar[1]);
Console.WriteLine("{0, -16} {1, 5} Ft helyett:{2, 5} Ft", termekek[2].ToUpper(), arak[2], (int)akcios_ar[2]);
Console.ReadLine();
//Ne használj szóközöket.