Loops/Wrong ranges: Difference between revisions
Content added Content deleted
(Loops/Wrong ranges en BASIC256) |
(Applesoft BASIC) |
||
Line 210: | Line 210: | ||
</pre> |
</pre> |
||
=={{header|Applesoft BASIC}}== |
|||
<lang ApplesoftBasic>0 LIMIT = 10 :MAX=1E37 |
|||
10 DATA-2,2,1,NORMAL |
|||
20 DATA-2,2,0,ZERO INCREMENT |
|||
30 DATA-2,2,-1,INCREMENTS AWAY FROM STOP VALUE |
|||
40 DATA-2,2,10,FIRST INCREMENT IS BEYOND STOP VALUE |
|||
50 DATA2,-2,1,"START MORE THAN STOP: POSITIVE INCREMENT |
|||
60 DATA2,2,1,"START EQUAL STOP: POSITIVE INCREMENT |
|||
70 DATA2,2,-1,"START EQUAL STOP: NEGATIVE INCREMENT |
|||
80 DATA2,2,0,"START EQUAL STOP: ZERO INCREMENT |
|||
90 DATA0,0,0,"START EQUAL STOP EQUAL ZERO: ZERO INCREMENT |
|||
100 FOR I = 1 TO 9 |
|||
110 READ START,FINISH,INCR,COMMENT$ |
|||
120 PRINT CHR$(13)COMMENT$ |
|||
130 LAST = FINISH |
|||
140 REM D = SGN(FINISH - START) |
|||
150 REM IF D AND NOT (D = SGN(INCR)) THEN LAST = SGN(INCR)*MAX |
|||
160 PRINT TAB(5)CHR$(91)" "MID$(" ",(START<0)+1)START" TO "MID$(" ",(FINISH<0)+1)FINISH" STEP "MID$(" ",(INCR<0)+1)INCR" ] "; |
|||
170 COUNT = 0 |
|||
180 PRINT MID$(" ",(START<0)+1); |
|||
190 FOR J = START TO LAST STEP INCR |
|||
200 PRINT MID$(" ",(COUNT=0)+1)J; |
|||
210 IF COUNT < LIMIT THEN COUNT = COUNT + 1 : NEXT J |
|||
220 IF COUNT = LIMIT THEN PRINT " ... ";:if ABS(LAST) = MAX THEN PRINT MID$("-",SGN(LAST)+2,1)"INFINITY"; |
|||
230 NEXT I</lang> |
|||
{{out}} |
|||
<pre> |
|||
NORMAL |
|||
[ -2 TO 2 STEP 1 ] -2 -1 0 1 2 |
|||
ZERO INCREMENT |
|||
[ -2 TO 2 STEP 0 ] -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 ... |
|||
INCREMENTS AWAY FROM STOP VALUE |
|||
[ -2 TO 2 STEP -1 ] -2 |
|||
FIRST INCREMENT IS BEYOND STOP VALUE |
|||
[ -2 TO 2 STEP 10 ] -2 |
|||
START MORE THAN STOP: POSITIVE INCREMENT |
|||
[ 2 TO -2 STEP 1 ] 2 |
|||
START EQUAL STOP: POSITIVE INCREMENT |
|||
[ 2 TO 2 STEP 1 ] 2 |
|||
START EQUAL STOP: NEGATIVE INCREMENT |
|||
[ 2 TO 2 STEP -1 ] 2 |
|||
START EQUAL STOP: ZERO INCREMENT |
|||
[ 2 TO 2 STEP 0 ] 2 |
|||
START EQUAL STOP EQUAL ZERO: ZERO INCREMENT |
|||
[ 0 TO 0 STEP 0 ] 0 |
|||
</pre> |
|||
=={{header|AWK}}== |
=={{header|AWK}}== |
||
<lang AWK> |
<lang AWK> |