Algo, tableau : procedure ou fonction?
zivodul8
Messages postés
229
Date d'inscription
Statut
Membre
Dernière intervention
-
garion28 Messages postés 1545 Date d'inscription Statut Membre Dernière intervention -
garion28 Messages postés 1545 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Ma question est simple mais reste pour moi sans réponse : je dois demander les valeurs d'un tableau à l'utilisateur avec un sous programme, mais je ne sais pas si je dois utiliser une fonction ou une procédure??
Merci de votre aide ;)
Ma question est simple mais reste pour moi sans réponse : je dois demander les valeurs d'un tableau à l'utilisateur avec un sous programme, mais je ne sais pas si je dois utiliser une fonction ou une procédure??
Merci de votre aide ;)
A voir également:
- Algo, tableau : procedure ou fonction?
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
3 réponses
l'un ou l'autre n'as pas d'importance, ca influ juste sur la facon dont ca va etre écrit
exemple:
pour la fonction et la procédure, la boucle peu etre dans celle ci ou bien a l'extérieur (dans ce cas la boucle appellera plusieurs fois la procédure/fonction afin de remplir le tableau, mais alors le montab qui est dans la fonction/procédure ne sera plus un tableau mais une simple variable)
si tu as d'autres question n'hésite pas
exemple:
avec une fonction: début variable untab:tableau de valeur untab=demandevalue() fin fonction demandevalue() : tableau de valeur variable: montab[10] //minimum=1, maxi=10 donc 10 "cellules" pour i=1 jusqu'a 10 écrire "valeur ?" lire montab[i] fin pour retourner montab fin fonction avec une procédure début variable: montab:tableau de valeur demandevalue(E/S untab) fin procédure demandevalue(E/S montab:tableau de valeur) variable: tableau[10] //minimum=1, maxi=10 donc 10 "cellules" pour i=1 jusqu'a 10 écrire "valeur ?" lire tableau[i] fin pour fin procédure
pour la fonction et la procédure, la boucle peu etre dans celle ci ou bien a l'extérieur (dans ce cas la boucle appellera plusieurs fois la procédure/fonction afin de remplir le tableau, mais alors le montab qui est dans la fonction/procédure ne sera plus un tableau mais une simple variable)
si tu as d'autres question n'hésite pas
En faite je suis un débutant en algorithme; et je reconnais pas trop ce que tu as ecrit. Et il me faut le "meilleur" algo possible. Je memélange un peu entre paramètres fixes et paramètres modifiables. Dis moi ce que tu en penses:
//declaration
procedure cine FIXE ()
MODIF (var tabcine);
debut
pour l variant de 0 a nbli-1 avec un pas de 1
faire pour c variant de 0 a nbco-1 avec un pas de 1
faire ecrire" saisissez ... : ";
lire tabcine[l][c];
refaire;
fpour;
refaire;
fpour;
fin;
//programme principal
// appel de la procedure
cine ( ) (cine);
//declaration
procedure cine FIXE ()
MODIF (var tabcine);
debut
pour l variant de 0 a nbli-1 avec un pas de 1
faire pour c variant de 0 a nbco-1 avec un pas de 1
faire ecrire" saisissez ... : ";
lire tabcine[l][c];
refaire;
fpour;
refaire;
fpour;
fin;
//programme principal
// appel de la procedure
cine ( ) (cine);
déja il faut savoir qu'en algorithme il n'y a pas de ; a la fin des lignes puisque ce n'est pas un language de programmation
mes commentaires sont identifié par /* en début de commentaire et */ en fin de commentaire
mes commentaires sont identifié par /* en début de commentaire et */ en fin de commentaire
//declaration procedure cine FIXE ()/*que représente le mot cine ?*/ MODIF (var tabcine);/*que représente la méthode (fonction ou procédure) MODIF ?*/ debut pour l variant de 0 a nbli-1 avec un pas de 1 /*a combien est initialisé nbli ?*/ faire pour c variant de 0 a nbco-1 avec un pas de 1//a combien est initialisé nbco ? faire ecrire" saisissez ... : ";/*le faire n'est pas nécessaire puisque le mot écrire désigne l'action d'afficher un message*/ lire tabcine[l][c]; refaire;/*ce n'est pas utile d'écrire ca puisque le fpour (donc la fin du pour) incrémente tout seul la variable c*/ fpour; refaire; fpour; fin; //programme principal // appel de la procedure cine ( ) (cine);/*le cine()(cine) ne veu rien dire*/