cs_Goldberg
Messages postés4Date d'inscriptionmercredi 18 février 2004StatutMembreDernière intervention26 février 2004
-
26 févr. 2004 à 00:13
cs_Goldberg
Messages postés4Date d'inscriptionmercredi 18 février 2004StatutMembreDernière intervention26 février 2004
-
26 févr. 2004 à 12:14
Bonjour, comment faire ern C pour
1) introduire deux chaines de caractère (en fait rien que des valeurs numériques)
2) pouvoir additionner les premiers termes ensembles, les seconds ensembles sans convertir cette chaine en nombre!
ex
1) j'introduis 14563365 et 1234566
2) 1+1=2, 4+2=6, 5+3=8, 6+4=10 ...
cs_Goldberg
Messages postés4Date d'inscriptionmercredi 18 février 2004StatutMembreDernière intervention26 février 2004 26 févr. 2004 à 12:12
#include <stdio.h>
#include <string.h>
main()
{
int a,b,c,d;
char tab1[80], tab2[80];
size_t length;
while (1)
{
puts("Entrez une première chaine.");
gets (tab1);
length = strlen(tab1); a=length;
puts("Entrez une seconde chaine.");
gets (tab2);
length = strlen(tab2); b=length;
if (a<=b) for (i=b-1; i>=b-a; i--) {c=b-a;j'aimerais faire tab1[i-c] + tab2[i] et afficher le résultat pour chaque i}
for(i=b-a-1; i>=0, i-- { afficher tab2[i]}
if (a>b) for (i=a-1; i>=a-b ; i-- ) { c=a-b; j'aimerais faire tab1[i]+tab2[i-c] et afficher le résultat pour chaque i;}
for (i=a-b-1; i>=0; i--) {afficher tab1[i]}
}
}
donc en fait j'introduis deux chaines
première = 12345 et je la mets ds un tableau donc tab1[0]=1, tab1[1]=2, tab1[2]=3, tab1[3]=4, tab1[4]=5; ensuite je compte le nombre d'élements de ce tableau a=5
deuxième = 123 et je la mets ds un second tableau tab2[0]=1, tab2[1]=2 et tab2[2]=3; je compte également le nbre d'élements b=3
ds ce cas j'ai a>b
donc je pars de i=a-1=4; c=a-b=2 et je fais
1) tab1[4]+tab2[i-c]=5+3=8 et j'aimerais afficher 8
2) tab1[3]+tab2[1]=4+2=6 et j'aimerais afficher 6
3) tab1[2]+tab2[0]=3+1=4 et j'aimerais afficher 4
mnt je suis arrivé à i<2 et donc je passe au second for :
tab1[1]=2, tab1[0]=1
pourrais-tu me complèter le prog pour que ça marche?
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Goldberg
Messages postés4Date d'inscriptionmercredi 18 février 2004StatutMembreDernière intervention26 février 2004 26 févr. 2004 à 12:14
dsl j'ai pas mis tt les parenthèses
#include <stdio.h>
#include <string.h>
main()
{
int a,b,c;
char tab1[80], tab2[80];
size_t length;
while (1)
{
puts("Entrez une première chaine.");
gets (tab1);
length = strlen(tab1); a=length;
puts("Entrez une seconde chaine.");
gets (tab2);
length = strlen(tab2); b=length;
if (a<=b) {for (i=b-1; i>=b-a; i--) {c=b-a;j'aimerais faire tab1[i-c] + tab2[i] et afficher le résultat pour chaque i}
for(i=b-a-1; i>=0, i-- { afficher tab2[i]} } // fin du if
if (a>b) {for (i=a-1; i>=a-b ; i-- ) { c=a-b; j'aimerais faire tab1[i]+tab2[i-c] et afficher le résultat pour chaque i;}
for (i=a-b-1; i>=0; i--) {afficher tab1[i]} } // fin du if
} // fin du while
return 0;