Február 13-ra, hétfő 7. órára kell megoldani.
//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:
//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).
//Írd ki ezeket az adatokat a képernyőre, egy készülék adatait egy
sorszámozott sorba.
//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.
//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 ez a feltétel nem igaz, akkor írd ki,
//hogy 1000 forintnyi bónuszt kapott volna, ha regisztrált vásárló
lenne.
//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ő.
//Í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!”
Ádám megoldása:
Ádám megoldása:
namespace ConsoleApplication1
{
class Program
{
public struct szg
{
public string GyartoNevPluszKod;
public int ar;
public double szazalekAkcio;
public double szazalekosan;
}
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:
//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).
//Írd ki ezeket
az adatokat a képernyőre, egy készülék adatait egy sorszámozott sorba.
//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.
//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 ez a feltétel
nem igaz, akkor írd ki,
//hogy 1000
forintnyi bónuszt kapott volna, ha regisztrált vásárló lenne.
//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ő.
//Í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!”
const int SzazSzazalek = 100; //ha
a száznak nem hozunk létre konstanst, hanem beírjuk csak a számításnál, úgy is
jó
szg
Elsogep = new szg();
Elsogep.GyartoNevPluszKod = "HP Pavilion Wave 600-a000";
Elsogep.ar = 210000;
Elsogep.szazalekAkcio = 15;
Elsogep.szazalekosan = Elsogep.ar -
Elsogep.ar * (Elsogep.szazalekAkcio / SzazSzazalek);
szg
Masodikgep = new szg();
Masodikgep.GyartoNevPluszKod = "Acer Aspire E1-472";
Masodikgep.ar = 175000;
Masodikgep.szazalekAkcio = 0;
Masodikgep.szazalekosan = Masodikgep.ar -
Masodikgep.ar * (Masodikgep.szazalekAkcio / SzazSzazalek);
szg
Harmadikgep = new szg();
Harmadikgep.GyartoNevPluszKod = "Lenovo Ideapad 15,6'' HD LED 110 - 80TJ007KHV";
Harmadikgep.ar = 125000;
Harmadikgep.szazalekAkcio = 10;
Harmadikgep.szazalekosan = Harmadikgep.ar -
Harmadikgep.ar * (Harmadikgep.szazalekAkcio / SzazSzazalek);
Console.WriteLine("1. gép: {0}, teljes ára: {1} Ft és {2}% akcióval
rendelkezik.", Elsogep.GyartoNevPluszKod, Elsogep.ar,
Elsogep.szazalekAkcio);
Console.WriteLine("2. gép: {0}, teljes ára: {1} Ft és {2}% akcióval
rendelkezik.", Masodikgep.GyartoNevPluszKod, Masodikgep.ar,
Masodikgep.szazalekAkcio);
Console.WriteLine("3. gép: {0}, teljes ára: {1} Ft és {2}% akcióval
rendelkezik.", Harmadikgep.GyartoNevPluszKod, Harmadikgep.ar,
Harmadikgep.szazalekAkcio);
int szam = Convert.ToInt32(Console.ReadLine());
double
valasztottGep;
switch
(szam)
{
case 1:
Console.WriteLine("A gép akcióan: {0} Ft.",
Elsogep.szazalekosan);
valasztottGep = Elsogep.szazalekosan;
break;
case 2:
Console.WriteLine("A gép akcióan: {0} Ft.",
Masodikgep.szazalekosan);
valasztottGep =
Masodikgep.szazalekosan;
break;
case 3:
Console.WriteLine("A gép akcióan: {0} Ft.",
Harmadikgep.szazalekosan);
valasztottGep =
Harmadikgep.szazalekosan;
break;
default:
Console.WriteLine("Rossz számot ütöttél be!\nÜss egy Enter-t hogy kilépj
a programból.");
Console.ReadLine();//Ez a kilépés hasznos, és helyes, de nem strukturált
megoldás.
return;
}
Console.WriteLine();
Console.WriteLine("Regisztrált felhasználó vagy? (regisztrált/nem
regisztrált) ");
string
regisztracio = Console.ReadLine();
if
(regisztracio == "regisztrált"
&& valasztottGep > 150000)
Console.WriteLine("1000 Ft-nyi bónuszt fogsz kapni. ");
else
if (regisztracio == "nem
regisztrált" && valasztottGep > 150000)
Console.WriteLine("1000 Ft-nyi bónuszt kaptál volna ha regisztrálsz.
");
Console.Write("Elfogadod ezeket a feltételeket? (true/false)
");
bool log = Convert.ToBoolean(Console.ReadLine());
if (!log)//Ez a kilépés
hasznos, és helyes, de nem strukturált megoldás.
return;
//Ha nem lett volna kilépés, a lentieknek egy else ágban
kellene lenni.
Console.Write("Szeretnéd megadni a neved és a lakcímed?
(true/false)");
bool adatok
= Convert.ToBoolean(Console.ReadLine());
if (adatok)
{
Console.Write("Név: ");
string nev = Console.ReadLine();
Console.Write("Lakcím: ");
string lakcim =
Console.ReadLine();
Console.WriteLine("Tisztelt {0}, felvettük a rendelését és az ön által
megadott, {1} címre postázzuk.", nev, lakcim);
}
else
Console.WriteLine("Reméljük, nemsokára ellátogat újra hozzánk!");
Console.ReadLine();