en fait comme je t’ai dis, tu lui dis de “faire” un executable PlusMinus1.0.0.
Il regarde dans le répertoire, et il voit qu’il y a un.c, et ça, il sait sans qu’on lui explique comment en faire un executable.
Ensuite, quand tu auras decoupé dans des fichiers différents et qu’il faudra rassembler tout ensemble, tu lui diras comment regrouper les choses, vaguement, et il se dépatouillera pour executer ce qu’il faut.
Mais tu verras ça à l’usage.
Et ça ne marche pas qu’avec un .c, mais avec toute sorte de choses.
Hé ben, je vais me mettre à make.
pas fini les exos
Rooooh !
Oui, je sais c’est important.
Ca arrive bientôt !
[quote=“mattotop”]2/[quote=“mattotop”]bon, déja le principe d’une fonction:
void toto(void){
return 0;
}
1/là, si tu as lu un peu le lien sur les fonctions, qu’est elle sensée faire et pourquoi le compilateur va t il râler ?
2/Comment la corriger ?
3/Ensuite, tu pourra faire la fonction qui récupère le choix.[/quote]
3/quote="mattotop"
alors remarques/questions:
- combien de fois va être executée choix = renvoieChoix ?
- faireAddition, faireSoustraction, faireMultiplication, faireDivision n’auraient pas par hasard une similarité dans leur comportement ?
- (plus subtil mais que tu comprendras mieux si tu reponds à la précèdente) renvoieAutreCalcul n’est pas un peu spécifique ? est ce qu’une fonction qui prend une chaine de caractère et renvoie vrai ou faux selon ce qu’on répond ne serait pas plus utile pour plein d’autres trucs plus tard ? Si tu vois ce que je veux te dire: que donne ton algorithme une fois modifié avec cette fonction ?[/quote]
ça fait encore quelques exercices en suspend[/quote]
Roh c’est long… Mais je vais essayer de faire un effort.
prends ton temps, tu bosses pour toi
A cette allure la, vous allez faire exploser le nombre de posts
Je pense que return n’a rien à faire dans une fonction de type void, étant donné que dans ce cas on ne doit rien retourner à main.
Pour corriger, il faut :
- soit supprimer le return afin de ne rien retourner (comme ce doit l’être avec void)
- soit modifier la variable de la fonction (par exemple chat, int, long, float ou double) auquel cas return peut rester en place
Ah, emacs en graphique, c’est bon mangez-en.
[quote=“wavesound”]Je pense que return n’a rien à faire dans une fonction de type void, étant donné que dans ce cas on ne doit rien retourner à main.
Pour corriger, il faut :
- soit supprimer le return afin de ne rien retourner (comme ce doit l’être avec void)
- soit modifier la variable de la fonction (par exemple chat, int, long, float ou double) auquel cas return peut rester en place[/quote]on va considèrer ça comme bon, la première réponse je n’y avais pas pensé. Le but était que tu voies l’utilisation d’une valeur de retour.
C’est quoi comme type, chat ?
Maintenant, écris renvoieChoix.
Je suis globalement d’accord pour une fonction quelconque par contre la fonction main est obligatoirement du type int et renvoit obligatoirement 0
La syntaxe minimale de la fonction main est
int main (void){
return 0;
}
Je sais Matt je fais chier le monde mais c’est fait pour
vi en texte est good… et vachement pratique!
Oups, erreur de frappe…
char (comme character pour prouver ma bonne foi) et pas chat.
Ben quoi, le r est tout près du t sur le clavier, non ?
[code]#include <stdio.h>
int toto(void)
{
/* On déclare la variable renvoieChoix. */
char OU int OU long OU float OU double renvoieChoix;
return 0;
}
int main(void)
{
toto(void);
return 0;
}[/code]
Non:
- je ne te demande QUE la fonction renvoieChoix
- elle doit faire l’affichage, demander le choix, et renvoyer le résultat.
Sans main avec ?
oui, sans main. Pour l’instant, on isole les fonctionnalités répètitives, on les ajuste au propre et aprés quand tu auras tes briques, tu rentreras dans l’algorithmique en faisant le main.
A ce sujet, toujours pas trouvé ce que l’operation addition, multiplication, soustraction et division faisaient en commun dans ton code ?
Ben elles font toutes partie du switch ?
non: ce qu’elle font, pas ou elles sont.
Décris ce que fait chacune de ces section de switch en français, et dégage ce qu’elles font toutes.
Elles affichent le premier puis le deuxième nombre entrés puis affichent le résultat des deux en fonction de l’opération, et ce grâce à la variable resultat qu’on a déclaré au début du main.