Hogy kell ezt leprogramozni?
Helyettesítsük az 1-9 számjegyekkel az autóbuszjegyen található lyukasztási helyeket! Írj programot, amely kiírja az összes olyan buszjegy "kódját", amely három helyen van kilyukasztva!
Tehát ha jól értem 3 különböző számot kell 1...9-esekből kiírni.
Ez most (n alatt k) vagy 9*8*7 db szám lesz?
Pszeudo is jó
#1 Az milyen buszjegy, amin pl. három 1-es lyuk van? :))
Kérdező, ami neked kell, az az ismétlés nélküli kombináció.
Második oldal teteje.
Csinálhatod azt, hogy végigmész az összes háromjegyű számon, de minden számnál ellenőrizni kell, hogy ne legyen benne nulla, és hogy egy számjegy csak egyszer szerepeljen benne. (Nincs 111, sem 455.) Továbbá a sorrend sem számít, tehát pl. az 123 és 132 nem két külön lehetőség.
Vagy inkább három egymásba ágyazott ciklus, mindhárom 1-9 tartományban léptet egy-egy változót. Ezzel a nulla számjegy ellenőrzést megúsztuk, a többit meg talán kicsit könnyebb, mert eleve külön változókban vannak a számjegyek.
Vagy Gugli: ismétlés nélküli kombináció algoritmus
Rájöttem, köszönöm! Megihlettek a válaszok főleg a 3. Még csak az ismétlés nélküli kombináció algoritmusa sem kellett.
Ennyi volt:
ciklus a = 1...9-ig
ciklus b = 1...9-ig
ciklus c = 1...9-ig
ha a != b és b != c és a != c
ki: a,b,c
Jó az irány, de ez így még külön kiírja pl. a 123 és 132 számokat, de az ugyanaz a buszjegy kétszer.
Esetleg megteheted, hogy csak azokat írja ki, ahol a < b és b < c. (Pl. a 123-ra igaz, de a 132-re nem.)
Így már nem lesz benne ismétlődés:
ciklus a = 1...9-ig
ciklus b = a+1...9-ig
ciklus c = b+1...9-ig
ki: a,b,c
Igen, köszönöm :)
ment a zöld
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, 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!