Programme console C
vh_77
Messages postés
207
Date d'inscription
Statut
Membre
Dernière intervention
-
HACKER 712 Messages postés 1282 Date d'inscription Statut Contributeur Dernière intervention -
HACKER 712 Messages postés 1282 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour, je m'entraîne depuis hier au site du zéro à faire des programmes, des petits car je veux apprendre le C.
Voici mon code et je vous expliquerais mon problème plus tard.
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long age = 0;
printf ("quel age avez vous ? \n\n");
scanf ("%ld", &age);
if (age >=18)
{
printf ("vous etes majeur ! \n\n");
}
else if (age > 10)
{
printf ("vous ete mineur ! il ne te reste plus que 1 an\n\n");
}
else
{
printf (" c est dommage tu es beaucoup trop jeune ! ! ! \n\n");
}
system ("PAUSE");
return 0;
}
Mon problème est que je voudrais que quand par exemple la console s'ouvre :
j'entre le nombre 18 ===> il y a marquer " vous etes majeur"
j'entre le nombre 17 ===> il y a marquer "vous etes mineur ! il ne vous reste plus que 1 an"
j'entre le nombre 16====> il y a marquer"vous etes mineur ! il ne vous reste plus que 1 an"
Voila je voudrais faire en sorte par exemple si je met 16 ans il y a marquer il ne vous reste plus que 2 ans et chaque autre nombre que je taperais ce serait la même chose mais comment ?
Voici mon code et je vous expliquerais mon problème plus tard.
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long age = 0;
printf ("quel age avez vous ? \n\n");
scanf ("%ld", &age);
if (age >=18)
{
printf ("vous etes majeur ! \n\n");
}
else if (age > 10)
{
printf ("vous ete mineur ! il ne te reste plus que 1 an\n\n");
}
else
{
printf (" c est dommage tu es beaucoup trop jeune ! ! ! \n\n");
}
system ("PAUSE");
return 0;
}
Mon problème est que je voudrais que quand par exemple la console s'ouvre :
j'entre le nombre 18 ===> il y a marquer " vous etes majeur"
j'entre le nombre 17 ===> il y a marquer "vous etes mineur ! il ne vous reste plus que 1 an"
j'entre le nombre 16====> il y a marquer"vous etes mineur ! il ne vous reste plus que 1 an"
Voila je voudrais faire en sorte par exemple si je met 16 ans il y a marquer il ne vous reste plus que 2 ans et chaque autre nombre que je taperais ce serait la même chose mais comment ?
A voir également:
- Programme console C
- Programme demarrage windows - Guide
- Test console steam deck - Guide
- Console action - Accueil - Jeu vidéo
- Message programmé iphone - Guide
- Console mac - Guide
43 réponses
oui, mais je dirai plutot
printf(" un bon programmeur est %d d\'experience et %d de competences innes \n",100,1);
que ca :
printf(" un bon programmeur est %d d'experience et %d de competences innes \n",100,1);
et encore une fois, pour le type de variable, je n'ai pas reflechit au type comme si ma vie en dépendait, non. Parce que sa question n'était pas là.
printf(" un bon programmeur est %d d\'experience et %d de competences innes \n",100,1);
que ca :
printf(" un bon programmeur est %d d'experience et %d de competences innes \n",100,1);
et encore une fois, pour le type de variable, je n'ai pas reflechit au type comme si ma vie en dépendait, non. Parce que sa question n'était pas là.
mais sinon pour me facilité la vie vu que le char va de -128 à 127 et que le long va de -2 147 483 648 à 2 147 483 647 je peux utiliser le long pour toutes mes variables et non le char car le long offre plus de grandeur mais sa revient au même.
Et de même pour les unsigned char int ou long je peux utiliser n'importe lequel des 3 .
Et de même pour les unsigned char int ou long je peux utiliser n'importe lequel des 3 .
HACKER 712 tu connais le C par coeur ?
Tu as déjà créer des programmes utiles et les as tu publier sur des sites ?
Tu as déjà créer des programmes utiles et les as tu publier sur des sites ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
une autre question :
pour les histoires de variables :
est-ce que c'est pareil de mettre par exemple :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVies;
nombreDeVies = 5;
system("PAUSE");
return 0;
}
ou alors c'est mieux de mettre :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVies = 5;
system("PAUSE");
return 0;
}
?????
pour les histoires de variables :
est-ce que c'est pareil de mettre par exemple :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVies;
nombreDeVies = 5;
system("PAUSE");
return 0;
}
ou alors c'est mieux de mettre :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVies = 5;
system("PAUSE");
return 0;
}
?????
Je crois que la il s'agit de rapidité, d'efficacité, de ponctualité... Je m'égare.
Non, peu importe, si tu connais la valeur de la variable des sa création, assigne lui tout de suite sa valeur...
Non, peu importe, si tu connais la valeur de la variable des sa création, assigne lui tout de suite sa valeur...
et quand hier tu me disais il fallait faire 18 - age ...
là aussi alors je peux le faire si je veux faire ça :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVies = 5;
printf("Vous avez %ld vies\n", nombreDeVies);
printf("attention tu as été toucher\n");
nombreDeVies = 4;
printf("Ah desole, il ne vous reste plus que %ld vies maintenant !\n\n", nombreDeVies);
system("PAUSE");
return 0;
}
comment je peux faire pour trouver une autre solution que de plutot ecrire nombreDeVie = 4 je ne pourrais pas faire un truc comme reste (reste étant un autre nom de variable) donc reste - quelque chose ??
là aussi alors je peux le faire si je veux faire ça :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVies = 5;
printf("Vous avez %ld vies\n", nombreDeVies);
printf("attention tu as été toucher\n");
nombreDeVies = 4;
printf("Ah desole, il ne vous reste plus que %ld vies maintenant !\n\n", nombreDeVies);
system("PAUSE");
return 0;
}
comment je peux faire pour trouver une autre solution que de plutot ecrire nombreDeVie = 4 je ne pourrais pas faire un truc comme reste (reste étant un autre nom de variable) donc reste - quelque chose ??
il faut quelque chose de valable tout le temps... quelque chose qui vaut 1 de moins à chaque fois...
il faut que tu ecrives vies --;
ca s'appelle la décrémentation
il y a aussi l'incrementation, indispensable dans les boucles for !
il faut que tu ecrives vies --;
ca s'appelle la décrémentation
il y a aussi l'incrementation, indispensable dans les boucles for !
donc si je réecris mon programme il faut que j'écrive :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv)
{
long nombreDeVie = 5;
printf("vous avez %ld de vie\n", nombreDeVie);
printf("attention");
nombreDeVie --
printf("ha desole tu vien de perdre %ld de vie\n", nombreDeVie);
system("PAUSE");
return 0;
}
mais il y a marquer qu'il y a une erreur de syntaxe avant printf à la ligne 11 là ou j'ai rajoutter les 2 --.
et aussi il me disent je croit de rajouter un char
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv)
{
long nombreDeVie = 5;
printf("vous avez %ld de vie\n", nombreDeVie);
printf("attention");
nombreDeVie --
printf("ha desole tu vien de perdre %ld de vie\n", nombreDeVie);
system("PAUSE");
return 0;
}
mais il y a marquer qu'il y a une erreur de syntaxe avant printf à la ligne 11 là ou j'ai rajoutter les 2 --.
et aussi il me disent je croit de rajouter un char
bon c'est pas grave mais j'ai un autre problème de malcomprehension:
par exemple ce code :
long nombre = 2;
nombre += 4; // nombre vaut 6...
nombre -= 3; // ... nombre vaut maintenant 3
nombre *= 5; // ... nombre vaut 15
nombre /= 3; // ... nombre vaut 5
nombre %= 3; // ... nombre vaut 2 (car 5 = 1 * 3 + 2)
Je ne comprend pas ces signe += , -= , pouquoi y a t-il un + ou un - devant = ?
faites un exemple svp
par exemple ce code :
long nombre = 2;
nombre += 4; // nombre vaut 6...
nombre -= 3; // ... nombre vaut maintenant 3
nombre *= 5; // ... nombre vaut 15
nombre /= 3; // ... nombre vaut 5
nombre %= 3; // ... nombre vaut 2 (car 5 = 1 * 3 + 2)
Je ne comprend pas ces signe += , -= , pouquoi y a t-il un + ou un - devant = ?
faites un exemple svp
alors en fait, il faut un point virgule, apres vies--;
our tes exemples, += 4 est un raccourci pour ecrire
ex ::
vie += 4; est equivalent à vie = vie + 4;
c plus rapide !
our tes exemples, += 4 est un raccourci pour ecrire
ex ::
vie += 4; est equivalent à vie = vie + 4;
c plus rapide !
ok voici mon code :
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVie = 5;
printf ("vous avez %ld de vie\n", nombreDeVie);
printf ("attention\n");
nombreDeVie --;
printf ("ha desole tu viens de perdre %ld de vie\n", nombreDeVie);
system ("PAUSE");
return 0;
}
quand la console s'ouvre il y a marqué :
1/ vous avez 5 de vie
2/ attention
3/ ha desole tu viens de perdre 4 de vie
alors que mon programme par exemple je veux qu'il fasse AUTOMATIQUEMENT la soustraction de 1 en 1 genre j'ai 15 de vie je me fais touché et un toucher = moins 1 de vie alors je me retrouve à 14 et AINSI de suite...
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long nombreDeVie = 5;
printf ("vous avez %ld de vie\n", nombreDeVie);
printf ("attention\n");
nombreDeVie --;
printf ("ha desole tu viens de perdre %ld de vie\n", nombreDeVie);
system ("PAUSE");
return 0;
}
quand la console s'ouvre il y a marqué :
1/ vous avez 5 de vie
2/ attention
3/ ha desole tu viens de perdre 4 de vie
alors que mon programme par exemple je veux qu'il fasse AUTOMATIQUEMENT la soustraction de 1 en 1 genre j'ai 15 de vie je me fais touché et un toucher = moins 1 de vie alors je me retrouve à 14 et AINSI de suite...
eh bien cherche un peu, je te donnerai la reponse si tu ne trouves vraiment pas...
Tu n'auras pas toujours la reponse a tes problemes !
Tu n'auras pas toujours la reponse a tes problemes !
mais sinon par exemple je met :
printf ("comment t'appelles tu ?\n");
scanf ????
je ne sais pas comment faire pour écrire des prenom ou des nom ?
printf ("comment t'appelles tu ?\n");
scanf ????
je ne sais pas comment faire pour écrire des prenom ou des nom ?
ca tu l'apprendras plus tard, mais il faut faire :
char prenom [100];
scanf("%100s", prenom);
printf("Tu t'appelles %s, je le sais !", prenom);
normalement, c plus compliqué que ca, il faudrait vider le buffer, recuperer les lettres une a une avec fgets, tout ca, mais pour toi ca suffit amplement puisque tu débutes...
char prenom [100];
scanf("%100s", prenom);
printf("Tu t'appelles %s, je le sais !", prenom);
normalement, c plus compliqué que ca, il faudrait vider le buffer, recuperer les lettres une a une avec fgets, tout ca, mais pour toi ca suffit amplement puisque tu débutes...
merci mais pourquoi on ne met pas de & devant prénom et est ce que prenom est une variable ?
je ne comprend pas trop
je ne comprend pas trop
Le but de l'esperluette (&) est d'obtenir l'adresse d'une variable. Or, dans le cas d'un tableau ou d'un pointeur, nous avons déjà l'adresse. Donc l'esperluette est inutile. De plus, les types ne correspondrait pas : char** au lieu de char*.
Pour tout ce qui est non tableau et non pointeur, l'esperluette est de mise.
Cdlt
Pour tout ce qui est non tableau et non pointeur, l'esperluette est de mise.
Cdlt
Mais ne t'en fait pas si tu ne comprends pas tout ca, tu auras bien le temps de le comprendre plus tard...
#include <stdio.h>
main()
{
int age,r;
printf ("quel age avez vous ? \n");
scanf ("%d", &age);
if (age>=18)
printf ("vous etes majeur");
}
else if (age<18)
{
r=18-age
printf ("vous etes mineur !il ne te reste que",r);
}
else if (age <10)
{
r=10-age;
printf (" c' est dommage tu es beaucoup trop jeune ! ! il reste plus que ",r);
}
}
main()
{
int age,r;
printf ("quel age avez vous ? \n");
scanf ("%d", &age);
if (age>=18)
printf ("vous etes majeur");
}
else if (age<18)
{
r=18-age
printf ("vous etes mineur !il ne te reste que",r);
}
else if (age <10)
{
r=10-age;
printf (" c' est dommage tu es beaucoup trop jeune ! ! il reste plus que ",r);
}
}
une autre qustion en faite j'esaie de faire nu programme qui calcule le double d'un nombre mais code blocks me di qu'il y a une erreur a chaque fois voici mon code :
#include <stdio.h>
#include <stdlib.h>
long double (long nombreDebut)
{
return 2 * nombre;
}
int main(int argc, char *argv[])
{
long nombreEntre = 0, nombreTriple = 0;
printf("Entrez un nombre... ");
scanf("%ld", &nombreEntre);
nombreEntre = double(nombreDebut);
printf("Le double de ce nombre est %ld\n", nombreTriple);
system("PAUSE");
return 0;
}
#include <stdio.h>
#include <stdlib.h>
long double (long nombreDebut)
{
return 2 * nombre;
}
int main(int argc, char *argv[])
{
long nombreEntre = 0, nombreTriple = 0;
printf("Entrez un nombre... ");
scanf("%ld", &nombreEntre);
nombreEntre = double(nombreDebut);
printf("Le double de ce nombre est %ld\n", nombreTriple);
system("PAUSE");
return 0;
}