CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Programme, gestion de notes en C

[Original]
[Original]
Niveau 7
12 novembre 2011 à 18:05:27

Bonsoir :)

Voila le programme que je dois faire en C.

Description du problème
Vous devez réaliser un programme permettant de calculer une moyenne semestrielle. Le programme demande à l’utilisateur de saisir le nombre de notes qu’il veut introduire.
Ces notes vont de 1 à 6. Le programme contrôle que les données saisies soient correctes.
Lorsque la dernière note a été saisie, il affiche un message
selon les critères suivants :

De 1.0 à 3.0 => Largement insuffisant
De 3.0 à 4.0 => Insuffisant
De 4.0 à 4.5 => Suffisant
De 4.5 à 5.5 => Bien
De 5.5 à 6.0 => Excellent

Point facultatif 1 : Les notes sont arrondies au dixième.
Point facultatif 2 : Une fois la moyenne calculée, le programme demande à l’utilisateur si il veut recommencer.

La seul problématique que je rencontre c'est comment déclarer le nombre de variable en fonction du nombre de note qu'il veut entrer!
En gros comment faire en sorte que le programme sache que l utilisateur veut entrer 120 note par exemple et comment les stocker!

voila le porblème, je ne demande pas spécialement la ligne de code mais pouvez vous em mettre sur la piste?

Voila mes connaissance en C:
Les librairie: stdlib.h / stdio.h
printf/scanf
else if
do while
int, et plus ou moin float
et les différents opéarateur, opérateur logiques
en gros, les bases.
Je vous remercie d'avance!

PS:
Les notes qui figure dans le programme sont des note scolaire du système suisse en gros un 1 c'est la plus m'auvaise note( 1.1, 1.2, 1.3 etc jusque à 6.0 qui correspond à un 20/20.

[Original]
[Original]
Niveau 7
12 novembre 2011 à 18:10:06

En gros je penssais faire:

int nbrdenote = 0

while( nbrdenote == nbrdenote)
printf("Entrez le nombre de note que vous voulais saisire");
scanf("%i",&nbrdenote);

Je pense être sur la bonne voix mais...un doute persiste.

Pocolo
Pocolo
Niveau 10
12 novembre 2011 à 18:19:55

" while( nbrdenote == nbrdenote) "

nbrdenote sera toujours égal a nbrdenote, on ne teste pas si une variable est égale à elle-même, ça n'a pas de sens. :(

[Original]
[Original]
Niveau 7
12 novembre 2011 à 18:22:58

Et si ca peut vous aidez voila comment on calcule la moyenne:

note+note+note+note.....= Resultat
Resultat / Le_nombre_de_Note

String[]args
String[]args
Niveau 23
12 novembre 2011 à 18:24:39

C'est la seconde fois en 2 jours que je vois un "while(b==b)", ça a l'air d'être un virus qui se propage ce non-sens... :o))

[Original]
[Original]
Niveau 7
12 novembre 2011 à 18:25:01

Pocolo

Je sais que c'est faut mais je voulais faire en sorte que
d'une fois qu'on à rentrer le nombre de note voulue on quitte la boucle mais ensuite comment allez cherchez chaque note pour les calculer.

Pocolo
Pocolo
Niveau 10
12 novembre 2011 à 18:28:29

Tu es obligé de stocker chaque note individuellement?

Ça m'a l'air d'être un travail de niveau débutant donc j'imagine que non.

Et si j'ai raison, ce que tu pourrais simplement faire c'est d'ajouter la note que l'utilisateur vient d'entrer au résultat, et tu fais de même à chaque fois que l'utilisateur entre une note.

Tu incrémentes également un compteur de notes après l'ajout de chaque note.

[Original]
[Original]
Niveau 7
12 novembre 2011 à 18:29:43

ha oui, le ++

Je vais voir ca, merci

[Original]
[Original]
Niveau 7
12 novembre 2011 à 18:39:16

HA voila ce que ca donne:
int nbrdenote = 0;
int note = 0;
int compteur = 0;

printf("Entrer le nombre de notes que vous désirez saisire");
scanf("%i",&nbrdenote);

do{
printf("Veuiller entrer les notes:");
scanf("%i",&note);
compteur++;
}while( compteur != nbrdenote);

Maintenant reste à faire cette moyenne, hésitez pas à me mettre sur la piste.
Merci :ok:

Aldebran
Aldebran
Niveau 10
12 novembre 2011 à 18:39:58

[Original] :d) Si ça peux t'aider, voici le schéma général du programme :

1) On déclare les variables (pour une première approche on peut en utiliser quatre, note, Resultat, Le_nombre_de_Note et nombre_de_note_saisies)
2) On demande à l'utilisateur combien il veut entrer de notes, on stocke ce résultat
3) Tant que l'utilisateur n'a pas saisi toutes les notes (tant que le nombre de notes saisi est inférieur au nombre de notes à entrer), on demande les notes à l'utilisateur et simultanément on commence le calcul de la moyenne
4) L'utilisateur a rentré toutes les notes, une dernière opération permet de calculer la moyenne
5) On affiche la moyenne avec le petit commentaire qui va bien

Aldebran
Aldebran
Niveau 10
12 novembre 2011 à 18:42:23

Ah tu as été plus rapide que moi :)

Pour que le calcul de la moyenne, demande-toi comment tu peux calculer note+note+note+note.....= Resultat à l'aide de ta boucle do while.

[Original]
[Original]
Niveau 7
12 novembre 2011 à 18:56:32

Bon voila ce que j'obtiens:

int nbrdenote = 0;
int note = 0;
int compteur = 0;
int resultat = 0;
int moyenne = 0;

printf("Entrer le nombre de notes que vous desirez saisire\n");
scanf("%i",&nbrdenote);

do{
printf("Veuiller entrer les notes:");
scanf("%i",&note);
note+note = resultat;
compteur++;
}while( compteur != nbrdenote);

printf("%i",resultat/nbrdenote=moyenne);
scanf("%i",&moyenne);

J'ai un doute sur la partie note+note = resultat, c'est censé additionner chaque note..

et le calcul de la moyenne à al fin. :/ :)

Pocolo
Pocolo
Niveau 10
12 novembre 2011 à 19:07:03

Oula, il y a des trucs qui sont à revoir, surtout au niveau des opérateurs, tu n'as visiblement pas bien compris comment ça marche, relis tes cours à ce niveau-là;

Déjà "note+note = resultat;" devrait donner une erreur de compilation. Avec l'opérateur "=" tu affectes une valeur (située à droite de l'opérateur) à la variable située à gauche de cet opérateur et "note+note" n'est pas une variable (ici l'opérateur + renvoie un entier correspondant à l'ajout de note+note).

Puis c'est pareil pour "resultat/nbrdenote=moyenne".

[Original]
[Original]
Niveau 7
12 novembre 2011 à 19:08:58

Bien merci, je vais revoir tout cela :)

Naja[jv]
Naja[jv]
Niveau 10
12 novembre 2011 à 19:28:17

J'imagine que tu dois faire un tableau.

Sans tableau, si tu dois juste faire la moyenne sans stocker les notes tu dois sans doute faire une boucle for (en ayant d'abord fait saisir le nombre de note) puis saisir chaque note calculer ta somme au fur et a mesure. Puis une fois sortie de la boucle tu calcules la moyenne en divisant la somme par le nombre de note.

Naja[jv]
Naja[jv]
Niveau 10
12 novembre 2011 à 19:36:57

[Original]
Posté le 12 novembre 2011 à 18:56:32
Bon voila ce que j'obtiens:

int nbrdenote = 0;
int note = 0;
int compteur = 0;
int resultat = 0;
int moyenne = 0;

printf("Entrer le nombre de notes que vous desirez saisire\n");
scanf("%i",&nbrdenote);

do{
printf("Veuiller entrer les notes:");
scanf("%i",&note);
note+note = resultat;
compteur++;
}while( compteur != nbrdenote);

printf("%i",resultat/nbrdenote=moyenne);
scanf("%i",&moyenne);

J'ai un doute sur la partie note+note = resultat, c'est censé additionner chaque note..

et le calcul de la moyenne à al fin. :/

Ta moyenne sera un floatant
"note+note = resultat; " Dans l'autre sens

printf("%i",resultat/nbrdenote=moyenne);
scanf("%i",&moyenne);

Je vois pas trop ce que tu fais en fait.
T'as juste à faire :
moyenne = ((float)resultat/nbrdenote);
printf("La moyenne est %f", moyenne);

Bon après j'ai peut-être faux, je suis encore débutant mais ça me parait plus logique.

[Original]
[Original]
Niveau 7
12 novembre 2011 à 19:46:27

Merci de vos infos.
oui ca ce rapproche mais il me semble qu'il y a toujours une erreur sur l'adition des note et sont résultat.

yoyoyoke
yoyoyoke
Niveau 10
12 novembre 2011 à 20:12:01

Tiens si tu veux corriger. Normalement c'est bon.
Et pour ton calcul du résultat, ton problème bien du fait que tu fais resultat = note + note, au lieu de faire resultat = resultat + note.
Dans ton cas tu ne fais que donner le double de la note saisie dans la variable resultat, alors qu'en faisant resultat = resultat+note tu tiens compte de sa valeur précédente en lui additionnant la nouvelle note.

:spoiler:

  1. include <stdio.h>

int main()
{
int nbrdenote, compteur, repeter, note, resultat;
float moyenne;

printf("Entrez le nombre de notes que vous desirez saisir\n");
scanf("%d", &nbrdenote);
while(nbrdenote<=0)
{
printf("reponse invalide\n");
scanf("%d", &nbrdenote);
}

do{
compteur=0;
resultat=0;
do{
printf("Veuiller entrer la note %d : ", compteur+1);
scanf("%d", &note);
while(note<0 || note>6)
{
printf("resaisir la note %d : ", compteur+1);
scanf("%d", &note);
}
resultat=resultat+note;
compteur++;
}while( compteur != nbrdenote);

moyenne=((float)resultat/nbrdenote);

printf("La moyenne est %f", moyenne);
// boucle switch à rajouter pour la mention

printf("\n\nVoulez vous recommencer ? 0=non, 1=oui\n");
scanf("%d", &repeter);
while(repeter!=1 && repeter!=0)
{
printf("erreur...\n");
scanf("%d", &repeter);
}
}while(repeter==1);

}

:spoiler:

[Original]
[Original]
Niveau 7
12 novembre 2011 à 20:18:14

awè, Merci bien! :ok:

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment