Új hozzászólás Aktív témák
-
kpisti1990
csendes tag
Sziasztok!
A segítségeteket szeretném kérni. Adott egy állapotgépes feladat:-alap állapotban üdvözlő szöveg
-a user 3 különböző ital közül választhat
-ital kiválasztása után jelenlen meg az ital neve és ára
-sikertelen fizetés vagy törlés esetén térjen vissza alap állapotba
-sikeres fizetés esetén kezdje elkészíteni az italt
-mikor kész, üzenetben jelezze
-végén (ital elvételekor) álljon vissza alap állapotbaEléggé nagyon kezdő vagyok, most próbálkozok a "hello world"nél komolyabb kóddal először
Átrágva a jegyzetetek/fórumokat arra jutottam hogy ez egy switch-case-es eset. Sikerült elérnem, hogy egy adott betű lenyomására egy adott szöveget írjon ki.
char c;
c=getchar();
getchar();
if (c=='k')
printf("Kave 100Ft\n");
if (c=='t')
printf("Tea 150Ft\n");
if (c=='c')
printf("Forrocsoki 200Ft\n");valahogy így. Ezt betettem a case ALAP esetbe, eddig rendben van, viszont sehogyse tudom átugrasztani a következő stádiumra. a break; miatt ugyebár kilép az egészből, de én úgy tudom, valahogy mégiscsak átlehete ugrasztani a következő case-re. Remélem érthetően fogalmaztam, segítségeket köszönöm előre is .
int main()
{
typedef enum state {ALAP,FIZETETT,KESZ};
enum state state=ALAP;
while (1)
{
switch(state){
case ALAP:
printf("Udvozlom!Kerem valasszon italt\n");
{
char c;
c=getchar();
getchar();
if (c=='k')
printf("Kave 100Ft\n");
if (c=='t')
printf("Tea 150Ft\n");
if (c=='c')
printf("Forrocsoki 200Ft\n");
}
break;case FIZETETT:
printf("Ital keszitese folyamatban....\n");
break;case KESZ:
printf("Kesz!Kerem vegye el az italt.Koszonom!\n");
break;
default: printf("Sikertelen fizetes vagy torles.\n");
}return 0;
}
}
Itt a teljes. Feltételezem kismillió hiba van benne, de fut
viszont amit el szeretnék érni hogy miután pl a "k" betűt lenyomtam és kiírta az árát meg a nevét, ne lépjen ki, hanem térjen rá a FIZETETT állapotra(ott természetesen más lesz, csak bírtam neki valamit, hogy lássam átugrik-e). 
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Milyen alaplapot vegyek?
- Elektromos autók - motorok
- Samsung kuponkunyeráló
- Crimson Desert
- Eljött a CPU-k kora az AI-piacon
- exHWSW - Értünk mindenhez IS
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Samsung Galaxy A56 - megbízható középszerűség
- Motoros topic
- Fittyet hány a pesti napfényre a Honor 600
- További aktív témák...
- Új, Gamer félgép - MSI Z890 GAMING PLUS WIFI + Intel Ultra 7 265K + Corsair 2x16GB DDR5 6400MHz CL32
- ASUS Rog Ally Z1 Extreme, 2027.01.12-ig gyári garanciás, hálózati töltőjével, szilikon tokkal eladó!
- HP 250 G7,15.6",i5-1035G1,8GB DDR4,256GB SSD,WIN11
- Lenovo ThinkPad T480s,FHD,14",i5-7300U,8GB DDR4,256GB SSD,WIN11,TOUCH,jó akku
- Lenovo ThinkPad T480s,FHD,14,i5-7300U,8GB DDR4,256GB SSD,WIN11,TOUCH
- Gyári DELL, HP, LENOVO,Asus,Fujitsu laptop töltők, 27% ÁFA
- Apple iPhone 16 Pro Max 256GB Desert Titanium használt, karcmentes 95% akku (344 ciklus) 6 hó
- Dell USB-C dokkolók: (K20A) WD19/ WD19S/ WD19DC + 130W, 180W, 240W töltők
- Hp, Dell, Lenovo gyári 65W USB-C / Type-C töltők, tápegységek
- HIBÁTLAN iPhone 15 128GB Pink-1 ÉV GARANCIA - Kártyafüggetlen, MS4443
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Átrágva a jegyzetetek/fórumokat arra jutottam hogy ez egy switch-case-es eset. Sikerült elérnem, hogy egy adott betű lenyomására egy adott szöveget írjon ki.
viszont amit el szeretnék érni hogy miután pl a "k" betűt lenyomtam és kiírta az árát meg a nevét, ne lépjen ki, hanem térjen rá a FIZETETT állapotra(ott természetesen más lesz, csak bírtam neki valamit, hogy lássam átugrik-e). 
