Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2195 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Besoin d'aide pour créer un programme

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Besoin d'aide pour créer un programme

n°2203675
fran_collo​mbon
Posté le 20-09-2013 à 19:39:08  profilanswer
 

Bonjour à tous !  
 
J'aurais besoin d'aide ! Je suis étudiant en informatique de gestion et je dois créer un programme simple dont voici les consignes : "Réalisez un programme qui calcule le prix total à payer pour une réservation.  On suppose que le prix par adulte est de 15 euros TTC et celui des enfants, de 5 euros TTC ."
 
Est-ce que quelqu'un qui s'y connaît peut m'aider ? Je ne vous demande pas de me faire le programme et que je fasse bêtement un copier/coller sans rien comprendre, ce n'est absolument pas mon but !  
 
Merci d'avance à tous.

mood
Publicité
Posté le 20-09-2013 à 19:39:08  profilanswer
 

n°2203677
theshockwa​ve
I work at a firm named Koslow
Posté le 20-09-2013 à 19:49:08  profilanswer
 

ben, tu as commencé ? montre nous ce que tu as fait ...


---------------
last.fm
n°2203680
fran_collo​mbon
Posté le 20-09-2013 à 20:12:14  profilanswer
 

Oui et non. Je n'ai eu que un cours de programmation et le prof nous demande déjà de réaliser çà... Je ne sais pas comment faire.
Voilà ce que j'ai "déjà" écrit : (Je sais même pas si c'est juste)
 
#include <stdio.h>
#include <math.h>
float calcul_prix (float adultes, float enfants);
int main()
{  
float adultes, enfants, prix;
 
printf("Calcul du prix d'une reservation\n\nNombre d'adultes : " );
scanf("%f%*c", &adultes);
printf("Nombre d'enfants: " );
scanf("%f%*c", &enfants);
prix = calcul_prix(adultes, enfants);
printf("%.2f", prix);

n°2203683
Farian
Posté le 20-09-2013 à 20:32:52  profilanswer
 

Bonjour !
 
Tout d'abord, une question, dont dépendra la suite : Devez-vous faire ce programme en C ou en C++ ? Car vous postez dans la rubrique C++ et écrivez en C.
 
Sinon, pourquoi utiliser des flottants pour les nombres d'enfants et d'adultes ? :)
 
Bonne continuation !

n°2203684
fran_collo​mbon
Posté le 20-09-2013 à 20:37:04  profilanswer
 

C'est bien en C++ ! Je ne sais même pas quelles sont les différences entre le C et le C++. :p Je suppose que je devrais plutôt écrire en int c'est çà ? Si je me souviens bien, on utilise plus les float pour les chiffres à virgules c'est bien çà ?

n°2203686
Farian
Posté le 20-09-2013 à 20:53:42  profilanswer
 

Dans l'ordre :  
 
 * Parmi les différences, l'utilisation des streams (en l'occurence, std::cout et std::cin)
 * Oui, à moins qu'on ne puisse saisir 1,23 adultes et 4,5 enfants :)
 * Tout à fait
 
Je vous laisse le soin de réécrire la partie de saisie/affichage du code précédent en vous basant sur les exemples trouvables un peu partout.
 
Bonne continuation !

n°2203687
fran_collo​mbon
Posté le 20-09-2013 à 20:55:47  profilanswer
 

#include <stdio.h>
#include <math.h>
int calcul_prix (int adultes, int enfants);
int main()
{  
int adultes, enfants, prix;
 
printf("Calcul du prix d'une reservation\n\nNombre d'adultes : " );
scanf("%f%*c", &adultes);
printf("Nombre d'enfants: " );
scanf("%f%*c", &enfants);
prix = calcul_prix(adultes, enfants);
printf("%.2f", prix)
 
Ca donne être bon comme çà, mais mnt je suis bloqué. :(

n°2203688
Farian
Posté le 20-09-2013 à 21:24:21  profilanswer
 

Bon ...
 
Étant de bonne humeur ce soir, je vais me contenter de m'auto-paraphraser :  
 
 * Si vous dites faire du C++, pourquoi écrivez-vous du C ?
 * ... (en l'occurence, std::cout et std::cin)
 
Maintenant, vous êtes libre de ne pas suivre mes remarques, c'est votre droit le plus absolu, je me contenterai de me désintéresser de ce sujet :)
 
Bonne continuation.

n°2203689
Terminapor
I'll see you rise.
Posté le 20-09-2013 à 21:28:30  profilanswer
 

Qui plus est, la fonction calcul_prix a son prototype défini mais pas le corps, faut que tu l'écrive aussi :spamafote:
 
Et en C++ faut faire #include<cstdio> ou  #include<cmath>, etc mais tu n'es pas censé te servir de ces libs là.
 
Pour l'entrée/sortie console, il te faudra utiliser std::cin / std::cout comme déjà dit, qui sont disponible via #include<iostream>.


---------------
Perhaps you don't deserve to breathe
n°2203716
fran_collo​mbon
Posté le 21-09-2013 à 11:45:46  profilanswer
 

Merci bcp pour votre aide, mais j'avoue de pas vraiment comprendre ce que vous me dites... Comme je vous le disais, je n'ai que un cours de programmation... :'(

mood
Publicité
Posté le 21-09-2013 à 11:45:46  profilanswer
 

n°2203718
Terminapor
I'll see you rise.
Posté le 21-09-2013 à 12:17:54  profilanswer
 

La commande "#include" te permet d'utiliser une librairie (c'est une vulgarisation pour que ce soit plus simple à comprendre, t'as pas intérêt à sortir ça si t'es interrogé sur la pre-processive include :D), par exemple :

 

#include <cmath> te permettra d'utiliser les fonctions dans cmath (cos, sin, tan, pow, etc,etc) dans ton fichier.
#include <cstdio> te permettra d'utiliser les commandes d'entrée/sortie C standard (printf, scanf, etc).

 

En C++, pour l'entrée / sortie on se sert de std::cin et std::cout, qui sont disponible via #include <iostream>.

 

Un petit exemple d'utiliser de std::cout, qui va te permettre d'afficher des trucs sur ta console :

Code :
  1. #include <iostream>
  2. int main()
  3. {
  4.   // On affiche hello world, suivi d'un retour à la ligne.
  5.   // std::endl peut très bien être remplacé par le caractère spécial "\n", mais la gestion du retour à la ligne dépend de l'OS (\n pour Unix, \r\n pour Windows, \r pour Mac si je me se souviens bien)
  6.   std::cout<<"hello world"<<std::endl;
  7.   // La concaténation (mettre des textes bout-à-bout) se fait en accumulant des "<<" :
  8.   std::cout<<"Hello "<<"World"; // Affichera "Hello World" sans retour à la ligne.
  9.   int i = 20;
  10.   float f = 3.256f;
  11.   // Voilà un petit exemple pour afficher des valeurs de variables (exemple avec un int et un float), il te fera la conversion en texte tout seul (tant que c'est un type natif)
  12.   std::cout<<"La variable i vaut "<<i<<", la variable f vaut "<<f<<std::endl;
  13. }
 

Et un petit exemple avec std::cin qui te permet de saisir une valeur :

 
Code :
  1. #include <iostream>
  2. int main()
  3. {
  4.   int  i = 0,
  5. // L'ordre des "<<" et ">>" est important
  6. // Imagine que cin/cout représente ta console, << tu mets dans ta console (affichage), et >> tu récupère de ta console (saisie)
  7. std::cout<<"Saisissez i :"<<std::endl;
  8. std::cin>>i;
  9. std::cout<<"Vous avez saisi "<<i<<std::endl;
  10. }
 

Voilà pour le std::cin / std::cout, maintenant l'appel de fonction (un exemple avec une fonction qui renvoit le carré d'une valeur)

 
Code :
  1. #include <iostream>
  2. // La fonction Carre prend un entier en paramètre et renvoi un entier
  3. int Carre(int x)
  4. {
  5.   return x*x;
  6. }
  7. int main()
  8. {
  9.   int  i = 0;
  10. // L'ordre des "<<" et ">>" est important
  11. // Imagine que cin/cout représente ta console, << tu mets dans ta console (affichage), et >> tu récupère de ta console (saisie)
  12. std::cout<<"Saisissez i :"<<std::endl;
  13. std::cin>>i;
  14. int ii = Carre(i);
  15. std::cout<<"Le carre vaut "<<ii<<std::endl;
  16. }
 


Je t'invite grandement à sur-abuser de ton ami Google, tu trouvera des milliards d'informations / docs sur des libs ou fonctions qui répondront à quasiment toutes tes questions ;)


Message édité par Terminapor le 21-09-2013 à 12:19:35

---------------
Perhaps you don't deserve to breathe
n°2203731
fran_collo​mbon
Posté le 21-09-2013 à 17:00:04  profilanswer
 

J'AI REUSSI ! J'ai juste un petit soucis... Lorsque je rentre le nombre d'enfants, il calcule et la fenêtre se ferme directe... Comment la retenir ouverte ?

n°2203739
Terminapor
I'll see you rise.
Posté le 21-09-2013 à 18:45:51  profilanswer
 

heu, si t'utilises Code::Blocks, tu as une option pour mettre en pause le programme à la fin, sinon tu peux aussi rajouter un std::cin bidon avant le return 0 du main (manière un peu dégueu :D), ou alors t'as peut-être une fonction pause dispo.


---------------
Perhaps you don't deserve to breathe
n°2203740
Profil sup​primé
Posté le 21-09-2013 à 19:50:54  answer
 

Farian a écrit :

Bonjour !
 
Tout d'abord, une question, dont dépendra la suite : Devez-vous faire ce programme en C ou en C++ ? Car vous postez dans la rubrique C++ et écrivez en C.
 
Sinon, pourquoi utiliser des flottants pour les nombres d'enfants et d'adultes ? :)
 
Bonne continuation !


 
 
Parce qu'il s'est trompé, c'est le prix pour les enfants et le prix pour les adultes.
Il suffis de faire la sommes des deux.

n°2203756
fran_collo​mbon
Posté le 22-09-2013 à 12:07:33  profilanswer
 

J'ai utilisé des int partout pour finir.  
Encore une question, que signifie le %u ? Alors que dans un autre programme réalisé, je mettais des %f ?
C'est p-e parce que %u = pour int et les %f = float ?

n°2203757
Farian
Posté le 22-09-2013 à 12:24:09  profilanswer
 
n°2203760
Terminapor
I'll see you rise.
Posté le 22-09-2013 à 13:04:07  profilanswer
 

%u = unsigned int, mais t'es pas censé te servir des printf/scanf puisque t'es supposé l'écrire en C++.


---------------
Perhaps you don't deserve to breathe

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Besoin d'aide pour créer un programme

 

Sujets relatifs
Besoin d'aide pour un Slider (Blogger)Inclure un compilateur dans un programme
Besoin d'idée coulée faire le code source en C + +Besoin d'aide pour la comprehension d'un script
Créer un fichier et l'envoyer en vbaAide création boutique en ligne
Créer un xml document à partir d'un autreBesoin d'aide pour HTML/CSS
Plus de sujets relatifs à : Besoin d'aide pour créer un programme


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR