begin process at 2010 02 10 06:02:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Utilisation de la fonction main en récursif


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Utilisation de la fonction main en récursif

mardi 13 septembre 2005 à 22:12:56 | Utilisation de la fonction main en récursif

floriandevelop

Bonjour!
pour ma première question, je vais demander un truc qu'on pourra trouver tordu..!

alors voilà: comment peut-on utiliser directement la fonction main (en c /c++) avec des appels récursifs, en l'occurence je souhaite implémenter une fonction main qui calcule une factorielle d'un entier passé en paramètre!!!

voici le début de mon code:

int main(int x = 3)
{  
  if (x = = 0) return 1;
    else return x * main(x-1);
}
je lance un terminal (sous windows XP) et redirige le résultat dans un fichier texte, mais n'obtient rien du tout:

c:\main 5 > log.txt

Qqn a-t'il des conseils à me donner?

merci!


mardi 13 septembre 2005 à 23:05:22 | Re : Utilisation de la fonction main en récursif

vinc1008881

int main(int x = 3)
{  
  if (x = = 0) return 1;
    else return x * main(x-1);
}

>>c'est vraiment tres crade tout sa , for (initialisation;condition;increment){instruction;} est netement mieux !
mardi 13 septembre 2005 à 23:56:30 | Re : Utilisation de la fonction main en récursif

floriandevelop

c pas du tout crade, et la boucle for ne m'aide pas trop pour la récursivité!!!
mercredi 14 septembre 2005 à 07:43:54 | Re : Utilisation de la fonction main en récursif

Joky

Membre Club
moi j'trouve crade d'utiliser "main" pour le nom de la fonction.

if(!Meilleur("Joky")) return ERREUR;

mercredi 14 septembre 2005 à 07:58:42 | Re : Utilisation de la fonction main en récursif

Matt67

Bonjour,

Déja le prototype de la fonction main est int main(int argc, char *argv[]).
Tu passes en ligne de commande le nombre dont tu veux calculer la factorielle
et tu effectues tes calculs dans une fonction a part (et surtout pas de main recursif) et si tu veux le resultat dans un fichier alors fopen ...

Bonne journée,
Matt...
mercredi 14 septembre 2005 à 09:06:47 | Re : Utilisation de la fonction main en récursif

floriandevelop

Bon, je vais expliquer pourquoi je veux faire cela:

Dans un cours de technique de compilation, notre professeur nous a demandé d'utiliser le main récursivement, pour voir comment cela se passe au niveau du compilateur j'imagine....

Donc, ça sert à rien de critiquer cette méthode, il s'agit d'un exercice!!!
j'aurais peut-être du le préciser dès le début....



mercredi 14 septembre 2005 à 09:40:56 | Re : Utilisation de la fonction main en récursif

DeAtHCrAsH

Très tordu comme raisonement. Ou est le probleme exactement ? Sur quoi bloques tu ?
mercredi 14 septembre 2005 à 09:55:59 | Re : Utilisation de la fonction main en récursif

whikie

Bonjour a tous

je debute dans le c++ mais si on declare :

int main(int x = 3)

au debut de la procedure x vaudra 3 a chaque fois qu'on appelera la procedure non ?


mercredi 14 septembre 2005 à 10:08:36 | Re : Utilisation de la fonction main en récursif

Joky

Membre Club
Pauvre fonction main, elle en aura vu de toutes les couleurs :p
Si un argument est initialisé dans la déclaration de la fonction, alors c'est une valeur par défaut :o

void Fct(int x = 2)
{
    printf("x : %i\n", x);
}

Lors de l'apel on peut faire Fct(); ou Fct(5);
Et on aura sur la console :
x : 2
x : 5

if(!Meilleur("Joky")) return ERREUR;<

mercredi 14 septembre 2005 à 10:17:47 | Re : Utilisation de la fonction main en récursif

whikie

ok merci

1 2

Cette discussion est classée dans : fonction, int, utilisation, main, récursif


Répondre à ce message

Sujets en rapport avec ce message

scanf() [ par clb ] bonjour à tous,j'ecris par exemple :int fonction(){ if(true) return 0; else return -1}dans main, si cette fonction retourne 0,alors j'appli Question de pointeurs [ par daivil ] Bonsoir,Alors admettons un type :typedef struct{ int nbPommes; int nbBananes;} T_panier;//Admettons ensuite une fonction mainint main(void){ T_panier Mélanger OpenGL et Glut [ par tintin72 ] SalutJ'aimerai me servir des fonctions d'entrée clavier/souris proposées par Glut, mais j'ai vu que Glut s'initialise avec une fonction main façon C.i Tableau en C [ par Mickylord ] Bonsoir a tous !Voici ma question :J'ai une fonction principale, main(), et une autre fonction tab(). Je voudrais déclarer un tableau dans la fonction parametre de la fonction main() [ par infodaoudi ] bonjour,dans le programme qui suit : comment executer la fonction main() sachant que j'utilise le vc++ 6.0 (console). autrement dit, comment faire pou pointeur sur une fonction [ par pasty ] Bonjour,J'appelle une fonction f(int *,int *,int) dont le code  est dans un DLL depuis le programme principal main.cpp Je déclare la fonction dans m strcat : fonction( char* buffer, int nb ); [ par wizard512 ] Bonsoir,Je souhaiterais savoir Si une fonction similaire a strcat() existerais,mais qui ajoute un entier ( int ) dans une copier des données en memoire [ par rudybaka ] Bonjour je suis etudiant et j'aurai besoin d'aide pour une question de TP :Ecrire une fonction qui trie les valeurs d'un tableau d'éléments de type qu probleme de dll [ par lamoueste ] j'ai un probleme avec ma dll : il s'agit d'une fonction qui doit lance une fenetre (dialog box ) en modal mais j'ai une "assertion failed" :( et je ne argument d'une fonction [ par tomalille ] bonjour, j'ai une question qui va vous sembler très bête mais bon...J'ai besoin de faire une fonction ayant un tableau multidimentionnel en paramètre.


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,905 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales