Langage c"les liste"
kika333
Messages postés
12
Statut
Membre
-
Azer_Ty Messages postés 108 Statut Membre -
Azer_Ty Messages postés 108 Statut Membre -
Bonjour,
je recherche une solution pr exercice qui demande a ecrire en c une liste chainée de chaine de caractére qui représent un nombre entier;puis :multiplier le par 10; div par 10.svp mes amie aider moi pleaaaaaaasssssse!!.gros bisou.
je recherche une solution pr exercice qui demande a ecrire en c une liste chainée de chaine de caractére qui représent un nombre entier;puis :multiplier le par 10; div par 10.svp mes amie aider moi pleaaaaaaasssssse!!.gros bisou.
A voir également:
- Langage c"les liste"
- Liste déroulante excel - Guide
- Langage ascii - Guide
- Liste déroulante en cascade - Guide
- Site dangereux liste - Guide
- Langage binaire - Guide
4 réponses
bonjour
pour connaitre la valeur en chiffre d'une chaine de caracteres
dans le langage ocaml il y a une fonction qui s'appelle " int of string " qui te donne la partie entière d'une chaine de caractères
mais en c++ je ne sais pas si ca existe
je m'excuse pour ne pas t'avoir répondre et aussi pour le retard
dans le module algorithmique et structures de données de cette année on a démarré par des cours de langage c++ mais on a pas encore bien abordé les listes chainées
pour connaitre la valeur en chiffre d'une chaine de caracteres
dans le langage ocaml il y a une fonction qui s'appelle " int of string " qui te donne la partie entière d'une chaine de caractères
mais en c++ je ne sais pas si ca existe
je m'excuse pour ne pas t'avoir répondre et aussi pour le retard
dans le module algorithmique et structures de données de cette année on a démarré par des cours de langage c++ mais on a pas encore bien abordé les listes chainées
kika333
Messages postés
12
Statut
Membre
1
salut merci pour avoir intesser a mon probléme.bn8
main()
{
int j;
char x='a'; //par exemple
j=(int) x;
....
}
tu met le code ASCII de x (qui est egale a a) et tu le met dans j (qui est un entier) c'est comme la fonction int-of-char
que ta dit asma sisi
{
int j;
char x='a'; //par exemple
j=(int) x;
....
}
tu met le code ASCII de x (qui est egale a a) et tu le met dans j (qui est un entier) c'est comme la fonction int-of-char
que ta dit asma sisi
desole
revenons a nos moutons
si tu a d'autres questions saches que je suis la pour te repondre
au revoir
revenons a nos moutons
si tu a d'autres questions saches que je suis la pour te repondre
au revoir
Je ne sais pas si ça t'aide, mais c'est une fonction qui convertie les chaines de caractères en entiers
Bonne continuation.
#include <stdio.h>
#include <stdlib.h>
// on décompose l'entier de cette manière
// ex : "123" devient 1*100 + 2*10 + 3*1
// d'où la puisance de 10
// pour les caractères en entier
// si '0' equivaut à 48 en entier
// alors '1' est égal à 49, '2' à 50, ...
// d'où '5' - '0' = 53 - 48 = 5
int convertirEntier(char *maChaine)
{
int i=0; // compteur
int tailleChaine=0; // taille de la chaine en paramêtre
int monInt=0; // entier converti (si erreur sera égal à -1)
int puissanceDix=1; // puissances de 10
// on parcourt la chaine complete ou la fin de la mémoire (255 caractères)
while(maChaine[i] != '\0' && i != 256) // le caractère \0 correspont à la fin d'une chaine
{
i++;
}
if(maChaine[i] != '\0') // cas d'erreur
return -1;
tailleChaine = i; // affectation de taille
for(i = 0; i < tailleChaine - 1; i++) //calcul de la puissance de 10 nécessaire
puissanceDix = 10 * puissanceDix;
// on parcourt la chaine à nouveau en décomposant
for(i = 0; i < tailleChaine; i++)
{
if(maChaine[i] < '0' || maChaine[i] > '9') // cas d'erreur
return -1;
// conversion
monInt = monInt + puissanceDix * (int)(maChaine[i] - '0');
//recalcul de la puissance
puissanceDix = puissanceDix / 10;
}
return monInt;
}
int main(void){
char *maChaine;
int monEntier;
maChaine = (char*)malloc(sizeof(char) * 255);
printf("Saisie de maChaine: ");
scanf("%s", maChaine);
printf("Ma chaine: \"%s\"\n", maChaine);
monEntier = convertirEntier(maChaine);
printf("Mon entier: \"%d\"\n", monEntier);
free(maChaine);
return 0;
}
Bonne continuation.