import java.util.Scanner; public class MCD { public static void main(String[] args) { int m, n, r, tmp; Scanner tastiera = new Scanner(System.in); do { System.out.print("Inserisci il primo valore (positivo): "); m = tastiera.nextInt(); } while (m <= 0); do { System.out.print("Inserisci il secondo valore (positivo): "); n = tastiera.nextInt(); } while (n <= 0); if (m < n) { tmp = m; m = n; n = tmp; } // per attivare il controllo delle asserzioni // usate il comando java -enableassertions assert m >= n; /* // implementazione letterale dell'algoritmo // descritto nella pima lezione del corso r = m % n; while (r != 0) { m = n; n = r; r = m % n; } System.out.println("MCD: " + n); */ /* // sapendo che n rappresenta il resto, // facciamo i controlli su n while (n != 0) { r = m % n; m = n; n = r; } System.out.println("MCD: " + m); */ // Per i controlli fatti sull'input, // n e' positivo, quindi viene fatta almeno un'iterazione do { r = m % n; m = n; n = r; } while (n != 0); System.out.println("MCD: " + m); } }