Module is a predefined array and globally decleared
Say values of a[0]=7
a[1]=8
a[2]=14
a[3]=16
a[4]=9
Now,
At begin i=1,j=3
Now, calling procedure unknown where b=8,c=16
a[1]=1,a[2]=2,a[3]=3,a[4]=4,a[5]=5 // As here no array declared, this array value will change global array value
b,c is assigned as 0.
a[3]=11,a[1]=11
a[1]=11,a[2]=2,a[3]=11,a[4]=4,a[5]=5
Next line all are squaring
a[1]=121,a[2]=4,a[3]=121,a[4]=16,a[5]=25
b is overwrite with value 5, c with value 6
Now, it is returning to main b=5,c=6
a[1]=5,a[3]=6 //main() have no array defined, so changing global array value
Global array now containing 121,5,121,6,25
In main it is printing 121,5,121,6,25