Programme en C, aider moi merci

Statut
N'est pas ouverte pour d'autres réponses.
G

Guest

ex membre
Voila je doit rendre en programme en C mais je m'y connias pas si qqun savait m'aider. Merci

Voici l' énoncé :
:arrow: ecrire un prog qui demande a l'utilisateur :
:arrow: le jour de la semaine(0=dimanche,....,6=samedi)
:arrow: l'heure (heure, minute)
:arrow: age et sexe
et qui affiche, si les réponses sont coherentes ( faire fonction qui prend les données en parametre et qui retorune vrai ou faux) une phrase adaptée.

"Bonjour Madame, j'espere que vous passez un bon weekend" si on est le weekend et que c une dame.

A cette heure ci il vaudrait mieux dormir jeune homme"

ENfin voila moi je capte rien alors si ya des star de l'informatique qu'il me fasse un truc.( le prof a dit avec des if, des else,...des truc pas trop compliqué c le début de l'année) lol :D
 
je v essayer de t'aider avec ce que j'ai compris de ton énoncé...
 

FoX2000

Revenant
Pas posté dans la bonne section!



ok, :arrow: ==>
 
Code:
/* ---------------------------------------------------------------------------
    Pour un gamerz...
---------------------------------------------------------------------------  */
#include <stdio.h>
#include <stdlib.h>
/*---------------------------------------------------------------------------*/
/* pour répondre à l'utilisateur */
void reponse(char sexeUser, int jourSemaine, int heure);
/*---------------------------------------------------------------------------*/
int main(int argc, char* argv[])
{
    /* les variables à utiliser */
    char sexeValide;
    int jourValide, hhValide, mmValide;

    printf("Bonjour, veuillez entrer les informations suivantes\n"
           "---------------------------------------------------\n\n");
    printf("Quel est votre sexe   ? [M - F] ");
    /* faire la validation - très simple */
    scanf("%c",&sexeValide);

    /* Pour le jour + vérification */
    printf("Quel jour sommes-nous ? [0 - 6] ");
    do
    {
        scanf("%d",&jourValide);
        if ((jourValide < 0) || (jourValide > 6))
            printf("incorrect, veuillez recommencer... ");
    }
    while ((jourValide < 0) || (jourValide > 6));
    /* Pour l'heure + vérification */
    printf("Quelle heure est-il ?   [0 - 23] ");
    do
    {
        scanf("%d",&hhValide);
        if ((hhValide < 0) || (hhValide > 23))
            printf("incorrect, veuillez recommencer... ");
    }
    while ((hhValide < 0) || (hhValide > 23));
    /* Pour les minutes + vérification ---> les min sont-elles UTILES ???? */
    printf("Le nombre de minutes ?  [0 - 59] ");
    do
    {
        scanf("%d",&mmValide);
        if ((mmValide < 0) || (mmValide > 59))
            printf("incorrect, veuillez recommencer... ");
    }
    while ((mmValide < 0) || (mmValide > 59));

    /* appel de la fonction de réponse */
    reponse(sexeValide, jourValide, hhValide);

    printf("\n\n");
    /* il s'agit d'un appel système, tu peux le faire toi-même
       via
       puts("Veuillez appuyez sur une touche...");
       getch();
       */
    system("pause");
    return 0;
}
/*---------------------------------------------------------------------------*/
void reponse(char sexeUser, int jourSemaine, int heure)
{
    if (sexeUser == 'M')
        printf("\nJeune homme,\n");
    else
        printf("\nJeune fille,\n");
    if (jourSemaine > 4)
    {
        printf("Nous vous souhaitons un bon week-end, ");
        if ((heure > 17) || (heure < 5))
            printf("\nil est temps de se préparer pour le \"cinéma\"\n"
                   "ou bien de penser à étudier un peu...\n");
        else
            printf("bye...\n");
    }
    else
    {
        printf("Nous vous souhaitons une bonne semaine, ");
        if ((heure > 23) || (heure < 5))
            printf("à cette heure-ci, il vaudrait mieux dormir...\n");
        else
            printf("travaillez bien!\n");
    }
}
/*---------------------------------------------------------------------------*/

un exemple possible, du moins de ce que j'ai déchiffrer de l'énoncé...


Oui bon pour l'age, ben tu rajoutes une entrée...

Si tu as envie de traiter des tranches d'âges, ben tu utiliseras un "switch"

Code:
switch (age)
{
    case 18:
    {
        printf("Jeune homme/fille"); /* tu testes avec un if */
        break;
    }
    case 35:
    {
        printf("Monsieur/Madame"); /* tu testes avec un if */
        break;
    }
    default:
    {
        printf("Hum...");
        break;
    }
}
 
pour apprendre du C facilement : Claude Delannoy

"C Premier langage"
"Programmer en C"
"Exercices en langage C"
 

LebecK

Elite
et moyennant $ .. mav vient te coacher pendant ton dure apprentissage :wink:
j admire .. j ai fait du c ya 2 an .. et la a chaud .. j serais plus ecrire un prog coherant

tu boss dans la programation mav en fait ?

sinon j appuie sur les delanoy .. ils sont tous bon
 
LebecK a dit:
et moyennant $ .. mav vient te coacher pendant ton dure apprentissage :wink:
j admire .. j ai fait du c ya 2 an .. et la a chaud .. j serais plus ecrire un prog coherant

tu boss dans la programation mav en fait ?

sinon j appuie sur les delanoy .. ils sont tous bon

ben je v pas mentir, j'ai du reprendre un book pour écrire les bêtes printf et scanf, en C++, les cin, cout sont magiques car on ne doit plus se préocuper du type de l'objet (enfin pour les primitifs connus, si c'est pour l'utilisateur, faudra surdéfinir les opérateurs de flux...)

Sinon, je fais de la pgm OO en C++, C+mieux que du C pur et ya pas mal de problèmes résolus "gratuitement", merci la STL.
 

martini

OldSch00l
conseillons quand meme a notre amis que sans etudier il ny arrivera jamais, la programmation, mon chere, est une etudes de mise a jour, tu laisse tomber ne fuske ke 1semaines, ten aura besoin d'une autre pour reapprendre rien ke les bases, surtout si c tes debuts, enfin soit, mon conseil ne servira surment a rien, mais crois moi, rien ne vient tout seul :wink:
 

zoheir

cvm.mangaleet()
ptetre rajouter des toupper qd tu scan un caractère (si l'utilisateur entre une minuscule...)
 

Jereck

Α & Ω
Staff
Tu es à l'InPrES ?
 

D m S

Elite
Lol si c est un dossier de l inpress il est trop lol :).
 

Orime

Toxic avenger
l'énoncé est trop debile pour etre donné en premiere a l'inpres a ce moment ci de l'année ...
 

Orime

Toxic avenger
et pour ls books de Delannoy j'utilise "exercice de programmation en c++ " pour le moment c assez bien fait en effet ...

pour le C (et le c++ aussi )
j'utilise la bible C/C++ de chez Reynald Goulet

c complet et pratique
 
Pour le C++, ben hum

Commençons par :

Delannoy : Programmer en C++ (il va direct au coeur du sujet)
Deitel & Deitel : Comment programmer en C++ (très, ultra complet, facile à lire)
Bjarne StroupStrup (ben c'est hum, complet mais pas le top pour ce qui est de donner des exemples, il décrit toutes les classes de la STL)


Les exos de C++ de Delannoy, j'ai aussi mais disons que pour les réaliser en C, hum :D Ca va structurer dans tous les sens et de toute façon toute la puissance du C++ ne sera pas atteinte.

Par contre des exos de C intéressant, ce sont les fonctions récursives, les listes chaînées ...
 

guslinux

Gamerz'ien
TRICCCHHHHHHHHHEEEEEEEEEUUUUUUUUURRRRRRRRRRRRr

Si le prof te demande de réfléchir là dessu, c'est pas pour aller piquer les réponces ailleur :D si non à l'exam tu seras quand meme ds la merde :roll:

'fin j'dis ca j'dis rien, moi j'ai eu 79% en Langage C en fin de 1e graduat :cool: et 65% en Principe de programmation ... :D :D
 
Ben g juste donné un exemple, s'il a compris les tests, ben il sait continuer le reste de son "projet".
 
hé mn'homme t mort ?



Sinon, un truc pas mal c'est aussi de jouer avec des énumérations pour les jours...


typedef enum jour {LUNDI, MARDI, MERCREDI, ..., VENDREDI};

LUNDI correspond à 0 (à moins de spécifier une autre valeur), et les jours suivants s'incrémentent de 1 ...
=> lundi correspond à 0, mardi à 1 , mercredi à 2 etc...


Si LUNDI=5, ....
=> lundi correspond à 5, mardi à 6 , mercredi à 7 etc...


Now faut faire les conversions... switch (jour) { case LUNDI: ...}

=> char * (C), des string (C++)
 

guslinux

Gamerz'ien
TITM4v3rick a dit:
hé mn'homme t mort ?



Sinon, un truc pas mal c'est aussi de jouer avec des énumérations pour les jours...


typedef enum jour {LUNDI, MARDI, MERCREDI, ..., VENDREDI};

LUNDI correspond à 0 (à moins de spécifier une autre valeur), et les jours suivants s'incrémentent de 1 ...
=> lundi correspond à 0, mardi à 1 , mercredi à 2 etc...


Si LUNDI=5, ....
=> lundi correspond à 5, mardi à 6 , mercredi à 7 etc...


Now faut faire les conversions... switch (jour) { case LUNDI: ...}

=> char * (C), des string (C++)
zy va pas trops fort ... il est tjs entrain d'essayer de comprendre le script plus haut ... alors commence pas avec les switch ... :D
 

k o D

Elite
tu aurais du faire un prog en turbo pascal je te l'aurais pondu mais en C, je connais pas encore
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut