zakaryaej8
Messages postés3Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention 1 février 2009
-
30 janv. 2009 à 12:13
zakaryaej8
Messages postés3Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention 1 février 2009
-
1 févr. 2009 à 20:39
zakaryaej8
salut tout le monde; qui peut m'aidé à écrire cet algorithme en langague C svp , je vous jure que c'est important pour moi. merçi algorithme est comme suite :
Algorithme de Booth (avec 3 registres: M, A et Q):
M
¬ Multiplicande, Q ¬ Multiplicateur, A ¬ 0, Q-1¬ 0, Compteur ¬n(nbr de bit de Q)
TANT QUE (Compteur > 0)
SI (Q
0
. Q
-1
) = (1.0)ALORS A
¬
A - MSINON SI (Q
0
. Q
-1
) = (0.1)ALORS A
¬
A + MFIN SI
FIN SI
Décale vers la droite les registres combinés A-Q (incluant Q
zakaryaej8
Messages postés3Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention 1 février 2009 31 janv. 2009 à 19:29
zakaryaej8
bousoire
en faite je mme suis bloké sur le fait : comme applé l'adress numéro 0 du pointeur *Q . dans l'attente d'une réponce de votre part .merçi bien
coordialment
coucou747
Messages postés12303Date d'inscriptionmardi 10 février 2004StatutMembreDernière intervention30 juillet 201244 1 févr. 2009 à 03:38
euh... je viens de lire ton MP, ca n'avait rien a faire en MP...
Message envoyé par ... le 31/01/2009 19:39:28 Sujet : voila ce que j'ai fait pour le moment. zakaryaej8
Message :
#include <stdio.h>
#include <stdlib.h>
int main()
{
short long_ch(char *s);
// ca tu dois le declarer ailleur que dans le main
int *Q ,*M ,A[100] ;
int L,cpt,j,n,q=0;
Q = (int *) malloc(120); // 120 * sizeof(int) ?
printf("entrer une chaine T:");
scanf("%s",Q);
// Q est un int* et tu l'utilises comme un char*
L =long_ch(Q);
// la focntion c'est strlen
printf("la chaine contien %d carac \n",L);
free(Q);
cpt=L;
M = (int *) malloc(120);
printf("entrer une chaine M:");
scanf("%s",M);
free(M);
n=cpt;
for(j=0;j<=n;j++)
A[j]=0;
while(cpt>0)
{
if( (*Q [0]) = 1) // Q[0] ou *Q mais pas *Q[0] de plus, ici, Q est libere...
A[100] = A[100]- *M;
}
return 0;
}
short long_ch(char *s)
{
short i=0;
while(*(s+i)) // s[i] est plus lisible
{
i++;
} return i;
}
ton code est plein d'erreurs
Vous n’avez pas trouvé la réponse que vous recherchez ?
zakaryaej8
Messages postés3Date d'inscriptionjeudi 29 janvier 2009StatutMembreDernière intervention 1 février 2009 1 févr. 2009 à 20:39
zakaryaej8
merçi bien de vos remarques; je vais tenir compte, et je vais ésséyé de corrigé mes erreur, et je vais te contacté aprés. merçi bien une autre fois.(NB: je sui encore debutant)