FizzBuzz/Basic

Revision as of 11:48, 22 September 2015 by rosettacode>Hajo (moving GW-BASIC)
FizzBuzz/Basic is part of FizzBuzz. You may find other members of FizzBuzz at Category:FizzBuzz.

Applesoft BASIC

<lang applesoftbasic>10 DEF FN M(N) = ((A / N) - INT (A / N)) * N 20 FOR A = 1 TO 100 30 LET O$ = "" 40 IF FN M(3) = 0 THEN O$ = "FIZZ" 50 IF FN M(5) = 0 THEN O$ = O$ + "BUZZ" 60 IF O$ = "" THEN O$ = STR$ (A) 70 PRINT O$ 80 NEXT A </lang>

BASIC

Works with: QuickBasic version 4.5

If/else ladder approach

<lang qbasic>FOR A = 1 TO 100

  IF A MOD 15 = 0 THEN
     PRINT "FizzBuzz"
  ELSE IF A MOD 3 = 0 THEN
     PRINT "Fizz"
  ELSE IF A MOD 5 = 0 THEN
     PRINT "Buzz"
  ELSE
     PRINT A
  END IF

NEXT A</lang>

Concatenation approach

<lang qbasic>FOR A = 1 TO 100

  OUT$ = ""
  IF A MOD 3 = 0 THEN 
     OUT$ = "Fizz"
  END IF
  IF A MOD 5 = 0 THEN
     OUT$ = OUT$ + "Buzz"
  END IF
  
  IF OUT$ = "" THEN
     OUT$ = STR$(A)
  END IF
  PRINT OUT$

NEXT A</lang> See also: RapidQ

BBC BASIC

<lang bbcbasic> FOR number% = 1 TO 100

       CASE TRUE OF
         WHEN number% MOD 15 = 0: PRINT "FizzBuzz"
         WHEN number% MOD 3 = 0:  PRINT "Fizz"
         WHEN number% MOD 5 = 0:  PRINT "Buzz"
         OTHERWISE: PRINT ; number%
       ENDCASE
     NEXT number%</lang>

Casio BASIC

<lang>For 1→A To 100 Step 1↵ MOD(A,15)→B↵ MOD(A,3)→C↵ MOD(A,5)→D↵ ↵ B=0⇒"FIZZBUZZ"↵ B=0⇒Goto 1↵ C=0⇒"BUZZ"↵ C=0⇒Goto 1↵ D=0⇒"FIZZ"↵ D=0⇒Goto 1↵ ↵ A◢ Goto 1 ↵ Lbl 1↵ Next</lang>

GW-BASIC

<lang qbasic>10 FOR N = 1 TO 100 20 OP$ = "" 30 IF N MOD 3 = 0 THEN OP$ = "Fizz" 40 IF N MOD 5 = 0 THEN OP$ = OP$ + "Buzz" 50 IF OP$ = "" THEN PRINT N ELSE PRINT OP$ 60 NEXT N </lang>