Langage C
stark173
Messages postés
105
Date d'inscription
Statut
Membre
Dernière intervention
-
Mouthon Messages postés 524 Date d'inscription Statut Membre Dernière intervention -
Mouthon Messages postés 524 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je dois faire un exercice en langage C
Voici l'énoncé: - "Je demande un nombre et j'affiche le carré de ce nombre"
Voici ce que j'ai fais:
int main()
{
double resultat = 0;
int nombre = 0;
printf("rentrer un nombre \n");
scanf("%d" , nombre);
resultat = pow(nombre,2);
printf("le resultat est \n ");
scanf("%f", resultat);
return 0;
}
Mon programme ne marche pas, merci de me venir en aide
Voici l'énoncé: - "Je demande un nombre et j'affiche le carré de ce nombre"
Voici ce que j'ai fais:
int main()
{
double resultat = 0;
int nombre = 0;
printf("rentrer un nombre \n");
scanf("%d" , nombre);
resultat = pow(nombre,2);
printf("le resultat est \n ");
scanf("%f", resultat);
return 0;
}
Mon programme ne marche pas, merci de me venir en aide
A voir également:
- Langage C
- Langage ascii - Guide
- Langage binaire - Guide
- Pascal langage - Télécharger - Édition & Programmation
- Langage visual basic - Télécharger - Langages
- Langage basic gratuit - Télécharger - Édition & Programmation
1 réponse
Bonjour.
Il y a beaucoup de maladresses dans ton code.
Ligne 3:
Pourquoi ta variable resultat est un double, alors que celle du nombre à multiplier est un int ? Une puissance d'entier sera forcément un entier, inutile de te compliquer la vie à renvoyer un nombre décimal. Peu importe que pow demande 2 double, le plus logique est que tu y envoie deux fois le même type de variables.
Ligne 9:
Pour utiliser scanf, tu dois utiliser un pointeur, ou plutôt l'adresse de ta variable, pour qu'il y inclue le résultat de la captation. La syntaxe que tu utilises là renverras un warning à la compilation, et un "segmentation fault" au moment d'appeler la fonction.
Ligne 16:
Tu utilises un scanf alors qu'on dirait que tu veux afficher le résultat. scanf() est une fonction de captation, elle n'affichera rien. Tu peux afficher le résultat dans ton printf précédent, grâce aux expressions %d ou %f.
Je ne vais évidemment pas faire l'exercice pour toi, quid de sa portée sinon. Si ma réponse t'embrouille un peu, je te conseille vivement de consulter des tutos complets pour débuter le C, comme ceux d'openclassroom (Anciennement Siteduzéro). Tu y trouveras les réponses à tes questions, ainsi que leur explication, histoire de démarrer sur de bonnes bases.
https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c
Bon courage, et je te souhaite surtout de bien t'éclater avec la prog !
Il y a beaucoup de maladresses dans ton code.
Ligne 3:
Pourquoi ta variable resultat est un double, alors que celle du nombre à multiplier est un int ? Une puissance d'entier sera forcément un entier, inutile de te compliquer la vie à renvoyer un nombre décimal. Peu importe que pow demande 2 double, le plus logique est que tu y envoie deux fois le même type de variables.
Ligne 9:
Pour utiliser scanf, tu dois utiliser un pointeur, ou plutôt l'adresse de ta variable, pour qu'il y inclue le résultat de la captation. La syntaxe que tu utilises là renverras un warning à la compilation, et un "segmentation fault" au moment d'appeler la fonction.
Ligne 16:
Tu utilises un scanf alors qu'on dirait que tu veux afficher le résultat. scanf() est une fonction de captation, elle n'affichera rien. Tu peux afficher le résultat dans ton printf précédent, grâce aux expressions %d ou %f.
Je ne vais évidemment pas faire l'exercice pour toi, quid de sa portée sinon. Si ma réponse t'embrouille un peu, je te conseille vivement de consulter des tutos complets pour débuter le C, comme ceux d'openclassroom (Anciennement Siteduzéro). Tu y trouveras les réponses à tes questions, ainsi que leur explication, histoire de démarrer sur de bonnes bases.
https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c
Bon courage, et je te souhaite surtout de bien t'éclater avec la prog !
Si tu n'as rien compris, va voir un tuto. Il faut du temps pour apprendre à programmer, et compter sur les autres pour résoudre ton exercice ne t'apprendra ni ne t'apportera rien.
Je ne trouve pas de tuto sur la politesse, je te laisse en chercher un là dessus également.