1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
unsigned long nombre_A = 0; // On initialise la variable A qui contiendra la plus grande valeur de l'opération
unsigned long nombre_B = 0; // On initialise la variable B qui contiendra la plus petite valeur de l'opération
// On initialise 4 variables aptes à contenir le reste d'un modulo ou une autre valeur
unsigned long nombre_Q = 0;
unsigned long nombre_R = 0;
unsigned long nombre_S = 0;
unsigned long nombre_T = 0;
char finDeBoucle = 0;
char recommencer = 0; // On initialise la variable recommencer
printf ("Bienvenue dans le calculateur de PGCD!\nProgramme de Shapsed - http://shapsed.free.fr/ \n\n\n"); // Message de bienvenue
do // Boucle principale
{
printf ("Entrez un entier Naturel A > B > 0 \n"); // On propose d'entrer un nombre qui correspondra à la variable A (nombre_A)
scanf ("%ld", &nombre_A); // On saisit la variable A (nombre_A)
printf ("Entrez un entier Naturel B > 0 mais inferieur ou egal a A \n"); // On propose d'entrer un nombre qui correspondra à la variable B (nombre_B)
scanf ("%ld", &nombre_A); // On saisit la variable B (nombre_B)
while (finDeBoucle == 1)
{
nombre_Q = nombre_A % nombre_B; // Reste de la division de A par B contenu dans la variable Q
if (nombre_Q == 0)
{
printf ("Le PGCD de %ld et %ld est %ld.", nombre_A, nombre_B, nombre_B);
finDeBoucle++;
}
else
{
nombre_R = nombre_B % nombre_Q; // Reste de la division de B par Q contenu dans la variable R
}
if (nombre_R == 0)
{
printf ("Le PGCD de %ld et %ld est %ld.", nombre_A, nombre_B, nombre_Q);
finDeBoucle++;
}
else
{
nombre_S = nombre_Q % nombre_R; // Reste de la division de Q par R contenu dans la variable S
}
if (nombre_S == 0)
{
printf ("Le PGCD de %ld et %ld est %ld.", nombre_A, nombre_B, nombre_R);
finDeBoucle++;
}
else
{
nombre_T = nombre_R % nombre_S; // Reste de la division de R par S contenu dans la variable T
}
if (nombre_T == 0)
{
printf ("Le PGCD de %ld et %ld est %ld.", nombre_A, nombre_B, nombre_S);
finDeBoucle++;
}
printf ("Voulez vous recommencer? \t 0.Non \t 1.Oui \n");
scanf ("%ld", &recommencer);
}
}
while (recommencer == 1);
finDeBoucle = 0;
system("PAUSE");
return 0;
} |
Partager