| .WHILE...WEND statement programming example. |
|
  QuickSCREEN       Details      Example       Contents       Index |
| ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ |
| WHILE...WEND Statement Programming Example |
|   |
| The following fragment performs a bubble sort on the array A$. |
| The second line makes the variable Exchange true by assigning |
| it a nonzero value, and thereby forces one pass through the |
| WHILE...WEND loop (this construction is unnecessary with DO...LOOP). |
| When there are no more swaps, all elements of A$ are sorted, Exchange |
| is false (equal to zero), and the program continues execution with |
| the line following WEND. |
|   |
| ' Bubble sort of array A$. |
| CONST FALSE=0, TRUE=NOT FALSE |
| DIM A$(4) |
| A$(1) = "New York" |
| A$(2) = "Boston" |
| A$(3) = "Chicago" |
| A$(4) = "Seattle" |
| Max = UBOUND(A$) |
| Exchange=TRUE           ' Force first pass through the array. |
| WHILE Exchange          ' Sort until no elements are exchanged. |
|    Exchange=FALSE |
|    ' Compare the array elements by pairs. When two are exchanged, |
|    ' force another pass by setting Exchange to TRUE. |
|    FOR I = 2 TO Max |
|       IF A$(I-1) > A$(I) THEN |
|          Exchange = TRUE |
|          SWAP A$(I - 1), A$(I) |
|       END IF |
|    NEXT |
| WEND |
| CLS |
| FOR I = 1 TO 4 |
|    PRINT A$(I) |
| NEXT I |
| END |
|   |
| Sample Output |
| Boston |
| Chicago |
| New York |
| Seattle |