diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rwxr-xr-x | build.sh | 3 | ||||
| -rw-r--r-- | rsa.f90 | 26 |
3 files changed, 30 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..89f9ac0 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +out/ diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..41058d4 --- /dev/null +++ b/build.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +gfortran rsa.f90 -o out/rsa @@ -0,0 +1,26 @@ +program rsa + implicit none + integer :: n, m + + print *, "Enter numbers to compute gcd:" + read(*,*) n, m + + print *, "gcd: ", gcd(n,m) + + contains + + recursive function gcd(n,m) result(x) + implicit none + integer, intent(in) :: n,m + integer :: x + + if (n == 0) then + x = m + else if (m == 0) then + x = n + else + x = gcd(m, mod(n,m)) + end if + end function gcd + +end program rsa |
