pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc)
et puis difference if ..... {.......}
et
if .... then ....... endif
merci
me fais erreur ce code la ! (59 E:\sauve\Dev-Cpp\test.cpp syntax error
before `||' token etc
if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3
| nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then
{a=a+1;
b=b+1;}
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
kanze
giovanni wrote:
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc) et puis difference if ..... {.......} et if .... then ....... endif merci me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error
before `||' token etc if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3 | nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then {a=a+1; b=b+1;}
Tu penses programmer dans quel langage ? Parce que j'ai l'impression que c'en est un melange de plusieurs. Dans les langages de la famille C, il n'y a pas de « then » -- le syntaxe d'un if est :
if ( <condition ) <statement> [ else <statement> ]
Dans ton code, 1) tu fermes les parenthèses après la première comparaison, ce qui signifie la fin de la condition -- le || est pris comme le début du <statement>, et il n'y a pas de statement qui puisse commencer par un ||, et 2) tu as mis un then à la fin.
Je dirais un langage de la famille Pascal, sauf que les || et les == sont typique de la famille C, et n'existe pas dans les langages de la famille Pascal.
Il faut choisir un langage, puis l'apprendre.
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
giovanni wrote:
pour evite de faire tout les if a peine un if e vraie va au
(a=a+1 etc) et puis difference if ..... {.......}
et
if .... then ....... endif
merci
me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax
error
before `||' token etc
if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3
| nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then
{a=a+1;
b=b+1;}
Tu penses programmer dans quel langage ? Parce que j'ai
l'impression que c'en est un melange de plusieurs. Dans les
langages de la famille C, il n'y a pas de « then » -- le syntaxe
d'un if est :
if ( <condition ) <statement> [ else <statement> ]
Dans ton code, 1) tu fermes les parenthèses après la première
comparaison, ce qui signifie la fin de la condition -- le || est
pris comme le début du <statement>, et il n'y a pas de statement
qui puisse commencer par un ||, et 2) tu as mis un then à la
fin.
Je dirais un langage de la famille Pascal, sauf que les || et
les == sont typique de la famille C, et n'existe pas dans les
langages de la famille Pascal.
Il faut choisir un langage, puis l'apprendre.
--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc) et puis difference if ..... {.......} et if .... then ....... endif merci me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error
before `||' token etc if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3 | nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then {a=a+1; b=b+1;}
Tu penses programmer dans quel langage ? Parce que j'ai l'impression que c'en est un melange de plusieurs. Dans les langages de la famille C, il n'y a pas de « then » -- le syntaxe d'un if est :
if ( <condition ) <statement> [ else <statement> ]
Dans ton code, 1) tu fermes les parenthèses après la première comparaison, ce qui signifie la fin de la condition -- le || est pris comme le début du <statement>, et il n'y a pas de statement qui puisse commencer par un ||, et 2) tu as mis un then à la fin.
Je dirais un langage de la famille Pascal, sauf que les || et les == sont typique de la famille C, et n'existe pas dans les langages de la famille Pascal.
Il faut choisir un langage, puis l'apprendre.
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
korchkidu
giovanni wrote:
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc) et puis difference if ..... {.......} et if .... then ....... endif merci me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error before `||' token etc if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3 | nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then {a=a+1; b=b+1;}
Par contre, si je peux me permettre, toutes tes variables nb_** ne pourraient-elles pas etre stockees dans un tableau?
K.
giovanni wrote:
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc)
et puis difference if ..... {.......}
et
if .... then ....... endif
merci
me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error
before `||' token etc
if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3
| nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then
{a=a+1;
b=b+1;}
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc) et puis difference if ..... {.......} et if .... then ....... endif merci me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error before `||' token etc if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3 | nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then {a=a+1; b=b+1;}
Par contre, si je peux me permettre, toutes tes variables nb_** ne pourraient-elles pas etre stockees dans un tableau?
K.
giovanni
merci je vais essayer pour gaby et bien j'ai commencer avec le basic ensuite du pascal et visual basic aussi maintenant fini au c++ c'est vrai je suis pas programmeur de metier je me amuse disons petit utilitaire pour moi je suis italien et je vis en suisse romande mais c'est vrai je suis pas fort en francais.... j'aurai du mettre en tableau oui mais encore debutant pour ca ca sera une optimse plus tard... le or || et le or | quel difference? merci
"korchkidu" a écrit dans le message de news: 4210610a$
giovanni wrote:
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc) et puis difference if ..... {.......} et if .... then ....... endif merci me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error before `||' token etc if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3 | nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then {a=a+1; b=b+1;}
Par contre, si je peux me permettre, toutes tes variables nb_** ne pourraient-elles pas etre stockees dans un tableau?
K.
merci je vais essayer
pour gaby et bien j'ai commencer avec le basic ensuite du pascal et visual
basic aussi maintenant fini au c++
c'est vrai je suis pas programmeur de metier je me amuse disons petit
utilitaire pour moi
je suis italien et je vis en suisse romande mais c'est vrai je suis pas fort
en francais....
j'aurai du mettre en tableau oui mais encore debutant pour ca ca sera une
optimse plus tard...
le or ||
et le or |
quel difference?
merci
"korchkidu" <korch_ki_du@yahoo.fr> a écrit dans le message de news:
4210610a$1@epflnews.epfl.ch...
giovanni wrote:
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc)
et puis difference if ..... {.......}
et
if .... then ....... endif
merci
me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error
before `||' token etc
if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3
| nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then
{a=a+1;
b=b+1;}
merci je vais essayer pour gaby et bien j'ai commencer avec le basic ensuite du pascal et visual basic aussi maintenant fini au c++ c'est vrai je suis pas programmeur de metier je me amuse disons petit utilitaire pour moi je suis italien et je vis en suisse romande mais c'est vrai je suis pas fort en francais.... j'aurai du mettre en tableau oui mais encore debutant pour ca ca sera une optimse plus tard... le or || et le or | quel difference? merci
"korchkidu" a écrit dans le message de news: 4210610a$
giovanni wrote:
pour evite de faire tout les if a peine un if e vraie va au (a=a+1 etc) et puis difference if ..... {.......} et if .... then ....... endif merci me fais erreur ce code la ! (59 E:sauveDev-Cpptest.cpp syntax error before `||' token etc if (nb_22==nb_8) || nb_22==nb_2 || nb_22==nb_3 | nb_22==nb_4|| nb_22==nb_5|| nb_22==nb_6|| nb_22==nb_7) then {a=a+1; b=b+1;}
Par contre, si je peux me permettre, toutes tes variables nb_** ne pourraient-elles pas etre stockees dans un tableau?
K.
Vincent Lascaux
le or || et le or | quel difference?
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en faisant un ou bit à bit des valeurs || est un opérateur booléen. Je peux me tromper, mais je pense que la seule chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b == 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune indication sur la valeur de a || b (hors mis le fait que c'est non nul)).
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de compilateurs, || est équivalent à |) Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 && 4 est non nul
-- Vincent
le or ||
et le or |
quel difference?
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en
faisant un ou bit à bit des valeurs
|| est un opérateur booléen. Je peux me tromper, mais je pense que la seule
chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b
== 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune
indication sur la valeur de a || b (hors mis le fait que c'est non nul)).
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut
utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de
compilateurs, || est équivalent à |)
Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 &&
4 est non nul
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en faisant un ou bit à bit des valeurs || est un opérateur booléen. Je peux me tromper, mais je pense que la seule chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b == 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune indication sur la valeur de a || b (hors mis le fait que c'est non nul)).
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de compilateurs, || est équivalent à |) Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 && 4 est non nul
-- Vincent
Pierre Maurette
le or || et le or | quel difference?
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en faisant un ou bit à bit des valeurs || est un opérateur booléen. Je peux me tromper, mais je pense que la seule chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b == 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune indication sur la valeur de a || b (hors mis le fait que c'est non nul)). Si si. La norme garantit la valeur 1. Une évaluation logique ne peut
conduire qu'à 0 ou 1. C'est le contraire qui n'est pas vrai: une valeur non nulle est considérée comme vraie même si différente de 1. Ainsi: a = (a || a) normalise la valeur da a en booléen (0 ou 1). Comme a = (a && a) et quelques autres.
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de compilateurs, || est équivalent à |) Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 && 4 est non nul AMHA, confondre
(nb_22==nb_3) | (nb_22==nb_4) et (nb_22==nb_3) ||(nb_22==nb_4) est toujours une erreur. D'abord, il faut coder au plus près de la logique, or, | est un opérateur arithmétique et || un opérateur logique. De plus, je ne pense pas que la règle de l'évaluation économique (incomplète) soit appliquée à l'opérateur |: if(exprA || exprB) n'évaluera pas exprB si exprA est vraie. Je ne pense pas que ce soit le cas de: if(exprA | exprB) Disons plutôt que l'évaluation de G à D et incomplète ne sont pas garanties par la norme. C'est alors l'optimisation qui décide. Ce qui peut avoir avantages ou inconvénients, mais là n'est pas la question. -- Pierre
le or ||
et le or |
quel difference?
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en
faisant un ou bit à bit des valeurs
|| est un opérateur booléen. Je peux me tromper, mais je pense que la seule
chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b
== 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune
indication sur la valeur de a || b (hors mis le fait que c'est non nul)).
Si si. La norme garantit la valeur 1. Une évaluation logique ne peut
conduire qu'à 0 ou 1. C'est le contraire qui n'est pas vrai: une valeur
non nulle est considérée comme vraie même si différente de 1. Ainsi:
a = (a || a) normalise la valeur da a en booléen (0 ou 1). Comme
a = (a && a)
et quelques autres.
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut
utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de
compilateurs, || est équivalent à |)
Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 &&
4 est non nul
AMHA, confondre
(nb_22==nb_3) | (nb_22==nb_4)
et
(nb_22==nb_3) ||(nb_22==nb_4)
est toujours une erreur. D'abord, il faut coder au plus près de la
logique, or, | est un opérateur arithmétique et || un opérateur logique.
De plus, je ne pense pas que la règle de l'évaluation économique
(incomplète) soit appliquée à l'opérateur |:
if(exprA || exprB)
n'évaluera pas exprB si exprA est vraie. Je ne pense pas que ce soit le
cas de:
if(exprA | exprB)
Disons plutôt que l'évaluation de G à D et incomplète ne sont pas
garanties par la norme. C'est alors l'optimisation qui décide. Ce qui
peut avoir avantages ou inconvénients, mais là n'est pas la question.
--
Pierre
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en faisant un ou bit à bit des valeurs || est un opérateur booléen. Je peux me tromper, mais je pense que la seule chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b == 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune indication sur la valeur de a || b (hors mis le fait que c'est non nul)). Si si. La norme garantit la valeur 1. Une évaluation logique ne peut
conduire qu'à 0 ou 1. C'est le contraire qui n'est pas vrai: une valeur non nulle est considérée comme vraie même si différente de 1. Ainsi: a = (a || a) normalise la valeur da a en booléen (0 ou 1). Comme a = (a && a) et quelques autres.
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de compilateurs, || est équivalent à |) Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 && 4 est non nul AMHA, confondre
(nb_22==nb_3) | (nb_22==nb_4) et (nb_22==nb_3) ||(nb_22==nb_4) est toujours une erreur. D'abord, il faut coder au plus près de la logique, or, | est un opérateur arithmétique et || un opérateur logique. De plus, je ne pense pas que la règle de l'évaluation économique (incomplète) soit appliquée à l'opérateur |: if(exprA || exprB) n'évaluera pas exprB si exprA est vraie. Je ne pense pas que ce soit le cas de: if(exprA | exprB) Disons plutôt que l'évaluation de G à D et incomplète ne sont pas garanties par la norme. C'est alors l'optimisation qui décide. Ce qui peut avoir avantages ou inconvénients, mais là n'est pas la question. -- Pierre
giovanni
merci "Pierre Maurette" a écrit dans le message de news:
le or || et le or | quel difference?
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en faisant un ou bit à bit des valeurs || est un opérateur booléen. Je peux me tromper, mais je pense que la seule chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b == 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune indication sur la valeur de a || b (hors mis le fait que c'est non nul)). Si si. La norme garantit la valeur 1. Une évaluation logique ne peut
conduire qu'à 0 ou 1. C'est le contraire qui n'est pas vrai: une valeur non nulle est considérée comme vraie même si différente de 1. Ainsi: a = (a || a) normalise la valeur da a en booléen (0 ou 1). Comme a = (a && a) et quelques autres.
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de compilateurs, || est équivalent à |) Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 && 4 est non nul AMHA, confondre
(nb_22==nb_3) | (nb_22==nb_4) et (nb_22==nb_3) ||(nb_22==nb_4) est toujours une erreur. D'abord, il faut coder au plus près de la logique, or, | est un opérateur arithmétique et || un opérateur logique. De plus, je ne pense pas que la règle de l'évaluation économique (incomplète) soit appliquée à l'opérateur |: if(exprA || exprB) n'évaluera pas exprB si exprA est vraie. Je ne pense pas que ce soit le cas de: if(exprA | exprB) Disons plutôt que l'évaluation de G à D et incomplète ne sont pas garanties par la norme. C'est alors l'optimisation qui décide. Ce qui peut avoir avantages ou inconvénients, mais là n'est pas la question. -- Pierre
merci
"Pierre Maurette" <maurettepierre@wanadoo.fr> a écrit dans le message de
news: 37dv8bF5bcm7fU1@individual.net...
le or ||
et le or |
quel difference?
| est un opérateur binaire, le résultat de a | b est le résultat obtenu
en faisant un ou bit à bit des valeurs
|| est un opérateur booléen. Je peux me tromper, mais je pense que la
seule chose qui est garantie, c'est que a || b == 0 si et seulement si
a==0 ou b == 0 (si ce n'est pas le cas, je ne pense pas que la norme ne
donne aucune indication sur la valeur de a || b (hors mis le fait que
c'est non nul)).
Si si. La norme garantit la valeur 1. Une évaluation logique ne peut
conduire qu'à 0 ou 1. C'est le contraire qui n'est pas vrai: une valeur
non nulle est considérée comme vraie même si différente de 1. Ainsi:
a = (a || a) normalise la valeur da a en booléen (0 ou 1). Comme
a = (a && a)
et quelques autres.
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on
peut utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup
de compilateurs, || est équivalent à |)
Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2
&& 4 est non nul
AMHA, confondre
(nb_22==nb_3) | (nb_22==nb_4)
et
(nb_22==nb_3) ||(nb_22==nb_4)
est toujours une erreur. D'abord, il faut coder au plus près de la
logique, or, | est un opérateur arithmétique et || un opérateur logique.
De plus, je ne pense pas que la règle de l'évaluation économique
(incomplète) soit appliquée à l'opérateur |:
if(exprA || exprB)
n'évaluera pas exprB si exprA est vraie. Je ne pense pas que ce soit le
cas de:
if(exprA | exprB)
Disons plutôt que l'évaluation de G à D et incomplète ne sont pas
garanties par la norme. C'est alors l'optimisation qui décide. Ce qui peut
avoir avantages ou inconvénients, mais là n'est pas la question.
--
Pierre
merci "Pierre Maurette" a écrit dans le message de news:
le or || et le or | quel difference?
| est un opérateur binaire, le résultat de a | b est le résultat obtenu en faisant un ou bit à bit des valeurs || est un opérateur booléen. Je peux me tromper, mais je pense que la seule chose qui est garantie, c'est que a || b == 0 si et seulement si a==0 ou b == 0 (si ce n'est pas le cas, je ne pense pas que la norme ne donne aucune indication sur la valeur de a || b (hors mis le fait que c'est non nul)). Si si. La norme garantit la valeur 1. Une évaluation logique ne peut
conduire qu'à 0 ou 1. C'est le contraire qui n'est pas vrai: une valeur non nulle est considérée comme vraie même si différente de 1. Ainsi: a = (a || a) normalise la valeur da a en booléen (0 ou 1). Comme a = (a && a) et quelques autres.
Pour | et || la différence n'est pas fondammentalle étant donnée qu'on peut utiliser | à la place de || (d'ailleurs je suppose que sur beaucoup de compilateurs, || est équivalent à |) Ce n'est pas le cas pour & et && : 2 & 4 == 0 et la norme garantie que 2 && 4 est non nul AMHA, confondre
(nb_22==nb_3) | (nb_22==nb_4) et (nb_22==nb_3) ||(nb_22==nb_4) est toujours une erreur. D'abord, il faut coder au plus près de la logique, or, | est un opérateur arithmétique et || un opérateur logique. De plus, je ne pense pas que la règle de l'évaluation économique (incomplète) soit appliquée à l'opérateur |: if(exprA || exprB) n'évaluera pas exprB si exprA est vraie. Je ne pense pas que ce soit le cas de: if(exprA | exprB) Disons plutôt que l'évaluation de G à D et incomplète ne sont pas garanties par la norme. C'est alors l'optimisation qui décide. Ce qui peut avoir avantages ou inconvénients, mais là n'est pas la question. -- Pierre