/* File: mcd1.c */
/* Time-stamp: "2001-03-20 11:53:42 calvanes" */
/* Scopo: cicli indefiniti con sentinella */

/* Legge due numeri interi positivi e calcola il massimo comun divisore.
   Utilizza la ricerca sequenziale di un divisore comune. */

#include <stdio.h>

int main(void)
{
  int m, n;                   /* i due numeri letti */
  int mcd;                    /* il massimo comun divisore */
  int trovato = 0;            /* sentinella;
                                 inizialmente non abbiamo trovato un divisore*/

  printf("Due interi positivi? ");
  scanf("%d%d", &m, &n);

  /* inizializza mcd al minimo tra m e n*/
  if (m <= n)
    mcd = m;
  else
    mcd = n;

  while (mcd > 1 && !trovato)
    if ((m % mcd == 0) && (n % mcd == 0))
      trovato = 1;
    else
      mcd--;

  printf("Il massimo comun divisore di %d e %d e` %d", m, n, mcd);

  return 0;
}