Sommaire


Installer et compiler ces fichiers dans votre répertoire de travail.

a04_mul3.c
'
/* ------------------------------ */
/*  Save as :   a04_mul3.c        */
/* ------------------------------ */
#include    "x_ahfile.h"
/* ------------------------------ */
#define      LOOP         5
/* ------------------------------ */
int main(void)
{
time_t t;

int i=0,j=0,n=1,loop=LOOP+1;

  srand(time(&t));
  
do{clrscrn();
	
   printf("Multiplication 3\n\n\n");
   printf("  %d           \n\n",i*j);
   
   i = rndp_I(490)+9+100;
   j = rndp_I(490)+9+100;
   
   if(n<loop) printf("     %4d\n    *%4d  (%d)",i,j,n++);
   else       n++;
   
   nlign(6);  
   stop();

}while(n<=loop);


 return 0;
}


C'est un petit utilitaire pour s'entraîner à faire des multiplications de trois chiffres.

i et j sont compris entre 110 et 599.

Sur l'écran on peut voir apparaître la nouvelle multiplication plus le résultat de la multiplication précédente. Il y a aussi un compteur "n" qui donne le nombre de multiplications effectuées.


Exemple de sortie écran :

Multiplication 3


  0           

      146
    * 308  (1)



 Press return to continue.


Méthode Russe


Poser la multiplication

   123
 * 234
 ------
= .....

On cache les valeurs à gauche et on multiplie

   ||3
 * ||4
 ------
= ....2

Ça fait 3*4 = 12. On marque 2 et on retient 1.

On tire le cache vers la droite

   |23
 * |34
 ------
= ...82

On fait la somme des produits en croix : 2*4 + 3*3, auquel on rajoute la retenue : cela fait 8 + 9 + 1 = 18, on marque 8 et on retient 1.

On re-tire le cache vers la droite

   123
 * 234
 ------
= ..782

On fait la somme des produits en croix : 1*4 + 2*3 + 3*2, auquel on rajoute la retenue : cela fait 4 + 6 + 6 + 1 = 17, on marque 7 et on retient 1.

On cache les valeurs à droite

   12|
 * 23|
 ------
= .8782

On fait encore la somme des produits en croix : 1*3 + 2*2, auquel on ajoute encore la retenue : cela fait 3 + 4 + 1 = 8, on marque 8.

On tire le cache vers la droite

   1||
 * 2||
 ------
= 28782

Et là on rajoute 2*1 = 2, soit 123*234 = 28782.

Cet article est issu de Wikibooks. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.