% Loops can appear within loops
% The following computes
% 	1^1 + 2^2 + 3^3 + ... + n^n

var n:    int;
var i,j:  int
var sum1: int := 0
var sum2: int := 0

put "Enter a positive whole number: " ..
get n
i := 1
loop
	exit when i>n
	j := 1
	sum2 := i;
	loop
		exit when j >= i
		sum2 := sum2*i
		j := j + 1
	end loop
	i := i+1
	sum1 := sum1 + sum2
end loop
put sum1
