Programmation C
Résolu/Fermé
bambaa
Messages postés
3
Date d'inscription
lundi 18 avril 2011
Statut
Membre
Dernière intervention
20 avril 2011
-
19 avril 2011 à 00:38
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 20 avril 2011 à 08:41
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 20 avril 2011 à 08:41
A voir également:
- Programmation C
- Application de programmation - Guide
- Programmation logo tortue télécharger - Télécharger - Études & Formations
- Problème de programmation digicode extel klavy 3 ✓ - Forum Loisirs / Divertissements
- Programmation binaire - Guide
- Programmation carte à puce vierge ✓ - Forum Matériel & Système
4 réponses
Vicking54
Messages postés
89
Date d'inscription
lundi 11 octobre 2010
Statut
Membre
Dernière intervention
17 mai 2011
26
19 avril 2011 à 09:42
19 avril 2011 à 09:42
hum je dirais que ca serait pas mal d'initialiser tes variables avant comme :
som = 0;
moy = 0;
SC = 0;
donc voila ce que ca donnerais :
int main()
{
int i;
int NbNote = 0;
float moy=0;
float note = 0;
float som = 0;
float SC = 0 ;
float coef = 0 ;
printf("Combien de note voulez vous Saisir : ");
scanf("%d",&NbNote);
for(i=0; i<NbNote ; i++)
{
do
{
printf("Entrez note :");
scanf("%f",¬e);
fflush(stdin);
}while(note <0 || note >20);
do
{
printf("Saisir le coeficient :");
scanf("%d",&coef);
fflush(stdin);
}while(coef >=1);
som = (note * coef) + som ;
SC = coef + SC ;
moy = som/SC ;
}
if (som < 0 || SC < 0)
{
printf("Donnees incorrectes!\n");
}
else
{
printf("la moyenne de cet etudiant est de %2.2f\n",moy);
system("PAUSE>nil");
}
return 0;
}
som = 0;
moy = 0;
SC = 0;
donc voila ce que ca donnerais :
int main()
{
int i;
int NbNote = 0;
float moy=0;
float note = 0;
float som = 0;
float SC = 0 ;
float coef = 0 ;
printf("Combien de note voulez vous Saisir : ");
scanf("%d",&NbNote);
for(i=0; i<NbNote ; i++)
{
do
{
printf("Entrez note :");
scanf("%f",¬e);
fflush(stdin);
}while(note <0 || note >20);
do
{
printf("Saisir le coeficient :");
scanf("%d",&coef);
fflush(stdin);
}while(coef >=1);
som = (note * coef) + som ;
SC = coef + SC ;
moy = som/SC ;
}
if (som < 0 || SC < 0)
{
printf("Donnees incorrectes!\n");
}
else
{
printf("la moyenne de cet etudiant est de %2.2f\n",moy);
system("PAUSE>nil");
}
return 0;
}
geek-face
Messages postés
89
Date d'inscription
vendredi 8 avril 2011
Statut
Membre
Dernière intervention
5 mai 2011
9
19 avril 2011 à 09:48
19 avril 2011 à 09:48
Bonjour,
tu pourrais envoyer l'algorithme car comprendre un programme tel qu'il est dans ta tête est compliqué.
Merci
tu pourrais envoyer l'algorithme car comprendre un programme tel qu'il est dans ta tête est compliqué.
Merci
malaik5
Messages postés
258
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
28 novembre 2013
33
19 avril 2011 à 09:50
19 avril 2011 à 09:50
Essayes de faire avec ce code là:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i ;
float moy, note, som, SC, coef ;
som = 0;
SC = 0;
i=1 ;
while (note >= 0 && note <= 20)
{
(printf("Entrez note %d:",i),
scanf("%f",¬e),
printf("Entrez le coefficient %d:",i),
scanf("%f",&coef)
if (SC < 0)
{
printf("Donnees incorrectes!\n");
}
else
{
som = (note * coef) + som ;
SC = coef + SC ;
moy = som/SC ;
i++ ;
}
}
printf("la moyenne de cet etudiant est de %2.2f\n",moy);
return 0;
}
Remarques sur le precedent algo:
* Tes initialialisations : je pense que tu deverais les remplacer par ce que j'ai mis.
* le if à l'interieur du while ne sert à rien: à la rigueur tu peux laisser que SC <0 puisque la somme ne sera jamais négative vue la façon de l'algo comment il est fait.
jattends ton rertour, tiens moi au courant0
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i ;
float moy, note, som, SC, coef ;
som = 0;
SC = 0;
i=1 ;
while (note >= 0 && note <= 20)
{
(printf("Entrez note %d:",i),
scanf("%f",¬e),
printf("Entrez le coefficient %d:",i),
scanf("%f",&coef)
if (SC < 0)
{
printf("Donnees incorrectes!\n");
}
else
{
som = (note * coef) + som ;
SC = coef + SC ;
moy = som/SC ;
i++ ;
}
}
printf("la moyenne de cet etudiant est de %2.2f\n",moy);
return 0;
}
Remarques sur le precedent algo:
* Tes initialialisations : je pense que tu deverais les remplacer par ce que j'ai mis.
* le if à l'interieur du while ne sert à rien: à la rigueur tu peux laisser que SC <0 puisque la somme ne sera jamais négative vue la façon de l'algo comment il est fait.
jattends ton rertour, tiens moi au courant0
Vicking54
Messages postés
89
Date d'inscription
lundi 11 octobre 2010
Statut
Membre
Dernière intervention
17 mai 2011
26
19 avril 2011 à 10:20
19 avril 2011 à 10:20
malaik5 la ton algo fera la saisie d'une seule et unique note celui que j'ai mis à disposition génère un nombre définit de note ce qui est mieux je pense car tu pourras faire le calcul d'une grosse moyenne.
malaik5
Messages postés
258
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
28 novembre 2013
33
19 avril 2011 à 10:26
19 avril 2011 à 10:26
non il fera plusieurs saisi tant que la note n'est pas négative et n'est pas sup à 20, il demandera tjr de rentrer des notes
;)
;)
Vicking54
Messages postés
89
Date d'inscription
lundi 11 octobre 2010
Statut
Membre
Dernière intervention
17 mai 2011
26
19 avril 2011 à 10:30
19 avril 2011 à 10:30
oui c'est sur mais ce que je veux dire c'est qu'il prendra pas en compte si l'utilisateur doit entrer 10 notes avec 10 coefficients
malaik5
Messages postés
258
Date d'inscription
vendredi 20 novembre 2009
Statut
Membre
Dernière intervention
28 novembre 2013
33
19 avril 2011 à 10:32
19 avril 2011 à 10:32
et pourquoi pas, tant que ces notes sont positives et sont <=20, pas de soucis,
au fait moi je me suis tenu aux criteres definies par le mec qui posté le probleme apres si tu veux faire autrement t'as des multitudes de façons
au fait moi je me suis tenu aux criteres definies par le mec qui posté le probleme apres si tu veux faire autrement t'as des multitudes de façons
Vicking54
Messages postés
89
Date d'inscription
lundi 11 octobre 2010
Statut
Membre
Dernière intervention
17 mai 2011
26
19 avril 2011 à 10:34
19 avril 2011 à 10:34
oui enfin je trouvais pas ca judicieux en tous cas le post est résolu il a 2 propositions qui marche bien
bambaa
Messages postés
3
Date d'inscription
lundi 18 avril 2011
Statut
Membre
Dernière intervention
20 avril 2011
19 avril 2011 à 09:50
19 avril 2011 à 09:50
merci pour la reponse voila l'exo
Ecrire un algorithme qui demande successivement des notes et les coefficients d'un étudiant à
l'utilisateur, la série de notes que doit saisir l'utilisateur s'arrête au moment où ce dernier entre une
note inferieur à zéro ou supérieure à 20
Le programme doit afficher ensuite la moyenne de l'étudiant.
Ex :
Donner note 1 :12
Donner coefficient 1 :4
Donner note 2 : 13
Donner coefficient 2 : 2
Donner note 3 : 15
Donner coefficient 3 : 3
Donner note 1 : -11
Donner coefficient 1 :4
La moyenne de l'étudiant est : 13.22 / 20
merci
Ecrire un algorithme qui demande successivement des notes et les coefficients d'un étudiant à
l'utilisateur, la série de notes que doit saisir l'utilisateur s'arrête au moment où ce dernier entre une
note inferieur à zéro ou supérieure à 20
Le programme doit afficher ensuite la moyenne de l'étudiant.
Ex :
Donner note 1 :12
Donner coefficient 1 :4
Donner note 2 : 13
Donner coefficient 2 : 2
Donner note 3 : 15
Donner coefficient 3 : 3
Donner note 1 : -11
Donner coefficient 1 :4
La moyenne de l'étudiant est : 13.22 / 20
merci
20 avril 2011 à 08:37
Ce n'est pas un comportement défini... Il ne faut jamais utiliser fflush(stdin).