Largest proper divisor of n: Difference between revisions
Content added Content deleted
(EasyLang) |
(Added Applesoft BASIC, Chipmunk Basic, Gambas, Minimal BASIC, MSX Basic, Quite BASIC, Tiny BASIC and XBasic) |
||
Line 538: | Line 538: | ||
27 41 1 42 17 43 29 44 1 45 |
27 41 1 42 17 43 29 44 1 45 |
||
13 46 31 47 19 48 1 49 33 50</pre> |
13 46 31 47 19 48 1 49 33 50</pre> |
||
==={{header|Applesoft BASIC}}=== |
|||
{{works with|Quite BASIC}} |
|||
Solution [[#Quite_BASIC|Quite BASIC]] work without changes. |
|||
==={{header|BASIC256}}=== |
==={{header|BASIC256}}=== |
||
Line 553: | Line 557: | ||
next i |
next i |
||
end</syntaxhighlight> |
end</syntaxhighlight> |
||
==={{header|Chipmunk Basic}}=== |
|||
{{works with|Chipmunk Basic|3.6.4}} |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="qbasic">10 print "El mayor divisor propio de n es:" |
|||
20 print chr$(10)+" 1 1"; |
|||
30 for i = 3 to 100 |
|||
40 for j = i-1 to 1 step -1 |
|||
50 if i mod j = 0 then print using "###";j; : exit for |
|||
60 next j |
|||
70 if i mod 10 = 0 then print |
|||
80 next i |
|||
90 end</syntaxhighlight> |
|||
==={{header|FreeBASIC}}=== |
==={{header|FreeBASIC}}=== |
||
Line 609: | Line 626: | ||
50 NEXT D |
50 NEXT D |
||
60 NEXT I</syntaxhighlight> |
60 NEXT I</syntaxhighlight> |
||
==={{header|Gambas}}=== |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="vbnet">Public Sub Main() |
|||
Print "El mayor divisor propio de n es:\n" |
|||
Print " 1 1"; |
|||
For i As Byte = 3 To 100 |
|||
For j As Byte = i - 1 To 1 Step -1 |
|||
If i Mod j = 0 Then |
|||
Print Format$(j, "###"); |
|||
Break |
|||
End If |
|||
Next |
|||
If i Mod 10 = 0 Then Print |
|||
Next |
|||
End</syntaxhighlight> |
|||
==={{header|Minimal BASIC}}=== |
|||
{{works with|BASICA}} |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="qbasic">100 PRINT "El mayor divisor propio de n es:" |
|||
110 PRINT |
|||
120 PRINT " 1 1 "; |
|||
130 FOR i = 3 TO 100 |
|||
140 FOR j = i-1 TO 1 STEP -1 |
|||
150 IF i-INT(i/j)*j = 0 THEN 200 |
|||
160 NEXT j |
|||
170 IF i-INT(i/10)*10 = 0 THEN 220 |
|||
180 NEXT i |
|||
190 GOTO 240 |
|||
200 PRINT j; |
|||
210 GOTO 170 |
|||
220 PRINT |
|||
230 GOTO 180 |
|||
240 END</syntaxhighlight> |
|||
==={{header|MSX Basic}}=== |
|||
{{works with|MSX BASIC|any}} |
|||
{{works with|GW-BASIC}} |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="qbasic">10 PRINT "El mayor divisor propio de n es:" |
|||
20 PRINT CHR$(10) + " 1 1"; |
|||
30 FOR I = 3 TO 100 |
|||
40 FOR J = I-1 TO 1 STEP -1 |
|||
50 IF I MOD J = 0 THEN PRINT USING "###"; J; : GOTO 70 |
|||
60 NEXT J |
|||
70 IF I MOD 10 = 0 THEN PRINT |
|||
80 NEXT I |
|||
90 END</syntaxhighlight> |
|||
==={{header|PureBasic}}=== |
==={{header|PureBasic}}=== |
||
Line 636: | Line 704: | ||
27 41 1 42 17 43 29 44 1 45 |
27 41 1 42 17 43 29 44 1 45 |
||
13 46 31 47 19 48 1 49 33 50</pre> |
13 46 31 47 19 48 1 49 33 50</pre> |
||
==={{header|Quite BASIC}}=== |
|||
{{works with|Applesoft BASIC}} |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="qbasic">100 PRINT "El mayor divisor propio de n es:" |
|||
110 PRINT : PRINT " 1 1"; |
|||
120 FOR i = 3 TO 100 |
|||
130 FOR j = i-1 TO 1 STEP -1 |
|||
140 LET a = i-INT(i/j)*j |
|||
150 IF a = 0 THEN GOTO 210 |
|||
160 IF a = 0 THEN GOTO 180 |
|||
170 NEXT j |
|||
180 IF i-INT(i/10)*10 = 0 THEN PRINT |
|||
190 NEXT i |
|||
200 END |
|||
210 IF j < 10 THEN PRINT " "; j; |
|||
220 IF j >= 10 THEN PRINT " "; j; |
|||
230 GOTO 160</syntaxhighlight> |
|||
==={{Header|Tiny BASIC}}=== |
|||
<syntaxhighlight lang="qbasic">REM Rosetta Code problem: https://rosettacode.org/wiki/Largest_proper_divisor_of_n |
|||
REM by Jjuanhdez, 05/2023 |
|||
REM Largest proper divisor of n |
|||
PRINT "El mayor divisor propio de n es:" |
|||
PRINT "" |
|||
PRINT "1" |
|||
PRINT "1" |
|||
LET I = 3 |
|||
10 IF I = 101 THEN GOTO 40 |
|||
LET J = I-1 |
|||
20 IF J = 0 THEN GOTO 30 |
|||
LET A = I-(I/J)*J |
|||
IF A = 0 THEN PRINT J |
|||
IF A = 0 THEN GOTO 30 |
|||
LET J = J-1 |
|||
GOTO 20 |
|||
30 IF I-(I/10)*10 = 0 THEN PRINT "" |
|||
LET I = I+1 |
|||
GOTO 10 |
|||
40 END |
|||
</syntaxhighlight> |
|||
==={{header|True BASIC}}=== |
==={{header|True BASIC}}=== |
||
Line 654: | Line 765: | ||
{{out}} |
{{out}} |
||
<pre>Same as FreeBASIC entry.</pre> |
<pre>Same as FreeBASIC entry.</pre> |
||
==={{header|XBasic}}=== |
|||
{{works with|Windows XBasic}} |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="qbasic">PROGRAM "progname" |
|||
VERSION "0.0000" |
|||
DECLARE FUNCTION Entry () |
|||
FUNCTION Entry () |
|||
PRINT "El mayor divisor propio de n es:\n" |
|||
PRINT " 1 1 "; |
|||
FOR i = 3 TO 100 |
|||
FOR j = i-1 TO 1 STEP -1 |
|||
IF i MOD j = 0 THEN |
|||
PRINT FORMAT$("###", j); |
|||
EXIT FOR |
|||
END IF |
|||
NEXT j |
|||
IF i MOD 10 = 0 THEN PRINT |
|||
NEXT i |
|||
END FUNCTION |
|||
END PROGRAM</syntaxhighlight> |
|||
==={{header|Yabasic}}=== |
==={{header|Yabasic}}=== |