Feladat: KSz.19 Korcsoport: 16-17 Nehézségi fok: átlagos
Füzet: 1986/január, 27 - 28. oldal  PDF file
Témakör(ök): Feladat
Hivatkozás(ok):Feladatok: 1984/szeptember: KSz.19

Írjunk olyan BASIC programot, amely az adatként beírt (legfeljebb 3 jegyű) természetes számok nevét magyar nyelven kiírja a képernyőre!

5 REM HT-1080Z

10 DATA SZAZ, KETSZAZ, HAROMSZAZ, NEGYSZAZ, OTSZAZ,

HATSZAZ, HETSZAZ,

NYOLCSZAZ, KILENCSZAZ, TÍZ, HUSZ, HARMINC, NEGYVEN, OTVEN, HATVAN,HETVEN,

NYOLCVAN, KILENCVEN, EGY, KETTO, HAROM, NEGY, OT, HAT, HET, NYOLC, KILENC

12 CLS

15 INPUT "A SZAM:"; A: IF A>999 OR A<0 OR A<>FIX (A) THEN PRINT "NEM MEGENGEDETT ERTEK": FOR I=0 TO 1000: NEXT: GOTO 15

20 B=INT (A/100): C=INT ((A‐B*100)/10): D=A‐B*100‐C*10

25 IF B=0 THEN K=8 ELSE K=9

30 FOR E=1 TO B:READ B$:NEXT:FOR F=1 TO K‐B+C:READ C$:NEXT:FOR G=1 TO 9‐C+D: READ D$:NEXT

35 IF B=0 THEN B$=" "

40 IF C=0 THEN C$=" "

45 IF C=1 AND D>0 THEN C$="TIZEN"

50 IF C=2 AND D>0 THEN C$="HUSZON"

55 IF D=0 THEN D$=" "

60 IF A=0 THEN M$="NULLA":GOTO 70

65 M$=B$+C$+D$

70 PRINT "A SZAM NEVE"; M$

75 FOR I=1 TO 1000:NEXT:PRINT:RUN
 

Lukovszky László (Vak Bottyán J. I. SZ. I.) dolgozata alapján.

 

Megjegyzés: Feladatunk értékvizsgálattal kezdődik (1 és 1000 közé essen, egész legyen, lásd a 15. sort). Karakteres beadásnál (INPUT A$) gondoskodni kell arról, hogy ne álljon meg hibaüzenettel p1. VAL-lal. Néhány helyen előfordult: DIM A(10) felesleges, ennyit a HT gép magától is elfoglal. Több ciklus használata a programot lassítja. Sok jó megoldás érkezett. A megoldás kulcsa: 30 adatban beadjuk a számok nevét és számítjuk a százasok, a tízesek és az egyesek számát.