[COLOR=#a020f0]program[/color] loop_step
[COLOR=#0000ff]! Using real step size in loops[/color]
[COLOR=#2e8b57][b]implicit[/b][/color] [COLOR=#2e8b57][b]none[/b][/color]
[COLOR=#2e8b57][b] real[/b][/color] :: x, x_min, x_max, step
[COLOR=#2e8b57][b]integer[/b][/color] :: i, n
x_min [COLOR=#804040][b]=[/b][/color] [COLOR=#ff00ff]0[/color]
x_max [COLOR=#804040][b]=[/b][/color] [COLOR=#ff00ff]1[/color]
step [COLOR=#804040][b]=[/b][/color] [COLOR=#ff00ff]0.1[/color]
[COLOR=#6a5acd]10[/color] [COLOR=#804040][b]format[/b][/color](i2 a6 [COLOR=#008080]f3.1[/color])
[COLOR=#804040][b]write[/b][/color] ([COLOR=#804040][b]*[/b][/color],[COLOR=#804040][b]*[/b][/color]) [COLOR=#ff00ff]'Using DO loop with control variable:'[/color]
x [COLOR=#804040][b]=[/b][/color] x_min
n [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]nint[/color]((x_max [COLOR=#804040][b]-[/b][/color] x)[COLOR=#804040][b]/[/b][/color]step)
[COLOR=#804040][b]do[/b][/color] i[COLOR=#804040][b]=[/b][/color][COLOR=#ff00ff]1[/color], n[COLOR=#804040][b]+[/b][/color][COLOR=#ff00ff]1[/color]
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]10[/color]) i, [COLOR=#ff00ff]". x = "[/color], x
x [COLOR=#804040][b]=[/b][/color] i[COLOR=#804040][b]*[/b][/color]step
[COLOR=#804040][b]end do[/b][/color]
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#804040][b]*[/b][/color])
[COLOR=#804040][b]write[/b][/color] ([COLOR=#804040][b]*[/b][/color],[COLOR=#804040][b]*[/b][/color]) [COLOR=#ff00ff]'Using DO loop with exit on condition:'[/color]
x [COLOR=#804040][b]=[/b][/color] x_min
i [COLOR=#804040][b]=[/b][/color] [COLOR=#ff00ff]1[/color]
[COLOR=#804040][b]do[/b][/color]
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]10[/color]) i, [COLOR=#ff00ff]". x = "[/color], x
x [COLOR=#804040][b]=[/b][/color] x [COLOR=#804040][b]+[/b][/color] step
i [COLOR=#804040][b]=[/b][/color] i [COLOR=#804040][b]+[/b][/color] [COLOR=#ff00ff]1[/color]
[COLOR=#804040][b]if[/b][/color] (x [COLOR=#804040][b]>[/b][/color] (x_max [COLOR=#804040][b]+[/b][/color] step)) [COLOR=#804040][b]then[/b][/color]
[COLOR=#804040][b]exit[/b][/color]
[COLOR=#804040][b]end if[/b][/color]
[COLOR=#804040][b]end do[/b][/color]
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#804040][b]*[/b][/color])
[COLOR=#804040][b]write[/b][/color] ([COLOR=#804040][b]*[/b][/color],[COLOR=#804040][b]*[/b][/color]) [COLOR=#ff00ff]'Using DO WHILE loop with condition:'[/color]
x [COLOR=#804040][b]=[/b][/color] x_min
i [COLOR=#804040][b]=[/b][/color] [COLOR=#ff00ff]1[/color]
[COLOR=#804040][b]do[/b][/color] [COLOR=#804040][b]while[/b][/color] (x [COLOR=#804040][b]<[/b][/color] (x_max [COLOR=#804040][b]+[/b][/color] step))
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]10[/color]) i, [COLOR=#ff00ff]". x = "[/color], x
x [COLOR=#804040][b]=[/b][/color] x [COLOR=#804040][b]+[/b][/color] step
i [COLOR=#804040][b]=[/b][/color] i [COLOR=#804040][b]+[/b][/color] [COLOR=#ff00ff]1[/color]
[COLOR=#804040][b]end do[/b][/color]
[COLOR=#a020f0]end program[/color] loop_step