Error: called object is not a function or function pointet
mmmtv
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
Bonsoir,
J'ai reçu ce message d'erreur concernant la ligne 21 de mon code. Je suis débutante et je n'arrive pas à comprendre ce que ce message signifie.
Merci.
1#include <stdio.h>
2
3 main()
4{
5 float moyPond;
6 float intra;
7 float final;
8 float tps;
9 float globale;
10 float litterale;
11
12 printf ("\nEntrez la note d'intro et de final:\n");
13 scanf ("%f %f %f", &intra, &final);
14
15 moyPond = (intra * 0.25 + final * 0.35)/ 0.60;
16 printf("La moyenne pondérée est de %f", moyPond);
17
18 printf ("Entrez la note de TPS:\n");
19 scanf ("%f", &tps);
20
21 If ((moyPond<40) && (tps>50))
("%f", &tps)==50;
globale = 0.25 * intra + 0.35 * final + 0.40 * tps;
{
if ((globale>90) && (globale<100))
printf("L'etudiant/e a eu %f comme note globale et A+ comme note litterale.\n", &globale);
else if ((globale>85) && (globale<89))
printf("L'etudiant/e a eu %f comme note globale et A comme note litterale.\n", &globale);
else if ((globale>80) && (globale<84))
printf("L'etudiant/e a eu %f comme note globale et A- comme note litterale.\n", &globale);
else if ((globale>77) && (globale<79))
printf("L'etudiant/e a eu %f comme note globale et B+ comme note litterale.\n", &globale);
else if ((globale>73) && (globale<76))
printf ("L'etudiant/e a eu %f comme note globale et B comme note litterale.\n", &globale);
else if ((globale>70) && (globale<72))
printf("L'etudiant/e a eu %f comme note globale et B- comme note litterale.\n", &globale);
else if ((globale>65) && (globale<69))
printf ("L'etudiant/e a eu %f comme note globale et C+ comme note litterale.\n", &globale);
else if ((globale>60) && (globale<64))
printf ("L'etudiant/e a eu %f comme note globale et C comme note litterale.\n", &globale);
else if ((globale>57) && (globale<59))
printf ("L'etudiant/e a eu %f comme note globale et C- comme note litterale.\n", &globale);
else if ((globale>54) && (globale<56))
printf ("L'etudiant/e a eu %f comme note globale et D+ comme note litterale.\n", &globale);
else if ((globale>50) && (globale<53))
printf ("L'etudiant/e a eu %f comme note globale et D comme note litterale.\n", &globale);
else if ((globale>35) && (globale<49))
printf ("L'etudiant/e a eu %f comme note globale et D- comme note litterale.\n", &globale);
else if ((globale>0) && (globale<34))
printf ("L'etudiant/e a eu %f comme note globale et E comme note litterale.\n", &globale);
}
}
J'ai reçu ce message d'erreur concernant la ligne 21 de mon code. Je suis débutante et je n'arrive pas à comprendre ce que ce message signifie.
Merci.
1#include <stdio.h>
2
3 main()
4{
5 float moyPond;
6 float intra;
7 float final;
8 float tps;
9 float globale;
10 float litterale;
11
12 printf ("\nEntrez la note d'intro et de final:\n");
13 scanf ("%f %f %f", &intra, &final);
14
15 moyPond = (intra * 0.25 + final * 0.35)/ 0.60;
16 printf("La moyenne pondérée est de %f", moyPond);
17
18 printf ("Entrez la note de TPS:\n");
19 scanf ("%f", &tps);
20
21 If ((moyPond<40) && (tps>50))
("%f", &tps)==50;
globale = 0.25 * intra + 0.35 * final + 0.40 * tps;
{
if ((globale>90) && (globale<100))
printf("L'etudiant/e a eu %f comme note globale et A+ comme note litterale.\n", &globale);
else if ((globale>85) && (globale<89))
printf("L'etudiant/e a eu %f comme note globale et A comme note litterale.\n", &globale);
else if ((globale>80) && (globale<84))
printf("L'etudiant/e a eu %f comme note globale et A- comme note litterale.\n", &globale);
else if ((globale>77) && (globale<79))
printf("L'etudiant/e a eu %f comme note globale et B+ comme note litterale.\n", &globale);
else if ((globale>73) && (globale<76))
printf ("L'etudiant/e a eu %f comme note globale et B comme note litterale.\n", &globale);
else if ((globale>70) && (globale<72))
printf("L'etudiant/e a eu %f comme note globale et B- comme note litterale.\n", &globale);
else if ((globale>65) && (globale<69))
printf ("L'etudiant/e a eu %f comme note globale et C+ comme note litterale.\n", &globale);
else if ((globale>60) && (globale<64))
printf ("L'etudiant/e a eu %f comme note globale et C comme note litterale.\n", &globale);
else if ((globale>57) && (globale<59))
printf ("L'etudiant/e a eu %f comme note globale et C- comme note litterale.\n", &globale);
else if ((globale>54) && (globale<56))
printf ("L'etudiant/e a eu %f comme note globale et D+ comme note litterale.\n", &globale);
else if ((globale>50) && (globale<53))
printf ("L'etudiant/e a eu %f comme note globale et D comme note litterale.\n", &globale);
else if ((globale>35) && (globale<49))
printf ("L'etudiant/e a eu %f comme note globale et D- comme note litterale.\n", &globale);
else if ((globale>0) && (globale<34))
printf ("L'etudiant/e a eu %f comme note globale et E comme note litterale.\n", &globale);
}
}
A voir également:
- Error: called object is not a function or function pointet
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Playback error reconnect in 3s (1/5) francais - Forum Box et Streaming vidéo
- Error 1962 ✓ - Forum PC fixe
- Whea error occt - Forum Processeur
- A javascript error occurred in the main process - Forum Matériel & Système
1 réponse
Salut mmmtv,
Pas mal d'erreurs...
En ligne 21, tu mets une majuscule à "if", qui cause une erreur, quant à la suite du if, cela ne respecte pas la syntaxe de :
et ce qui suit
ton prototype de main devrait être
Pourquoi ne pas utiliser le type double pour tes nombres ?
La variable
En ligne 13, tes spécificateurs de conversion sont au nombre de trois, alors que tu n'as que deux arguments.
Dans tes printf, tu cherches à afficher la valeur du nombre et non pas son pointeur. Donc, l'argument devrait être
Je n'ai pas regardé le reste du code et sa pertinence.
Note que ces différentes erreurs et leur localisation te sont données par un compilateur tel que gcc lorsque tu compiles avec les warnings (option -Wall avec gcc).
Dal
Pas mal d'erreurs...
En ligne 21, tu mets une majuscule à "if", qui cause une erreur, quant à la suite du if, cela ne respecte pas la syntaxe de :
if (condition) { /* bloc à exécuter */ }
et ce qui suit
("%f", &tps)==50est assez peu compréhensible, et résulte en une expression évaluée par C qui ne sert à rien dans le meilleur des cas. Que veux-tu faire exactement ?
ton prototype de main devrait être
int main(void)et ton code se terminer par
return 0sauf si tu programmes pour de l'embarqué.
Pourquoi ne pas utiliser le type double pour tes nombres ?
La variable
litteralen'est ps utilisée.
En ligne 13, tes spécificateurs de conversion sont au nombre de trois, alors que tu n'as que deux arguments.
Dans tes printf, tu cherches à afficher la valeur du nombre et non pas son pointeur. Donc, l'argument devrait être
globaleau lieu de
&globale.
Je n'ai pas regardé le reste du code et sa pertinence.
Note que ces différentes erreurs et leur localisation te sont données par un compilateur tel que gcc lorsque tu compiles avec les warnings (option -Wall avec gcc).
Dal