Probleme de fonction
Résolu
pims
-
pims -
pims -
bonjour , j'ai un petit problème avec les fonctions. Je viens de commencer un iut informatique et pour mon 1er cours de C ,nous avons "appris" ce qu'était une fonction et "comment" s'en servir. J'ai été très surpris ,je croyais qu'on les voyais plutot après 2 ,3 cours ...bref la n'est pas la question.
Voici mon programme :il demande 3 nombres a l'utilisateur et trouve quel est le plus petit.(bn je c c nul mais bon faut bien commencer!!!). J'ai su le faire sans les fonctions , mais quand la prof m'a demandé de le faire avec les fonctions....j'me suis completement embrouillé!!!
Est ce que quelqu'un pourait m'expliquer comment on les utilise dans mon programme please!
merci!
#include<stdio.h>
int main(){
float minimum(float);
float nb1,nb2,nb3,min;
printf("donnez votre 1er nombre :");
scanf("%f",&nb1);
printf("donnez votre 2eme nombre :");
scanf("%f",&nb2);
printf("donnez votre 3eme nombre :");
scanf("%f",&nb3);
printf("le nombre minimum est %f\n",minimum(min));
system ("pause");
return 0;
}
float minimum(float min){
float nb1,nb2,nb3;
if ((nb1<nb2)&&(nb1<nb3))
return(nb1);
else if ((nb2<nb1)&&(nb2<nb3))
return(nb2);
else
return(nb3);
}
Voici mon programme :il demande 3 nombres a l'utilisateur et trouve quel est le plus petit.(bn je c c nul mais bon faut bien commencer!!!). J'ai su le faire sans les fonctions , mais quand la prof m'a demandé de le faire avec les fonctions....j'me suis completement embrouillé!!!
Est ce que quelqu'un pourait m'expliquer comment on les utilise dans mon programme please!
merci!
#include<stdio.h>
int main(){
float minimum(float);
float nb1,nb2,nb3,min;
printf("donnez votre 1er nombre :");
scanf("%f",&nb1);
printf("donnez votre 2eme nombre :");
scanf("%f",&nb2);
printf("donnez votre 3eme nombre :");
scanf("%f",&nb3);
printf("le nombre minimum est %f\n",minimum(min));
system ("pause");
return 0;
}
float minimum(float min){
float nb1,nb2,nb3;
if ((nb1<nb2)&&(nb1<nb3))
return(nb1);
else if ((nb2<nb1)&&(nb2<nb3))
return(nb2);
else
return(nb3);
}
A voir également:
- Probleme de fonction
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Fonction remplacer sur word - Guide
- Fonction somme excel - Guide
3 réponses
Salut,
Voici un exemple.
Voici un exemple.
#include<stdio.h> float minimum(float n1,float n2, float n3); int main(){ float n1,n2,n3; printf("donnez votre 1er nombre :"); scanf("%f",&n1); printf("donnez votre 2eme nombre :"); scanf("%f",&n2); printf("donnez votre 3eme nombre :"); scanf("%f",&n3); printf("le nombre minimum est %.2f\n",minimum(n1,n2,n3)); system ("pause"); return 0; } float minimum(float n1,float n2, float n3){ float min; if (n1<n2) min = n1; else min = n2; if(min>n3) min = n3; return min; }
Salut,
en fait, c'est ta fonction qui va faire le travaille de trouver le minimun (et te le retourner), donc pour comparer quelquechose, il faut que tu passes tes nombres recuperer précédemment.
Jespere ca pourra t'aider!!!
@+
#include <stdio.h>
float minimum(float,float,float);
int main()
{
float min;
float nb1,nb2,nb3;
printf("donnez votre 1er nombre :");
scanf("%f",&nb1);
printf("donnez votre 2eme nombre :");
scanf("%f",&nb2);
printf("donnez votre 3eme nombre :");
scanf("%f",&nb3);
printf("le nombre minimum est %f\n",min=minimum(nb1,nb2,nb3));
getchar();
return 0;
}
float minimum(float nb1,float nb2,float nb3)
{
if ((nb1<nb2)&&(nb1<nb3))
return(nb1);
else if ((nb2<nb1)&&(nb2<nb3))
return(nb2);
else
return(nb3);
}
en fait, c'est ta fonction qui va faire le travaille de trouver le minimun (et te le retourner), donc pour comparer quelquechose, il faut que tu passes tes nombres recuperer précédemment.
Jespere ca pourra t'aider!!!
@+
#include <stdio.h>
float minimum(float,float,float);
int main()
{
float min;
float nb1,nb2,nb3;
printf("donnez votre 1er nombre :");
scanf("%f",&nb1);
printf("donnez votre 2eme nombre :");
scanf("%f",&nb2);
printf("donnez votre 3eme nombre :");
scanf("%f",&nb3);
printf("le nombre minimum est %f\n",min=minimum(nb1,nb2,nb3));
getchar();
return 0;
}
float minimum(float nb1,float nb2,float nb3)
{
if ((nb1<nb2)&&(nb1<nb3))
return(nb1);
else if ((nb2<nb1)&&(nb2<nb3))
return(nb2);
else
return(nb3);
}
Re,
Le prototype de la fonction on le mets en général après les directives #include, #define, etc. et pas dans la fonction main.
Ta fonction doit envoyer un minimum entre 3 float (j'aurais mis plutôt des entiers ;-) donc ces 3 nombres il faut les passer à la fonction en tant qu'arguments.
La valeur min, sera envoyé par la fonction, donc pas besoin de déclarer une variable min dans main, mais dans la fonction.
Le prototype de la fonction on le mets en général après les directives #include, #define, etc. et pas dans la fonction main.
Ta fonction doit envoyer un minimum entre 3 float (j'aurais mis plutôt des entiers ;-) donc ces 3 nombres il faut les passer à la fonction en tant qu'arguments.
La valeur min, sera envoyé par la fonction, donc pas besoin de déclarer une variable min dans main, mais dans la fonction.