home *** CD-ROM | disk | FTP | other *** search
/ RUN Flagazine Extra: Special 3 / run-special-3.zip / ENGELS.BAS < prev    next >
BASIC Source File  |  1989-11-24  |  2KB  |  39 lines

  1. 100 REM ENGELSE GETALLEN IN WOORDEN - MONOCHROOM
  2. 130 FOR I=0 TO 9:READ D$(I):NEXT I
  3. 140 FOR I=0 TO 9:READ T$(I):NEXT I
  4. 150 FOR I=2 TO 9:READ F$(I):NEXT I
  5. 155 CLS:KEY OFF:PRINT TAB(23) "ENGELSE GETALLEN UITSPREKEN"
  6. 160 PRINT:PRINT "Welk getal";:INPUT N$:H$=N$:GOSUB 200
  7. 170 IF VLAG=0 THEN PRINT:PRINT "Het getal ";H$;
  8. 180 IF VLAG=0 THEN PRINT " wordt in het Engels aldus uitgesproken:"
  9. 190 PRINT STRING$(80,196);:COLOR 15,0:PRINT W$:COLOR 7,0                            :PRINT STRING$(80,196);:GOTO 160
  10. 200 IF N$="" THEN END ELSE W$="":L=LEN(N$)
  11. 210 IF L>9 THEN W$="Maximaal 9 cijfers!":VLAG=1:RETURN ELSE VLAG=0
  12. 220 FOR I=1 TO L:C=ASC(MID$(N$,I,1))
  13. 230 IF C>47 AND C<58 THEN VLAG=0:NEXT I ELSE W$=                                    "Alleen decimale getallen!":VLAG=1:RETURN
  14. 240 A$="":B$="":C$=""
  15. 250 IF L<>9 THEN N$=STRING$(9-L,"0")+N$
  16. 260 G$=LEFT$(N$,3)
  17. 270 NA=VAL(G$)
  18. 280 IF NA<>0 THEN GOSUB 360:A$=X$+" Million "
  19. 290 G$=MID$(N$,4,3)
  20. 300 NB=VAL(G$)
  21. 310 IF NB<>0 THEN GOSUB 360:B$=X$+" Thousand "
  22. 320 G$=MID$(N$,7,3)
  23. 330 NC=VAL(G$)
  24. 340 IF NC=0 THEN IF NA=0 AND NB=0 THEN C$=" Zero " ELSE                             C$="" ELSE GOSUB 360:C$=X$
  25. 350 W$=A$+B$+C$:RETURN
  26. 360 X$=""
  27. 370 FOR I=1 TO 3:D(I)=VAL(MID$(G$,I,1)):NEXT I
  28. 400 IF D(2)=0 AND D(3)=0 THEN D$=" Hundred " ELSE D$=" Hundred "
  29. 410 IF D(1)<>0 THEN X$=D$(D(1))+D$
  30. 420 IF D(2)=0 AND D(1)=0 THEN X$=D$(D(3)):RETURN
  31. 430 IF D(2)=1 THEN X$=X$+T$(D(3)):RETURN ELSE X$=X$+F$(D(2))
  32. 440 IF D(3)<>0 AND D(2)<>0 THEN X$=X$+"-"+D$(D(3)) ELSE IF                          D(3)=0 THEN RETURN ELSE X$=X$+D$(D(3))
  33. 450 RETURN
  34. 470 DATA "Zero","One","Two","Three","Four","Five"
  35. 480 DATA "Six","Seven","Eight","Nine","Ten"
  36. 490 DATA "Eleven","Twelve","Thirteen","Fourteen","Fifteen"
  37. 500 DATA "Sixteen","Seventeen","Eightteen","Nineteen","Twenty"
  38. 510 DATA "Thirty","Fourty","Fifty","Sixty","Seventy","Eighty","Ninety"
  39.