Exercice
Fermé
melodie15996
Messages postés
8
Date d'inscription
lundi 8 février 2016
Statut
Membre
Dernière intervention
18 avril 2016
-
8 févr. 2016 à 17:42
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 4 avril 2016 à 13:56
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 4 avril 2016 à 13:56
A voir également:
- Créer exercice à relier word
- Créer un organigramme sur word - Guide
- Créer un compte google - Guide
- Créer un compte gmail - Guide
- Comment créer un groupe whatsapp - Guide
- Espace insécable word - Guide
7 réponses
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
8 févr. 2016 à 18:01
8 févr. 2016 à 18:01
Bonjour,
Que n'arrives-tu pas à faire ?
À écrire l'algorithme ? Ou à le traduire en C ?
N'hésite pas à montrer ce que tu as commencé à faire pour qu'on puisse t'aider.
--
Google is your friend
Que n'arrives-tu pas à faire ?
À écrire l'algorithme ? Ou à le traduire en C ?
N'hésite pas à montrer ce que tu as commencé à faire pour qu'on puisse t'aider.
--
Google is your friend
melodie15996
Messages postés
8
Date d'inscription
lundi 8 février 2016
Statut
Membre
Dernière intervention
18 avril 2016
8 févr. 2016 à 18:06
8 févr. 2016 à 18:06
bin je n'ai pas trop compris ce qu'on me demande de faire
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
8 févr. 2016 à 18:09
8 févr. 2016 à 18:09
2 étapes :
1-Lecture de tout ce que l'utilisateur tape au clavier.
Sais-tu déjà comment faire pour lire ce que l'utilisateur tape au clavier ?
Ensuite, il faudra faire une boucle.
2-Condition de fin.
Il faut trouver les conditions à mettre dans la boucle pour qu'elle s'arrête.
1-Lecture de tout ce que l'utilisateur tape au clavier.
Sais-tu déjà comment faire pour lire ce que l'utilisateur tape au clavier ?
Ensuite, il faudra faire une boucle.
2-Condition de fin.
Il faut trouver les conditions à mettre dans la boucle pour qu'elle s'arrête.
Dalfab
Messages postés
706
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
2 novembre 2023
101
Modifié par Dalfab le 8/02/2016 à 20:51
Modifié par Dalfab le 8/02/2016 à 20:51
Bonjour, il y a de l'idée, mais l'énoncé indique une lecture des caractères un à un. Il faut plutôt utiliser fgetc().
Ce qui nous donne plutôt un code
Ce qui nous donne plutôt un code
#include<stdio.h> int main() { int nb_caracteres_fin = 0; // cette variable vaut 1 après 'f' ou 'F', 2 après 'i' ou 'I' qui suit un 'f', 3 après 'n' ou 'N' qui suit un 'fi' printf("introduisez des caracteres"); do { char car_lu = fgetc(stdin); // mettre à jour la variable nb_caractere_fin en fonction de car_lu et de nb_caractere_fin // .... } while ( nb_caractere_fin < 3 ); return 0; }
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
8 févr. 2016 à 21:05
8 févr. 2016 à 21:05
Juste en remplaçant : int main() par int main(void) et ça sera parfait :-).
Note : il est possible aussi d'utiliser getchar() au lieu de fgetc(stdin);
Note : il est possible aussi d'utiliser getchar() au lieu de fgetc(stdin);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
melodie15996
Messages postés
8
Date d'inscription
lundi 8 février 2016
Statut
Membre
Dernière intervention
18 avril 2016
8 févr. 2016 à 21:17
8 févr. 2016 à 21:17
merci a vous mais je n'ai pas trop compris cette partie char car_lu = fgetc(stdin);
merci
merci
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
8 févr. 2016 à 21:33
8 févr. 2016 à 21:33
Cela permet de mettre les caractères saisis par l'utilisateur dans car_lu.
melodie15996
Messages postés
8
Date d'inscription
lundi 8 février 2016
Statut
Membre
Dernière intervention
18 avril 2016
9 févr. 2016 à 17:24
9 févr. 2016 à 17:24
salut
j'ai écrit le programme mais lors de la compilation j'ai pas obtenu ce qu'on m'a demande
j'ai écrit le programme mais lors de la compilation j'ai pas obtenu ce qu'on m'a demande
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
9 févr. 2016 à 17:46
9 févr. 2016 à 17:46
Je n'arrive pas à voir le programme que tu as écrit sur ton écran ;-).
Dalfab
Messages postés
706
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
2 novembre 2023
101
10 févr. 2016 à 23:13
10 févr. 2016 à 23:13
Bonjour,
Le code que j'ai donné en exemple est incomplet, il te faut compléter les lignes manquantes. Tu trouveras ici des explications mais pas une solution toute faite.
Écris nous le code que tu as fait car comme le dis Fiddy nous ne voyons pas ton écran.
Le code que j'ai donné en exemple est incomplet, il te faut compléter les lignes manquantes. Tu trouveras ici des explications mais pas une solution toute faite.
Écris nous le code que tu as fait car comme le dis Fiddy nous ne voyons pas ton écran.
mennani1
Messages postés
8
Date d'inscription
lundi 9 novembre 2015
Statut
Membre
Dernière intervention
9 mai 2016
Modifié par baladur13 le 4/04/2016 à 13:58
Modifié par baladur13 le 4/04/2016 à 13:58
bonjour ,
la résolution de cette question se faite par l'utilisation de quelque fonction des chaine de caractère ,voilla une version avec la fonction getchar() :
la résolution de cette question se faite par l'utilisation de quelque fonction des chaine de caractère ,voilla une version avec la fonction getchar() :
#include<stdio.h> #include<stdlib.h> #include<string.h> #define MAX 100 void lire_chaine(char *ch) { char c=getchar(); int i=0; while(i<MAX-1) { if(c=='f') { ch[i]=c; i++; c=getchar(); if(c=='i') { ch[i]=c; i++; c=getchar(); if(c=='n') { ch[i]=c; i++; break; } } } if(c=='F') { ch[i]=c; i++; c=getchar(); if(c=='I') { ch[i]=c; i++; c=getchar(); if(c=='N') { ch[i]=c; i++; break; } } } ch[i]=c; c=getchar(); i++; } ch[i]='\0'; printf("la chaine saisie au clavier est : %s",ch); } main() { char *ch; ch = (char*)malloc(MAX*sizeof(char)); lire_chaine(ch); }
EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
>
mennani1
Messages postés
8
Date d'inscription
lundi 9 novembre 2015
Statut
Membre
Dernière intervention
9 mai 2016
4 avril 2016 à 13:56
4 avril 2016 à 13:56
Bonjour,
Quelques erreurs :
main() => int main(void)
Il manque le return 0;
char c=getchar(); getchar() renvoie un int.
ch = (char*)malloc(MAX*sizeof(char)); Le cast est superflu.
Pour les prochaines fois, merci d'utiliser la balise <code c>. Sinon c'est illisible.
Quelques erreurs :
main() => int main(void)
Il manque le return 0;
char c=getchar(); getchar() renvoie un int.
ch = (char*)malloc(MAX*sizeof(char)); Le cast est superflu.
Pour les prochaines fois, merci d'utiliser la balise <code c>. Sinon c'est illisible.
melodie15996
Messages postés
8
Date d'inscription
lundi 8 février 2016
Statut
Membre
Dernière intervention
18 avril 2016
Modifié par baladur13 le 4/04/2016 à 13:57
Modifié par baladur13 le 4/04/2016 à 13:57
bonjour
alors voila ce que j'ai fait pour l'instant
bon je ne sais pas comment continuer
alors voila ce que j'ai fait pour l'instant
#include<stdio.h> int maint () { char chaine [n];int j printf("introduisez des caracteres") gets(chaine) for(j=0;chaine[j]!=f,i,n,N,F,I;i++)
bon je ne sais pas comment continuer