Two simple loops with identical function: i := 0 while i < 5 do begin i := i + 1; writeln(i) end; is same as: i := 1 while i <= 5 do begin writeln(i) i := i + 1; end; Sample outptut (from either): >1 >2 >3 >4 >5 Program to find fence shape to maximaize area. Fence next to wall; what is largest area for 24' of fence? Build Dog lot x | ********| * | * | y * | * | * | * | ********| x | {leng = 2x + y} program fence; var leng, area, x, y: real; begin leng := 24.0; x := 0; y := leng -2*x; writeln('Fence Optimization'); writeln(' x y area'); while y >= 0.0 do begin area := x * y; writeln(x:6:2, y:6:2, area:7:2); x := x + 1.0; y := leng -2.0*x; end; readln; end. Sample Output: >Fence Optimization > x y area > 0.00 24.00 0.00 > 1.00 22.00 22.00 > 2.00 20.00 40.00 > 3.00 18.00 54.00 > 4.00 16.00 64.00 > 5.00 14.00 70.00 > 6.00 12.00 72.00 > 7.00 10.00 70.00 > 8.00 8.00 64.00 > 9.00 6.00 54.00 > 10.00 4.00 40.00 > 11.00 2.00 22.00 > 12.00 0.00 0.00 Maximum is actually found by inspection. could have program find it.