//Ahol érdemes, használj a megoldás során többágú szelekciót!
//Ha ez nem megy, akkor megoldhatod kétágú szelekciókkal is.
//Asztali számítógépek eladásához azt a modult kell megírnod,
//ami a mindenkori 3 legújabb készülék vásárlására ad lehetőséget.
//Feladat:
//1.
//Tárold struktúrákban a 3 számítógép megnevezését (gyártó, fantázianév és egy kód egyben,
//pl. HP Pavilion Wave 600-a000),
//az árát, és a hozzá tartozó akció mértékét (pl. 10 - ez 10 %-ot jelent).
//2.
//Írd ki ezeket az adatokat a képernyőre, egy készülék adatait egy sorszámozott sorba.
//3.
//Kérdezd meg a felhasználót, hogy melyik számítógépet választja. Csak egy számot kelljen beütnie.
//Írd ki a választásától függően a képernyőre a számítógép akciós árát. Ha valótlan
//számot ütött be a felhasználó, írj ki hibaüzenetet.
//4.
//Ezután kérdezd meg a felhasználót, hogy regisztrált felhasználó-e <regisztrált / nem regisztrált>
//formában kérd ezt be.
//Ha regisztrált, és a számítógép nettó értéke 150.000,- Ft fölött van,
//írd ki neki, hogy a 1000 forintnyi bónuszt fog kapni.
//Ha nem regisztrált, akkor írd ki,
//hogy 150.000 ft fölött 1000 forintnyi bónuszt kapott volna, ha regisztrált vásárló lenne.
//5.
//Ezután kérdezd meg, hogy ezeket a feltételeket elfogadja-e (true/false lehet a válasz).
//Ha igen, kérd be a nevét, és a címét egy-egy változóba.
//Ha nem, akkor nincs teendő.
//6.
//Írj ki egy búcsúzó üzenetet, melyben a nevén nevezed a felhasználót, ha tudod a nevét,
//és kiírod, hogy milyen címre postázod a számítógépet.
//Ha nem tudod a nevét, akkor csak ennyit:
//„Reméljük, nemsokára ellátogat újra hozzánk!”
Ricsi (10b1) megoldása alapján egy lehetséges megoldás:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _2020._03._06_2
{
class Program
{
public struct szamitogepek
{
public string gyartoFantazianevKod;
public double ar;
public double akcio;
}
static void Main(string[] args)
{
//Ahol érdemes, használj a megoldás során többágú szelekciót!
//Ha ez nem megy, akkor megoldhatod kétágú szelekciókkal is.
//Asztali számítógépek eladásához azt a modult kell megírnod,
//ami a mindenkori 3 legújabb készülék vásárlására ad lehetőséget.
//Feladat:
//1.
//Tárold struktúrákban a 3 számítógép megnevezését (gyártó, fantázianév és egy kód egyben,
//pl. HP Pavilion Wave 600-a000),
//az árát, és a hozzá tartozó akció mértékét (pl. 10 - ez 10 %-ot jelent).
szamitogepek gep1 = new szamitogepek();
gep1.gyartoFantazianevKod = "Hp Gép 1";
gep1.ar = 200000;
gep1.akcio = 10;
szamitogepek gep2 = new szamitogepek();
gep2.gyartoFantazianevKod = "Asus Gép 2";
gep2.ar = 14000;
gep2.akcio = 13;
szamitogepek gep3 = new szamitogepek();
gep3.gyartoFantazianevKod = "Samsung Gép 3";
gep3.ar = 170000;
gep3.akcio = 8;
//2.
//Írd ki ezeket az adatokat a képernyőre, egy készülék adatait egy sorszámozott sorba.
Console.WriteLine("Gép 1: Gyártó,név,kód: {0}, Ár: {1}, Akció: {2}%", gep1.gyartoFantazianevKod, gep1.ar, gep1.akcio);
Console.WriteLine("Gép 2: Gyártó,név,kód: {0}, Ár: {1}, Akció: {2}%", gep2.gyartoFantazianevKod, gep2.ar, gep2.akcio);
Console.WriteLine("Gép 3: Gyártó,név,kód: {0}, Ár: {1}, Akció: {2}%", gep3.gyartoFantazianevKod, gep3.ar, gep3.akcio);
//3.
//Kérdezd meg a felhasználót, hogy melyik számítógépet választja. Csak egy számot kelljen beütnie.
Console.WriteLine("Melyik gépet választja ? (1,2,3)");
char valaszt = Convert.ToChar(Console.ReadLine());
//Írd ki a választásától függően a képernyőre a számítógép akciós árát. Ha valótlan
//számot ütött be a felhasználó, írj ki hibaüzenetet.
double ar = 0;
switch (valaszt)
{
case '1':
double akciosar1 = gep1.ar - (gep1.ar * gep1.akcio) / 100;
Console.WriteLine("Ennek a gépnek az akciós ára: {0}", akciosar1);
ar = gep1.ar;
break;
case '2':
double akciosar2 = gep2.ar - (gep2.ar * gep2.akcio) / 100;
Console.WriteLine("Ennek a gépnek az akciós ára: {0}", akciosar2);
ar = gep2.ar;
break;
case '3':
double akciosar3 = gep3.ar - (gep3.ar * gep3.akcio) / 100;
Console.WriteLine("Ennek a gépnek az akciós ára: {0}", akciosar3);
ar = gep3.ar;
break;
default:
Console.WriteLine("Rossz számot írt be!!");
break;
}
//4.
//Ezután kérdezd meg a felhasználót, hogy regisztrált felhasználó-e <regisztrált / nem regisztrált>
//formában kérd ezt be.
Console.WriteLine("Ön regisztrált felhasználó ? (regisztrált/nem regisztrált)");
string regsztr = Console.ReadLine();
//Ha regisztrált, és a számítógép nettó értéke 150.000,- Ft fölött van,
//írd ki neki, hogy a 1000 forintnyi bónuszt fog kapni.
//Ha nem regisztrált, akkor írd ki,
//hogy 150.000 ft fölött 1000 forintnyi bónuszt kapott volna, ha regisztrált vásárló lenne.
if (regsztr == "regisztrált")
{
if (ar > 150000)
{
Console.WriteLine("Akkor 1000 forintnyi bónuszt fogsz kapni.");
}
}
else
{
if (regsztr == "nem regisztrált")
{
Console.WriteLine("150.000 ft fölött 1000 forintnyi bónuszt kapott volna, ha regisztrált vásárló lenne");
}
}
//5.
//Ezután kérdezd meg, hogy ezeket a feltételeket elfogadja-e (true/false lehet a válasz).
Console.WriteLine("Elfogadja ezeket a feltételeket ? (true/false)");
bool elfogad = Convert.ToBoolean(Console.ReadLine());
//Ha igen, kérd be a nevét, és a címét egy-egy változóba.
//Ha nem, akkor nincs teendő.
switch (elfogad)
{
case true:
Console.WriteLine("Kérem a nevét és a címét:"); //Kicsit lusta, de teljes pontot érő megoldás:)
string cimNev = Console.ReadLine();
Console.WriteLine("A {0} névre és címre fogom postázni a számítógépet.", cimNev);
break;
default:
Console.WriteLine("Reméljük, nemsokára ellátogat újra hozzánk!");
break;
}
//6.
//Írj ki egy búcsúzó üzenetet, melyben a nevén nevezed a felhasználót, ha tudod a nevét,
//és kiírod, hogy milyen címre postázod a számítógépet.
//Ha nem tudod a nevét, akkor csak ennyit:
//„Reméljük, nemsokára ellátogat újra hozzánk!”
Console.ReadLine();
}
}
}
Nincsenek megjegyzések:
Megjegyzés küldése