Programme en C

Résolu
Signaler
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011
-
Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
-
bonjour, je code actuellement un petit programme en C , ce programme à pour but de demander au client de définir son budget cadeau et en fonction de son budget , lui proposer un objet.
une fois ceci fait le programme doit proposer au client d'accéder au site web , jusque ici tout marche bien , mais à ce moment la le client doit choisir si il veut oui ou non accéder au site , mais quoi qu'il réponde la page s'ouvre , je ne comprend pas.

je vous met ci dessous le programme.

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int budget; int web;
printf("Quel est votre budget ? ");
scanf("%d",&budget);
printf("\n");
if ((budget >= 15) && (budget <= 30)) { printf("Resultat => Nous vous proposons le lecteur de DVD de marque Samsung");}
else if ((budget >= 30) && (budget <= 55)) { printf("Resultat => Nous vous proposons un ensemble Home Cinema SONY");}
else if ((budget >= 55) && (budget <= 70)) { printf("Resultat => Nous vous proposons une tele ecran plat Philips");}
else if ((budget > 70)) { printf("Resultat => Contacter nous pour une offre commerciale");}
printf("\n");
printf("\n");
{ printf("Souhaitez vous acceder a notre Site Web ? 1=OUI/2=NON");}
printf("\n");
scanf("%d",&web);
if (web = 1) { printf("\nOuverture de la page en cours");}
system("start www.tf1.com");
else (web = 2) { printf ("Merci d'avoir utiliser ce programme.");}
system("PAUSE>nul");
return 0;}


Merci de votre aide.

13 réponses

Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
Bonjour.
Tu as mis "=" au lieu de "==", tout simplement :)

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011

oh mince quel boulet ^^, merci beaucoup sa marche niquel :)
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011

ah oui, une derniere chose , saurais-tu pourquoi lorsque je choisit d'acceder au xite, les 2 messages (Ouverture de la page en cours et Merci d'avoir utiliser ce programme.) apparaissent ?

merci de ton aide.
Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
Oui. Tu n'as pas mis d'accolade aux bons endroits. Indente ton code !
Je suis même étonné que ça compile.

if (web = 1)
{
printf("\nOuverture de la page en cours");
}
system("start www.tf1.com");
else (web = 2)
{
printf ("Merci d'avoir utiliser ce programme.");
}
system("PAUSE>nul");



________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011

eh bien j'ai déja essayer avec ta méthode mais cela me retourne une erreur "syntax error before else"
Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
En rouge, ça veut dire que c'est mal placé...

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
  int budget;
  int web;

  printf("Quel est votre budget ? ");
  scanf("%d", &budget);
  printf("\n");
  if ((budget >= 15) && (budget <= 30))
    printf("Resultat => Nous vous proposons le lecteur de DVD de marque Samsung");
  else if ((budget > 30) && (budget <= 55))
    printf("Resultat => Nous vous proposons un ensemble Home Cinema SONY");
  else if ((budget > 55) && (budget <= 70))
    printf("Resultat => Nous vous proposons une tele ecran plat Philips");
  else if ((budget > 70))
    printf("Resultat => Contacter nous pour une offre commerciale");
  else
    printf("FIXME: Gérez budget inconnu ! (< 15 ?)");

  printf("\n\n");

  printf("Souhaitez vous acceder a notre Site Web ? 1=OUI/2=NON\n");
  scanf("%d", &web);
  if (web == 1)
  {
    printf("\nOuverture de la page en cours");
    system("start www.tf1.com");
  }
  else (web == 2)
    printf ("Merci d'avoir utiliser ce programme.");
  else
    printf("Erreur ?\n");

  system("PAUSE>nul");

  return 0;
}


________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011

pfiou sa voudrait dire qu'il y'a tant d'erreur que sa ? je code sous dev c++ et il ne me retourne une erreur que sur le else.
Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
Prend un IDE récent...
Dev-C++ a deux soucis majeurs:
- Il a un compilateur de C++, pas de C ! Donc la plupart des trucs du C fonctionne en C++, mais attention aux subtilités...
- Il embarque un trèèèès vieux compilateur. Je te conseil un IDE plus récent, comme QtCreator, Code::Block ou Visual Studio Express.

Le souci, c'est que tous les débutants se font avoir, parce que ce vieux projet a un nom qui apparait souvent en tête des moteurs de recherches :(

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011

d'accord , je te remercie de ta patience :).
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011

c'est bon ducoup j'ai trouvé une parade en ajoutant un system("PAUSE>nul");
Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
Petite erreur:
else (web 2)> else if (web == 2)

Je n'ai pas testé :)

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Messages postés
10
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
14 décembre 2011

eh bien je n'es pas mit de else if car il n'ya qu'une seul condition , c'est un choix booleen , c'est ou le client accepte ou il n'accepte pas , il n'ya donc pas besoin d'ajouter un if qui sous entendrais qu'il y'aurai plusieurs conditions non ?

PS: j'ai quand même tester avec le if avant de demander de l'aide ici mais cela me retourne quand même l'erreur du else.

mais la c'est bon ducoup avec la parade du system("pause>nul"); :)
Messages postés
3834
Date d'inscription
dimanche 12 décembre 2004
Statut
Modérateur
Dernière intervention
20 octobre 2021
124
Je t'invite à regarder de nouveau la correction que je t'ai proposé (j'ai corrigé une erreur dans cette correction).

il n'ya donc pas besoin d'ajouter un if qui sous entendrais qu'il y'aurai plusieurs conditions non ?

Et si je ne met, ni 1, ni 2, que se passe-t-il ? Il faut le gérer ou changer ta condidition en:
(Avec 0 => faux sinon vrai).

if (web)
{
  printf("\nOuverture de la page en cours");
  system("start www.tf1.com");
}
else
  printf ("Merci d'avoir utiliser ce programme.");



________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question