/* GCD(a,b) */ new; cls; print gcd(12,18); proc gcd(a,b); local c; do while b/=0; c=b; b=a%b; a=c; endo; retp(a); endp;