Ú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!
- Háztartási gépek
- S.T.A.L.K.E.R.: Shadow of Chernobyl
- A legrosszabb CPU-k – az ExtremeTech szerint
- Óra topik
- PlayerUnknown’s Battlegrounds
- Kerékpárosok, bringások ide!
- Gaming notebook topik
- exHWSW - Értünk mindenhez IS
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Alkoholista nevelde
- További aktív témák...
- Akció! ÚJ akku! Lenovo ThinkPad X1 Extreme Gen2 i7-9850H 32GB 1000GB GTX1650 500nit 4K UHD 1 év gar
- B760 / B660 / Z690 / Z790 ATX alaplapot keresek DDR4-es foglalattal
- Sony Cyber-shot DSC-RX100 IV digitális prémium kompakt fényképezőgép
- Precision 3591 15.6" FHD IPS Ultra 9 185H RTX 2000 Ada 32GB 512GB NVMe gar
- Lenovo L13 G3 i5-1235u 16Gb 256Gb NVMe, Magyar bill, számla, garancia
- LG 27GS60QC-B - 27" Ívelt - 2560x1440 - 180Hz 1ms - AMD FreeSync - Bontatlan - 2 Év Gyári Garancia
- Sosemhasznált! HP OmniBook 5 i3-1315U 8GB 1TB 16" FHD+ Gar.: 1 év
- iMac 16,2 i5-5675R 8GB RAM 1TB SSD NEM FUSION DRIVE!!!
- 146 - 147 - 166 - 167 - 168 - 169 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
- Bomba ár! HP EliteBook Folio 1040 G3 - i5-G6 I 8GB I 256SSD I 14" FHD I Magyar I Cam I W11 I Gar!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Á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). 

