FizzBuzz/Basic: Difference between revisions

Add an example for TI Extended BASIC; condense the regular TI BASIC example
mNo edit summary
imported>Tth
(Add an example for TI Extended BASIC; condense the regular TI BASIC example)
 
(26 intermediate revisions by 6 users not shown)
Line 1:
{{collection|FizzBuzz}}
 
=={{header|=Applesoft BASIC}}===
<langsyntaxhighlight lang="applesoftbasic">10 DEF FN M(N) = ((A / N) - INT (A / N)) * N
20 FOR A = 1 TO 100
30 LET O$ = ""
Line 9:
60 IF O$ = "" THEN O$ = STR$ (A)
70 PRINT O$
80 NEXT A</syntaxhighlight>
</lang>
 
===ASIC===
=={{header|BaCon}}==
<syntaxhighlight lang="basic">
<lang freebasic>' FizzBuzz
REM FizzBuzz
CLS
FOR I = 1 TO 100
IMOD15 = I MOD 15
IF IMOD15 = 0 THEN
PRINT "FizzBuzz"
ELSE
IMOD5 = I MOD 5
IF IMOD5 = 0 THEN
PRINT "Buzz"
ELSE
IMOD3 = I MOD 3
IF IMOD3 = 0 THEN
PRINT "Fizz"
ELSE
PRINT I
ENDIF
ENDIF
ENDIF
REM ASIC uses only 25 screen lines.
REM After the 25th line, printing starts from the top.
REM So...
C = CSRLIN
IF C > 20 THEN
PRINT "<Press a key to continue>"
LOOP:
X$=INKEY$
IF X$="" THEN LOOP:
CLS
ENDIF
NEXT I
END</syntaxhighlight>
 
===BaCon===
<syntaxhighlight lang="freebasic">' FizzBuzz
FOR i = 1 TO 100
msg$ = IIF$(MOD(i, 3), "", "Fizz")
Line 19 ⟶ 54:
PRINT IIF$(msg$ = "", STR$(i), msg$), " ";
NEXT
PRINT</langsyntaxhighlight>
 
{{out}}
Line 30 ⟶ 65:
Fizz 88 89 FizzBuzz 91 92 Fizz 94 Buzz Fizz 97 98 Fizz Buzz</pre>
 
=={{header|=BASIC}}===
{{works with|QuickBasic|4.5}}
====If/else ladder approach====
<langsyntaxhighlight lang="qbasic">FOR A = 1 TO 100
IF A MOD 15 = 0 THEN
PRINT "FizzBuzz"
Line 43 ⟶ 78:
PRINT A
END IF
NEXT A</langsyntaxhighlight>
 
 
====Concatenation approach====
<langsyntaxhighlight lang="qbasic">FOR A = 1 TO 100
OUT$ = ""
 
Line 62 ⟶ 98:
 
PRINT OUT$
NEXT A</langsyntaxhighlight>
See also: [[#RapidQ|RapidQ]]
 
===Basic09===
=={{header|BBC BASIC}}==
<syntaxhighlight lang="Basic09">PROCEDURE FizzBuzz
<lang bbcbasic> FOR number% = 1 TO 100
DIM n:INTEGER
 
FOR n=1 to 100
IF MOD(n,15)=0 THEN
PRINT "FizzBuzz"
ELSE
IF MOD(n,3)=0 THEN
PRINT "Fizz"
ELSE
IF MOD(0,5)=0 THEN
PRINT "Buzz"
ELSE
PRINT n
ENDIF
ENDIF
ENDIF
NEXT n
END</syntaxhighlight>
 
 
===BASIC256===
<syntaxhighlight lang="freebasic">
for number = 1 to 100
if number mod 15 = 0 then
print "FizzBuzz"
else
if number mod 3 = 0 then
print "Fizz"
else
if number mod 5 = 0 then
print "Buzz"
else
print number
end if
end if
end if
next number
end</syntaxhighlight>
 
 
===BBC BASIC===
<syntaxhighlight lang="bbcbasic"> FOR number% = 1 TO 100
CASE TRUE OF
WHEN number% MOD 15 = 0: PRINT "FizzBuzz"
Line 73 ⟶ 151:
OTHERWISE: PRINT ; number%
ENDCASE
NEXT number%</langsyntaxhighlight>
 
=={{header|=Casio BASIC}}===
<syntaxhighlight lang="basic">For 1→A To 100 Step 1↵
MOD(A,15)→B↵
MOD(A,3)→C↵
Line 92 ⟶ 170:
Lbl 1↵
Next</langsyntaxhighlight>
 
===Commodore BASIC===
=={{header|FreeBASIC}}==
{{works with|Commodore BASIC|3.5}}
<lang freebasic>'FreeBASIC
<syntaxhighlight lang="basic">
10 REM FIZZBUZZ
20 FOR I=1 TO 100
30 IF INT(I/15)*15=I THEN PRINT "FIZZBUZZ":GOTO 70
40 IF INT(I/3)*3=I THEN PRINT "FIZZ":GOTO 70
50 IF INT(I/5)*5=I THEN PRINT "BUZZ":GOTO 70
60 PRINT I
70 NEXT I
80 END</syntaxhighlight>
See also [[#Minimal BASIC|Minimal BASIC]].
 
===Chipmunk Basic===
{{works with|Chipmunk Basic|3.6.4}}
{{works with|QBasic}}
{{works with|GW-BASIC}}
{{works with|Just BASIC}}
{{works with|MSX Basic}}
====If/else ladder approach====
<syntaxhighlight lang="qbasic">10 cls
20 for n = 1 to 100
30 if n mod 15 = 0 then print "FizzBuzz" else if n mod 3 = 0 then print "Fizz" else if n mod 5 = 0 then print "Buzz" else print n
40 next n
50 end</syntaxhighlight>
 
====Concatenation approach====
<syntaxhighlight lang="qbasic">10 cls
20 for n = 1 to 100
30 op$ = ""
40 if n mod 3 = 0 then op$ = "Fizz"
50 if n mod 5 = 0 then op$ = op$+"Buzz"
60 if op$ = "" then print n else print op$
70 next n
80 end</syntaxhighlight>
 
===Craft Basic===
{{works with|Craft Basic}}
<syntaxhighlight lang="basic">for i = 1 to 100
 
if i % 15 = 0 then
 
print "FizzBuzz"
 
else
 
if i % 3 = 0 then
 
print "Fizz"
 
else
 
if i % 5 = 0 then
 
print "Buzz"
 
else
 
print i
 
endif
 
endif
 
endif
 
next i</syntaxhighlight>
{{out| Output}}<pre>1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz Fizz 22 23 Fizz Buzz 26 Fizz 28 29 FizzBuzz 31 32 Fizz 34 Buzz Fizz 37 38 Fizz Buzz 41 Fizz 43 44 FizzBuzz 46 47 Fizz 49 Buzz Fizz 52 53 Fizz Buzz 56 Fizz 58 59 FizzBuzz 61 62 Fizz 64 Buzz Fizz 67 68 Fizz Buzz 71 Fizz 73 74 FizzBuzz 76 77 Fizz 79 Buzz Fizz 82 83 Fizz Buzz 86 Fizz 88 89 FizzBuzz 91 92 Fizz 94 Buzz Fizz 97 98 Fizz Buzz </pre>
 
===FreeBASIC===
<syntaxhighlight lang="freebasic">'FreeBASIC
Dim As ULong n
 
Line 112 ⟶ 259:
Next n
 
sleep</langsyntaxhighlight>
 
==={{header|GW-BASICFTCBASIC}}===
<syntaxhighlight lang="basic">rem uses carry command to perform modulus
<lang qbasic>10 FOR N = 1 TO 100
rem uses flag variable for elseif structure
 
define i = 0, f = 0, r = 0
 
do
 
let i = i + 1
let f = 1
 
let r = i / 15
carry r
 
if r = 0 then
 
let f = 0
print "FizzBuzz"
 
endif
 
let r = i / 3
carry r
 
if r = 0 and f = 1 then
 
let f = 0
print "Fizz"
 
endif
 
let r = i / 5
carry r
 
if r = 0 and f = 1 then
 
let f = 0
print "Buzz"
 
endif
 
if f = 1 then
 
print i
 
endif
 
loop i < 100
 
pause
end</syntaxhighlight>
 
===GW-BASIC===
<syntaxhighlight 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</syntaxhighlight>
</lang>
 
=={{header|=IS-BASIC}}===
<langsyntaxhighlight ISlang="is-BASICbasic">100 PROGRAM "Fizzbuzz.bas"
110 FOR I=1 TO 100
120 IF MOD(I,15)=0 THEN
Line 135 ⟶ 333:
190 PRINT I
200 END IF
210 NEXT</langsyntaxhighlight>
 
=={{header|=Liberty BASIC}}===
<langsyntaxhighlight lang="lb">for i = 1 to 100
select case
case i mod 15 = 0
Line 149 ⟶ 347:
print i
end select
next i</langsyntaxhighlight>
 
===Minimal BASIC===
{{works with|Commodore BASIC|3.5}}
{{works with|MSX BASIC|all}}
{{works with|Nascom ROM BASIC|4.7}}
<syntaxhighlight lang="gwbasic">
10 REM FizzBuzz
20 FOR I = 1 TO 100
30 IF INT(I/15)*15 <> I THEN 60
40 PRINT "FizzBuzz"
50 GOTO 130
60 IF INT(I/3)*3 <> I THEN 90
70 PRINT "Fizz"
80 GOTO 130
90 IF INT(I/5)*5 <> I THEN 120
100 PRINT "Buzz"
110 GOTO 130
120 PRINT I
130 NEXT I
140 END</syntaxhighlight>
 
==={{header|MSX Basic}}===
<syntaxhighlight lang="qbasic">10 CLS
20 FOR N = 1 TO 100
30 IF N MOD 15 = 0 THEN PRINT "FizzBuzz" ELSE IF N MOD 3 = 0 THEN PRINT "Fizz" ELSE IF N MOD 5 = 0 THEN PRINT "Buzz" ELSE PRINT N
40 NEXT N
50 END</syntaxhighlight>
See also [[#Minimal BASIC|Minimal BASIC]], [[#Chipmunk_Basic|Chipmunk Basic]].
 
==={{header|Palo Alto Tiny BASIC}}===
<syntaxhighlight lang="basic">
10 REM FIZZBUZZ
20 FOR I=1 TO 100
30 IF (I/15)*15=I PRINT "FIZZBUZZ";GOTO 70
40 IF (I/3)*3=I PRINT "FIZZ";GOTO 70
50 IF (I/5)*5=I PRINT "BUZZ";GOTO 70
60 PRINT I
70 NEXT I
80 STOP
</syntaxhighlight>
{{out}}
<pre>
1
2
FIZZ
4
BUZZ
FIZZ
7
8
FIZZ
BUZZ
11
FIZZ
13
14
FIZZBUZZ
</pre>
...
<pre>
91
92
FIZZ
94
BUZZ
FIZZ
97
98
FIZZ
BUZZ
</pre>
 
=={{header|=PureBasic}}===
<langsyntaxhighlight lang="purebasic">OpenConsole()
For x = 1 To 100
If x%15 = 0
Line 165 ⟶ 433:
EndIf
Next
Input()</lang>
CloseConsole()</syntaxhighlight>
 
==={{header|Quite BASIC}}===
====If/else ladder approach====
<syntaxhighlight lang="qbasic">10 CLS
20 FOR n = 1 TO 100
30 IF n % 15 = 0 THEN PRINT "FizzBuzz" ELSE IF n % 3 = 0 THEN PRINT "Fizz" ELSE IF n % 5 = 0 THEN PRINT "Buzz" ELSE PRINT n
40 NEXT n
50 END</syntaxhighlight>
 
====Concatenation approach====
<syntaxhighlight lang="qbasic">10 CLS
20 FOR n = 1 TO 100
30 LET o$ = ""
40 IF n % 3 = 0 THEN LET o$ = "Fizz"
50 IF n % 5 = 0 THEN LET o$ = o$+"Buzz"
60 IF o$ = "" THEN PRINT n ELSE PRINT o$
70 NEXT n
80 END</syntaxhighlight>
 
=={{header|=REALbasic}}===
<langsyntaxhighlight lang="vb"> For i As Integer = 1 To 100
If i mod 3 = 0 And i mod 5 = 0 Then
Print("FizzBuzz")
Line 178 ⟶ 465:
Print(Str(i))
End If
Next</langsyntaxhighlight>
An alternative syntax:
<syntaxhighlight lang="vb">
<lang vb>
For i As Integer = 1 To 100
Select Case True
Line 192 ⟶ 479:
Print(Str(i))
End Select
Next</langsyntaxhighlight>
 
=={{header|Ring}}=Run BASIC===
<syntaxhighlight lang="runbasic">for i = 1 to 100
<lang ring>
for n = 1 to 20
if n % 15 = 0 see "" + n + " = " + "FizzBuzz" + nl loop
but n % 3 = 0 see "" + n + " = " + "Fizz"+ nl
but n % 5 = 0 see "" + n + " = " + "Buzz" + nl
else see "" + n + " = " + n + nl ok
next
</lang>
Output:
<pre>
1 = 1
2 = 2
3 = Fizz
4 = 4
5 = Buzz
6 = Fizz
7 = 7
8 = 8
9 = Fizz
10 = Buzz
11 = 11
12 = Fizz
13 = 13
14 = 14
15 = FizzBuzz
16 = 16
17 = 17
18 = Fizz
19 = 19
20 = Buzz
</pre>
 
=={{header|Run BASIC}}==
<lang runbasic>for i = 1 to 100
print i;
if (i mod 15) = 0 then print " FizzBuzz";
Line 234 ⟶ 488:
if (i mod 5) = 0 then print " Buzz";
print
next i</langsyntaxhighlight>
 
=={{header|=tbas}}===
<langsyntaxhighlight lang="qbasic">FOR i = 1 TO 100
LET SHOW$ = ""
IF MOD(i,3) = 0 THEN
Line 250 ⟶ 504:
PRINT SHOW$;" ";
NEXT</langsyntaxhighlight>
 
=={{header|=TI-83 BASIC}}===
<langsyntaxhighlight lang="ti83b">PROGRAM:FIZZBUZZ
For(I,1,100
I
Line 263 ⟶ 517:
"FIZZBUZZ
Disp Ans
:End</langsyntaxhighlight>
 
===TI-99/4a TI BASIC===
<syntaxhighlight lang="ti-99/4abasic">10 DIM S$(3)
20 S$(1)="Fizz"
30 S$(2)="Buzz"
40 S$(3)="FizzBuzz"
50 FOR I = 1 TO 100
60 X=ABS((I/3=INT(I/3))+(I/5=INT(I/5))*2)
70 IF X=0 THEN 100
80 PRINT S$(X)
90 GOTO 110
100 PRINT I
110 NEXT I
120 END
</syntaxhighlight>
 
===TI-99/4a TI Extended BASIC===
<syntaxhighlight lang="ti-99/4axb">10 FOR I = 1 TO 100
20 IF I/3=INT(I/3) THEN PRINT "Fizz";
30 IF I/5=INT(I/5) THEN PRINT "Buzz";
40 IF I/3<>INT(I/3) AND I/5<>INT(I/5) THEN PRINT I;
50 PRINT
60 NEXT I
</syntaxhighlight>
 
===Tiny BASIC===
<syntaxhighlight lang="tinybasic">
LET I=1
10 IF (I/15)*15<>I THEN GOTO 20
PRINT "FizzBuzz"
GOTO 100
20 IF (I/3)*3<>I THEN GOTO 30
PRINT "Fizz"
GOTO 100
30 IF (I/5)*5<>I THEN GOTO 40
PRINT "Buzz"
GOTO 100
40 PRINT I
100 LET I=I+1
IF I<=100 THEN GOTO 10
END</syntaxhighlight>
 
===True BASIC===
<syntaxhighlight lang="qbasic">
FOR number = 1 TO 100
IF MOD(number, 15) = 0 then
PRINT "FizzBuzz"
ELSEIF MOD(number, 3) = 0 then
PRINT "Fizz"
ELSEIF MOD(number, 5) = 0 then
PRINT "Buzz"
ELSE
PRINT number
END IF
NEXT number
END</syntaxhighlight>
 
=={{header|TI-99/4a TI BASIC}}==
<lang TI-99/4abasic>10 REM **FIZZBUZZ IN TI-BASIC**
20 FOR I = 1 TO 100
30 IF ((I/15)-INT(I/15))=0 THEN 120
40 IF ((I/3)-INT(I/3))=0 THEN 80
50 IF ((I/5)-INT(I/5))=0 THEN 100
60 PRINT I
70 GOTO 140
80 PRINT "FIZZ"
90 GOTO 140
100 PRINT "BUZZ"
110 GOTO 140
120 PRINT "FIZZBUZZ"
130 GOTO 140
140 NEXT I
150 END</lang>
 
=={{header|=Visual Basic .NET}}===
'''Platform:''' [[.NET]]
{{works with|Visual Basic .NET|9.0+}}
<langsyntaxhighlight lang="vbnet">Sub Main()
For i = 1 To 100
Line 299 ⟶ 593:
Next
End Sub</langsyntaxhighlight>
 
== {{header|=XBasic}} ===
{{works with|Windows XBasic}}
<langsyntaxhighlight lang="xbasic">
PROGRAM "fizzbuzz"
VERSION "0.0001"
Line 324 ⟶ 618:
END FUNCTION
 
END PROGRAM</syntaxhighlight>
 
</lang>
 
===Yabasic===
<syntaxhighlight lang="yabasic">
for number = 1 to 100
if mod(number, 15) = 0 then
print "FizzBuzz"
elsif mod(number, 3) = 0 then
print "Fizz"
elsif mod(number, 5) = 0 then
print "Buzz"
else
print number
endif
next number
end</syntaxhighlight>
Anonymous user