Language c (multiplication de deux nombre)

[Fermé]
Signaler
Messages postés
2
Date d'inscription
jeudi 29 décembre 2011
Statut
Membre
Dernière intervention
1 février 2012
-
Messages postés
8
Date d'inscription
mercredi 1 février 2012
Statut
Membre
Dernière intervention
2 février 2012
-
bonjour ,

je besoin UN COUP DE MAIN
programme qui multiplie les deux entiers positifs a et b selon le principe récursif suivant:
A*b=a*(b-1)+a si b est impaire
A*b=(2*a)*(b/2) si b est paire et différent de 0

exemple
36*7=36*6+36
. =72*3+36
. =72*2+108
. =144*1+108
. =144*0+252
. =252


merci d'avance ,

3 réponses

Messages postés
8
Date d'inscription
mercredi 1 février 2012
Statut
Membre
Dernière intervention
2 février 2012
3
Bonjour,
Si tu as un pb dans le langage c(si g bien compris ton pb), donc voila le code source EN C:

# include <stdio.h>
# include <stdlib.h>


int P; int A,B;// DECLARATION GLOBAL

int produit(int A, int B) //fonction du recursivité
{

if(B>0)
{
if( (B % 2) == 0) // % =mod
P=produit (2*A,B/2);
else
P=produit (A,B-1)+A;
}
return P;
}


int main()
{
int Pr;
printf("Donner la valeur de A :"); scanf("%d",&A);
printf("Donner la valeur de B :"); scanf("%d",&B);

Pr= produit (A,B);
printf("le produit de A, B = %d \n", Pr);
system("pause");
return 0;
}
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41713 internautes nous ont dit merci ce mois-ci

Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 782
Il n'y a aucun intérêt à déclarer les variables globales dans votre exemple.
Il vaut mieux éviter autant que possible l'utilisation de globale.
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 782
Bonjour,
Qu'est-ce que tu ne comprends pas ? Comment pouvons-nous t'aider ?
Poste ce que tu as commencé à faire pour qu'on puisse te corriger.
Cdlt,
Messages postés
8
Date d'inscription
mercredi 1 février 2012
Statut
Membre
Dernière intervention
2 février 2012
3
Merci fiddy.

donc ghani tu peux les déclarées a l'intérieur de main.