Probléme avec le ''if'' du langage C

Résolu/Fermé
BaBeL - Modifié par green day le 7/11/2010 à 15:36
 BaBeL - 7 nov. 2010 à 18:04
Bonjour,

je voudrait bien savoir où est le probleme dans ce programme C , je veux qu'il affiche juste un résultat , même en écrivant if il me donne les 2 , mais moi je veux qu'une seul
P.S : quand j'écrit else a la place de if
le compilateur dev C ++ , il m'écrit " 17 C:\Tc\BIN\EXE2.CPP expected ';' before "else" "
#include<stdio.h>
#include<conio.h>
main()
{
float a,b,c,choix,s,O,N,k,s2;
printf("Donner la 1ere resistance ",a);
scanf("%f",&a);
printf("Donner la 2eme resistance ",b);
scanf("%f",&b);
printf("Donner la 3eme resistance ",c);
scanf("%f",&c);
printf("Si le Branchement est en Série Appuyer sur O , Si le Branchement est en Parallèle Appuyez Sur N",choix);
scanf("%f",&choix);
if ( choix == O );
s=a+b+c; {
printf(" Le Totale des résistances est : %f",s); }
if ( choix==N );
k=(1/b)+(1/c)+(1/a);
s2=1/k; {
printf(" Le Totale des résistances est : %f",s2); }
getch();
}



edit : titre.
A voir également:

2 réponses

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
7 nov. 2010 à 15:43
Il ne faut pas mettre de ";" après un if, mais directement les instructions "then"

if (1==2)
{
    printf("1==2 : Chouette je vais révolutionner les maths !");
}
else
{
    printf("1!=2 : Mon prof de maths disait donc vrai !");
}
1
il m'affiche le même résultat :S
le 2eme résultat seuelement
#include<stdio.h>
#include<conio.h>
main()
{
float a,b,c,choix,s,k,s2;
printf("Donner la 1ere resistance ",a);
scanf("%f",&a);
printf("Donner la 2eme resistance ",b);
scanf("%f",&b);
printf("Donner la 3eme resistance ",c);
scanf("%f",&c);
printf("Si le Branchement est en S'rie Appuyer sur 1 , Si le Branchement est en\nParall'le Appuyez Sur n'importe quel touche",choix);
scanf("%f",&choix);
s=a+b+c;
k=(1/b)+(1/c)+(1/a);
s2=1/k;
if ( choix == 1 ) {
printf(" lsdsqjfqsfsq %f",s); }
else {
printf(" dsjdqsjdqsfq %f",s2); }
getch();
}
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
7 nov. 2010 à 16:11
Pas mal d'erreur.
if ( choix == O );
Ceci veut dire : est-ce que la variable choix est égale à la variable O ?

Il faut donc enlever le point-virgule comme déjà signalé plus haut et en plus dans ton cas : if (choix=='O');
Tu souhaites savoir si l'utilisateur à taper sur la lettre O non ?
Dans ce cas, il faudra également rebaptiser ta variable choix en char.
Et les variables O, N sont inutiles puisque ce ne sont pas des variables.

Cdlt,
0
merci pour la remarque
j'ai trouvé le problème
merci infiniment :)
0