jeudi 27 novembre 2014

Programme de multiplication de deux entiers (méthode russe)

I-1- Utilisation des tableaux

a- Programme

//Muliplication de deux entiers : méthode russe
//Utilisation des tableaux
#include<conio.h>
#include<iostream.h>
#include<time.h>

void main(void)
{
 int n,m;
 int i,j;
 float s=0;
 int A[100],B[100];
 time_t temps;
 cout <<"******** Multiplication de deux entiers (méthode russe)*******"<< endl;
 cout <<"********           Utilisation des tableaux            *******"<< endl;
 cout <<"Entrez deux entiers n et m :";
 cin >> n ;
 cin >> m ;
 time(&temps);
 cout<<"Temps début :"<< ctime(&temps)<<endl;
 if (m<=n)
            {
             A[0]=m;
             B[0]=n;
            }
 else
            {
             A[0]=n;
             B[0]=m;
            }
 i=0;
 while (A[i]!=1)
            {
             i=i+1;
             A[i]=A[i-1] / 2;
             B[i] = B[i-1] + B[i-1];
            }
 for (j=0;j<=i;j++)
     if ((A[j] % 2) != 0)
             s=s+B[j];
 cout << "la multiplication de "<< m << " et " << n << " est : "<< s << endl;
 time(&temps);
 cout<<"Temps Fin :"<< ctime(&temps)<<endl;
 getch();

}

b- Jeux d’essai




I-2- Sans l'utilisation des tableaux

a- Programme

//Muliplication de deux entiers en utilisant la méthode russe : Sans utilisation des tableaux
#include<conio.h>
#include<iostream.h>
#include<time.h>
void main(void)
{
 int n,m,A,B;
 float s=0;
time_t temps;
 cout <<"******** Multiplication de deux entiers (méthode russe)*******"<< endl;
 cout <<"********            Sans utiliser les tableaux         *******"<< endl;
 cout <<"Entrez deux entiers n et m :";
 cin >> n ;
 cin >> m ;
 time(&temps);
 cout<<"Temps début :"<< ctime(&temps)<<endl;
 if (m<=n)
            {
             A=m;
             B=n;
            }
 else
            {
             A=n;
             B=m;
            }
 do
 {
  if ((A % 2) != 0)
    s=s+B;
  A=A/2;
  B = B + B;
 } while (A!=0);
 cout << "la multiplication de "<< m << " et " << n << " est : "<< s << endl;
 time(&temps);
 cout<<"Temps fin :"<< ctime(&temps)<<endl;
 getch();
}

b- Jeux d’essai