Leprogramozná nekem valaki az alábbi feladatot C nyelven?
Egy virágoskert minden parcellájában egy-egy növénz található. Ez a növény az első héten kikel (K), a második héten megnő (N), a harmadik héten virágzik (V), a negyedik héten termést érlel (T), az ötödik héten elpusztul (E), de a nyomában a következő héten kikel egy új növény.
Írj programot, amely beolvassa a kert virágai kezdőéllapotát, majd megadja, hogy hányadik héten szedhetnénk a legtöbb virágot és mennyit! Ha több héten is ugyanannyi virágot szedhetünk, akkor a legkorábbi hetet adjuk meg.
A program először olvassa be, hogy a kertben a virágok hány sorban (1<=SOR<=20) és hány oszlopban (1<=OSZLOP<=20) helyezkednek el, majd pedig soronként olvassa be az egyes növények állapotát(K,N,V,T,e betűk valamelyike)!
Példa:
Bemenet: Kimenet:
2 3 3 3
EKN
EKK
1.hét 2. hét 3. hét 4. hét 5. hét 6.hét
EKN KNV NVT VTE TEK EKN
EKK KNN NVV VTT TEE EKK
Ezt kaptam parciális vizsgára és nem tudtam vele megbírkózni. Kezdő csoportban vagyok. Előre is kösz annak, aki segít.
A példád nem nagyon látszik...
Nem fogom neked leprogramozni, de itt egy ötlet a megoldásra:
Veszel egy mártixot (2 dimenziós tömböt), amiben letárolsz számokat. 1 byte-os, mind.
Sorban így vannak az állapotok: K N V T E
Csak a V állapotban lévőket tudod leszedni, így a sort permutálva a következőt kapjuk: T E K N V
(A sor permutálható, mivel a virág pusztulása után azonnal kinő egy másik.)
Ebből látszik, hogy a T állapotban lévők az 5. héten szedhetők, az E állapotban lévők a 4. héten, a K állapotban lévők a 3. héten ... a V állapotosok pedig az 1. héten. (én 0. hétnek mondtam volna, de a példádból azt szűrtem, le, hogy az első)
innen már egyszerű az egész:
Veszel egy tömböt, ami öt elemű, alapból 0 minden értéke. Minden beolvasott karakterre megfelelően növeled a tömb értékeit, az előbb leírtak alapján.
pl. T-re növeled a tömb 5ödik elemét, E-re a negyedik elemét, K-ra a 3.-at.... stb...
Majd a tömbben megkeresed a maximumot, és annak sorszámát. A keresést előlről hátra végzed, szigorú összehasonlítással (> és NEM >=). Majd kiírod a kapott értékeket.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!