#### Tutorials > Julia Programming: a Hands-on Tutorial

# For Loops

**Organizing our code with simple loops, nested for loops, and parallel for loops.**

## Simple For Loop

The most basic way to structure computations is by using a for loop. In Julia, the basic syntax of a for loop is

```
for iterator in range
execute_statements(iterator)
end
```

As an example, let’s evaluate the sum of the first 100,000 terms of the quadratic series.

```
x=0
for k in 1:100000
x = x + (1/k)^2
end
```

We get the following output

```
1.6449240667982423
```

## Nested For Loops

It is very common to have nested for loops, and we would normally code them using something like:

```
for i in 1:3
for j in 1:3
print("i=", i, " j=", j, "\n")
end
end
```

This can get hard to read when we have more than two nested loops. A nice syntax we can rely on in this case is the following:

```
for i in 1:3, j in 1:3
print("i=", i, " j=", j, "\n")
end
```

Additionally, we can resort to the even nicer:

```
for i ∈ 1:3, j ∈ 1:3
print("i=", i, " j=", j, "\n")
end
```

## Break and Continue Statement

The use of break and continue statements is somewhat contrived, and could be considered bad programming practice by some people. However, I believe break and continue statements are harmless when used carefully, and could even be preferable in some cases.

### Break Statement Example

The Break statement is used to exit a for-loop before it has completed all its iterations, usually after checking that a certain condition is met.

For example, in a numerical algorithm, we could be iterating until a certain number of iterations is met, but we could interrupt the computations if some convergence criteria is met.

Let’s compute the sum of a series to include a break statement as follows:

```
x=0
for k in 1:100000
term = (1/k)^2
x = x + term
if (abs(term) < 1e-10) break end
end
```

While its possible to rewrite the above code with the sole purpose of avoiding the use of the break statement, we might need to write something like this:

```
x=0
iter = 0
while ( iter == 0 || abs(term) < 1e-10) && (iter < 100000)
term = (1/k)^2
x = x + term
iter = iter + 1
end
```

### Continue Ctatement Example

The Continue statement is used to exit the present iteration of a for-loop, and to continue with the next iteration immediately.

A reasonable use-case for the continue statement is as some sort of precondition-test for a bad argument passed to a loop.

For example, let’s say we have a function that sums the inverses of a set of random numbers. Logically, we would like to avoid summing `1/0`

, as that would result in `Inf`

and could lead to errors.

One way to avoid this undesired input is to use a continue statement.

```
numbers = randn(100)
sum = 0
for k in numbers
if (k==0) continue end
sum = sum + 1/k
end
```

One alternative, without the continue statement, could be as follows:

```
numbers = randn(100)
sum = 0
for k in numbers
if (k != 0)
sum = sum + 1/k
end
end
```

In some cases, when we have to check for multiple conditions, the presence of multiple nested-if statements could turn out quite annoying, and the continue statement could be preferred.

## Ask me a question or send me your comments!

Don't hesitate to ask me any question about the topics I cover on this blog!