Erreur débutant fonction
Fermé
okokko
Messages postés
551
Date d'inscription
samedi 3 janvier 2009
Statut
Membre
Dernière intervention
14 mai 2019
-
Modifié par baladur13 le 24/10/2015 à 17:20
okokko Messages postés 551 Date d'inscription samedi 3 janvier 2009 Statut Membre Dernière intervention 14 mai 2019 - 31 oct. 2015 à 14:24
okokko Messages postés 551 Date d'inscription samedi 3 janvier 2009 Statut Membre Dernière intervention 14 mai 2019 - 31 oct. 2015 à 14:24
A voir également:
- Erreur débutant fonction
- Erreur 0x80070643 - Accueil - Windows
- Fonction si et - Guide
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 1001 outlook - Accueil - Bureautique
- Erreur 5000 france tv - Forum iPhone
2 réponses
matmat42
Messages postés
124
Date d'inscription
mercredi 15 février 2012
Statut
Membre
Dernière intervention
27 mars 2016
40
Modifié par matmat42 le 20/10/2015 à 21:48
Modifié par matmat42 le 20/10/2015 à 21:48
Bonjour.
argent n'est pas une fonction dans ton code, ni même une variable en fait.
Je ne vois pas trop comment tu pourrais utiliser argent en tant que fonction...
Si tu veux la déclarer en tant que variable, fais comme ça :
argent n'est pas une fonction dans ton code, ni même une variable en fait.
Je ne vois pas trop comment tu pourrais utiliser argent en tant que fonction...
Si tu veux la déclarer en tant que variable, fais comme ça :
int age = 30, argent = 1001;(pour déclarer une variable, pas le droit de mettre > ou <, juste un signe = entre le nom et la valeur)
okokko
Messages postés
551
Date d'inscription
samedi 3 janvier 2009
Statut
Membre
Dernière intervention
14 mai 2019
11
Modifié par baladur13 le 24/10/2015 à 17:21
Modifié par baladur13 le 24/10/2015 à 17:21
Bonjour matmat42 et merci,
en fait,c'est pour utiliser la condition "ou" ( || ),
ici:https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c/14612-les-conditions
au paragraphe: "plusieurs conditions à la fois "
donc sur tes conseils j'ai fais ça:
et ça marche.La console me renvoi " Bienvenue chez PicsouBanque ! "
(Ils sont marrant a OpenClassRoom)
Donc dans se code j'utilise bien le "ou" ( || ) ?
Encore merci,ça vous semble peut-être évident,mais pour moi
qui débute,j'ai bloqué et je n'es personne a qui m'adresser directement.
Je ne suis que " premium " a OpenClassRoom.
Je continu donc mon apprentissage.
PS:j'aurai surement encore besoin de vos services (si possible et dispo).
en fait,c'est pour utiliser la condition "ou" ( || ),
ici:https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c/14612-les-conditions
au paragraphe: "plusieurs conditions à la fois "
donc sur tes conseils j'ai fais ça:
#include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int age = 31, argent = 1001; if (age > 30 || argent > 1000) { printf("Bienvenue chez PicsouBanque !"); } else { printf("Hors de ma vue,miserable !"); } return 0; }
et ça marche.La console me renvoi " Bienvenue chez PicsouBanque ! "
(Ils sont marrant a OpenClassRoom)
Donc dans se code j'utilise bien le "ou" ( || ) ?
Encore merci,ça vous semble peut-être évident,mais pour moi
qui débute,j'ai bloqué et je n'es personne a qui m'adresser directement.
Je ne suis que " premium " a OpenClassRoom.
Je continu donc mon apprentissage.
PS:j'aurai surement encore besoin de vos services (si possible et dispo).
jackdada
Messages postés
77
Date d'inscription
vendredi 31 juillet 2015
Statut
Membre
Dernière intervention
10 février 2016
19
21 oct. 2015 à 19:43
21 oct. 2015 à 19:43
Oui le ou ( || ) est bien effectuer.
Selon tes valeur d'argent et age, la condition if effectue les teste suivant :
-31 est il supérieur à 30? ce qui retourne vrais
-1001 est il supérieur à 1000? ce qui retourne vrais
Puis regarde si ce qui résulte de la fonction logique "ou" en faisant vrais ou vrais. Ceci résulte à vrais d'où l'entré dans la première condition et l'affichage de "Bienvenu chez picsoubanque"
Si maintenant tu change la valeur d'argent en 100 et laisse l'age à 31. Tu aura vrais sur le teste de l'age (31>30 est correcte) mais faux sur le teste de l'argent (100>1000 est incorrecte). La fonction logique est donc vrais ou faux, ce qui résulte à vrais, ça rentrera encore dans la première condition.
Les retour de la fonction logique "ou" sont les suivant:
faux || faux => faux
vrais || faux => vrais
faux || vrais => vrais
vrais || vrais => vrais
ceux de la fonction logique "et" sont les suivant:
faux && faux => faux
vrais && faux => faux
faux && vrais => faux
vrais && vrais => vrais
Essaye d'autre valeur pour age et argent afin de voire avec ton code les différent moment ou rentre dans la condition if et affiche "Bienvenu chez picsoubank" et les moment ou ça rentre dans le else et affiche "hors de ma vue"
Selon tes valeur d'argent et age, la condition if effectue les teste suivant :
-31 est il supérieur à 30? ce qui retourne vrais
-1001 est il supérieur à 1000? ce qui retourne vrais
Puis regarde si ce qui résulte de la fonction logique "ou" en faisant vrais ou vrais. Ceci résulte à vrais d'où l'entré dans la première condition et l'affichage de "Bienvenu chez picsoubanque"
Si maintenant tu change la valeur d'argent en 100 et laisse l'age à 31. Tu aura vrais sur le teste de l'age (31>30 est correcte) mais faux sur le teste de l'argent (100>1000 est incorrecte). La fonction logique est donc vrais ou faux, ce qui résulte à vrais, ça rentrera encore dans la première condition.
Les retour de la fonction logique "ou" sont les suivant:
faux || faux => faux
vrais || faux => vrais
faux || vrais => vrais
vrais || vrais => vrais
ceux de la fonction logique "et" sont les suivant:
faux && faux => faux
vrais && faux => faux
faux && vrais => faux
vrais && vrais => vrais
Essaye d'autre valeur pour age et argent afin de voire avec ton code les différent moment ou rentre dans la condition if et affiche "Bienvenu chez picsoubank" et les moment ou ça rentre dans le else et affiche "hors de ma vue"
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
>
jackdada
Messages postés
77
Date d'inscription
vendredi 31 juillet 2015
Statut
Membre
Dernière intervention
10 février 2016
21 oct. 2015 à 23:04
21 oct. 2015 à 23:04
Attention, tu confonds avec le | (ou binaire) / & (et binaire).
Le || (ou logique) / && (et binaire) ne vérifie pas systématiquement les 2 conditions.
Par exemple :
if (age > 30 || argent > 1000)
age > 30 est vrai. Vu qu'il s'agit d'un ou logique, argent > 1000 ne sera même pas exécuté.
Ici ça ne change rien, mais cela a son importance s'il y a une affectation dans la seconde condition.
Cdlt,
Le || (ou logique) / && (et binaire) ne vérifie pas systématiquement les 2 conditions.
Par exemple :
if (age > 30 || argent > 1000)
age > 30 est vrai. Vu qu'il s'agit d'un ou logique, argent > 1000 ne sera même pas exécuté.
Ici ça ne change rien, mais cela a son importance s'il y a une affectation dans la seconde condition.
Cdlt,
jackdada
Messages postés
77
Date d'inscription
vendredi 31 juillet 2015
Statut
Membre
Dernière intervention
10 février 2016
19
23 oct. 2015 à 18:56
23 oct. 2015 à 18:56
Ah je pensais que les 2 teste était effectuer, puis ensuite se faisait le "ou" ou "et" pour savoir si l'on rentrait ou non dans le if.
C'est d'ailleurs mieux pour le "ou" que le second test ne soit pas fait si le premier est vrais, au niveau du cout du programme.
C'est d'ailleurs mieux pour le "ou" que le second test ne soit pas fait si le premier est vrais, au niveau du cout du programme.
okokko
Messages postés
551
Date d'inscription
samedi 3 janvier 2009
Statut
Membre
Dernière intervention
14 mai 2019
11
>
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
24 oct. 2015 à 15:51
24 oct. 2015 à 15:51
ok,merci de de votre réponse,et comment fait on pour
vérifier les deux conditions ?
vérifier les deux conditions ?
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
>
okokko
Messages postés
551
Date d'inscription
samedi 3 janvier 2009
Statut
Membre
Dernière intervention
14 mai 2019
Modifié par fiddy le 24/10/2015 à 17:14
Modifié par fiddy le 24/10/2015 à 17:14
@okokko,
A quoi ça sert de vérifier les deux conditions dans ton cas ?
Tu veux que age > 30 ou que argent > 1000. Dès lors que tu as age = 31, tu n'as pas besoin de vérifier age puisque le OU logique (||) sera forcément vrai.
A quoi ça sert de vérifier les deux conditions dans ton cas ?
Tu veux que age > 30 ou que argent > 1000. Dès lors que tu as age = 31, tu n'as pas besoin de vérifier age puisque le OU logique (||) sera forcément vrai.