Rechercher : dans
Par :

Programme de calcul du pgcd

Dernière réponse le 3 avr 2009 à 15:23:24 elboras, le 25 oct 2001 à 15:53:34 
 Signaler ce message aux modérateurs

Avez vous déjà essayé de faire le programme de clcul du pgcd en C++, ou meme en algorithmie ?
Et ben essayé !
En faite , je suis pas un crack en c++ , j'ai que 15 ans .
Masi en faisant le programme de calcul du pgcd je part dans plein de
IF a > B
plein de condition et le programme devient impossible !
Pouvez vous essayé de faire une algo simple ou un prog en c++ ?
merci d'avance ...

1

lama, le 25 oct 2001 à 16:42:23

En quelques lignes, ça marche:

Algo

Début
reste <-- 1
ecrire (' N1= ')
lire (n1)
ecrire (' N2= ')
lire (n2)
dividende <-- n1
diviseur <-- n2

#tant que reste <> 0 faire
reste <-- dividende mod diviseur
dividende <-- diviseur
diviseur <-- reste
Fin tant que

ecrire (' Le PGCD de ',n1,' et ',n2,' est ',dividende)
Fin


En C

#include <stdio.h>

void main()
{
int reste;
int n1,n2,dividende,diviseur;

reste = 1;

printf (" N1= ");
scanf ("%d", &n1);
printf (" N2= ");
scanf ("%d", &n2);
dividende=n1;
diviseur=n2;

while (reste!=0)
{
reste=dividende%diviseur;
dividende=diviseur;
diviseur=reste;
}

printf (" Le PGCD de %d et %d est %d",n1,n2,dividende);
}

Répondre à lama

3

elboras, le 26 oct 2001 à 09:20:28

Je te remercie !
Je vais impressionné mon prof de math avec ça lol !
Tu as l'air doué !
@+

Répondre à elboras

4

lama, le 26 oct 2001 à 09:31:33

Pas de problèmes ;o)

Répondre à lama

11

nicoa02, le 5 oct 2008 à 15:59:14

Peu tu me faire un programme de calcul sur :

[-5.4:(3-2.1)]-10

Répondre à nicoa02

2

yaubi, le 25 oct 2001 à 23:40:05

Eheh, facile ! ;))

et pour le challenge, qui veut tenter l'algo qui donne le pgcd de deux polynomes de degré indéterminé ?

c'était le sujet d'un de mes projets l'année dernière, c'est marrant tout plein ! ;)

Yoann

PS : pour ceux que ça intéresse je peux fournir la solution avec un dossier complet

Répondre à yaubi

5

lama, le 26 oct 2001 à 09:33:45

Arrête de frimer :-)))

lama

Répondre à lama

6

yaubi, le 26 oct 2001 à 20:48:52

Ben koi ? kesk'il y a de mal à être fière de ce qu'on fait, et bien fait ? bon d'accord je sais que ça n'intéresse personne, mais moi je l'aime mon petit dossier, ça m'a valu une UV anticipée ! :)))

Yoann

Répondre à yaubi

7

kinder.surprise, le 27 oct 2001 à 18:19:42

Moi ça m'intéresse yaubi. C'est très gros? c'est dans quel format? papier ou électronique?

Répondre à kinder.surprise

8

yaubi, le 27 oct 2001 à 20:00:37

Dans un premier temps, voici la version en ligne
http://aubineau.yoann.free.fr/supinfo/prepa2/pgcd/dossier.ht­m

je t'enverrai plus tard la version .doc ou .pdf, comme tu veux

Yoann

Répondre à yaubi

9

kingsyother, le 5 nov 2007 à 19:04:59
  • +2

Bonjour, j ai atteri par hasard sur ce forum et j aiessayé de faire le programme de calcul de pgcg
LE voici en quelques lignes en version c++(fonction )
//----------------------------------------------------------­-----------------
#include<iostream>
#include <vcl.h>
#pragma hdrstop
using namespace std;

//programme qui renvoie le pgcd de x et y---------------------------------------------------------------------------

#pragma argsused
int pgcd(int x,int y);
int main(int argc, char* argv[])
{ int x,y,temp;//temp est le nom associé au resultat
cout<<"Ce programme determine le pgcd de 2 nombres x et y"<<endl;
cout<<"Entrez le nombre x: ";
cin>>x;
cout<<"Entrez le nombre y: ";
cin>>y;
temp=pgcd(x,y);//Voir commentaire sur temp ci-dessus
cout<<"Le pgcd de "<<x<<" et "<<y<<" est "<<temp<<endl;
system("pause");
return 0;
}
int pgcd(x,y)
{
if (y==0)
return x;
else return pgcd(y,x%y);
}
//---------------------------------------------------------------------------

Répondre à kingsyother

10

hamzasq, le 18 déc 2007 à 01:11:29
  • +1

Voici une autre methode tres simple :

#include <stdio.h>
#include <conio.h>
main()
{
int a,b,pgcd;


printf ("Donner a : ");
scanf ("%d",&a);
printf ("Donner b : ");
scanf ("%d",&b);
do
{
if(a>b)
a=a-b;
else
b=b-a;
}
while(a!=b);
pgcd=a; /* on peu mettre : pgcd=b; */
printf (" Le PGCD est : %d\n",pgcd);
getche();
}


example :

If a=15 , b=5
alors b<a a=10 , b=5
b<a a=5 , b=5 alors pgcd=5

Répondre à hamzasq

12

yatto, le 29 nov 2008 à 20:06:40
  • +1

Merci Hamzasq pour cette version de ce calcul assez enervant!!

je vous conseille, pour ceux a qui sa inetresse de créer des prgrammes, d'aller vois sur

http://www.siteduzero.com

bref, essayez , vous allez vois c'est sympa!!

et moi je comprends tout, j'ai 13 ANS!!!!

^_________^

Répondre à yatto

13

 Grunt, le 3 avr 2009 à 15:23:24
  • +1

Si a = b, ton algorithme entre dans une boucle infinie.

Je viens d'essayer ;+)

De plus, ça donne un code pas optimisé du tout (mais portable à souhait).

Répondre à Grunt