Algorithme sur xcas

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
melimelo62
Membre Naturel
Messages: 68
Enregistré le: 23 Déc 2011, 16:18

algorithme sur xcas

par melimelo62 » 21 Jan 2012, 10:18

Bonjour j'ai tapé mon algorithme mais il ne fonctionne pas il y a donc une erreur mais je ne trouve pas laquelle.Pourriez vous m'aider svp.
Voici l'énoncé:On considère l'algorithme suivant:

Variables:N,K,P des entiers naturels.
Début
Saisir N.
Pour K allant de 0 à N
Affecter à P la valeur P+K
Afficher P
Fin Pour
Fin

Et moi j'ai tapé ceci sur xcas:
Exercice2():={
local N,K,P;
saisir("N",N);
P:=0;
for(K {P:=P+K};
retur(K);
};

Et le logiciel marque:
Compatibilite de la syntaxexcas
Erreur grammaticale ligne 6 column 2 a {



cbmaths
Membre Naturel
Messages: 28
Enregistré le: 23 Jan 2012, 17:47

par cbmaths » 23 Jan 2012, 18:32

Bonjour,

la traduction d'un algorithme dans un langage de programmation n'est pas toujours facile, je te donne directement le programme qui correspond à ton algorithme :

Exercice2():={
local N,K,P;
saisir("N",N);
P:=0;

for(K:=0;K<=N;K++)
{P:=P+K;}
return(P);
}:;

Compare à ce que tu as tappé pour bien repérer tes erreurs, en particulier note bien la syntaxe pour une boucle dans XCAS :

for(affectation;test;incrément){ instructions }

affectation : Instruction pour initialiser la variable compteur de la boucle

test : tant que la condition est vérifiée la boucle continue

incrément : à chaque tour de boucle cette instruction doit modifier la variable de compteur, la plupart du temps on ajoute 1 au compteur (ici K++ signifie qu'on augment K de 1).

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 23 Jan 2012, 18:36

Bonjour,
Je ne suis pas sûr que votre méthode soit la meilleure pour aider quelqu'un qui est là pour apprendre. En tout cas, cette méthode est interdite pas la charte.

cbmaths
Membre Naturel
Messages: 28
Enregistré le: 23 Jan 2012, 17:47

par cbmaths » 23 Jan 2012, 18:41

Dlzlogic a écrit:Bonjour,
Je ne suis pas sûr que votre méthode soit la meilleure pour aider quelqu'un qui est là pour apprendre. En tout cas, cette méthode est interdite pas la charte.


Nous sommes dans un cas particulier d'aide, me semble-t-il, parcequ'il s'agit de la traduction d'un algorithme dans un langage de programmation ... maintenant si vous avez une façon de faire avancer cet élève sans lui donner sur un exemple les instructions à réaliser je demande à voir ...

Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 23 Jan 2012, 18:50

cbmaths a écrit:Nous sommes dans un cas particulier d'aide, me semble-t-il, parcequ'il s'agit de la traduction d'un algorithme dans un langage de programmation ... maintenant si vous avez une façon de faire avancer cet élève sans lui donner sur un exemple les instructions à réaliser je demande à voir ...
Bon, en général je suis pas trop mauvais dans ce genre d'exercice, et surtout je n'ai pas à me justifier.

Avatar de l’utilisateur
fatal_error
Membre Légendaire
Messages: 6610
Enregistré le: 22 Nov 2007, 12:00

par fatal_error » 23 Jan 2012, 19:22

salut,

Bien que je reconnais ta bonne volonté cbmaths, la charte stipule de pas livrer la réponse complète sur un plateau. Ou bien tu peux montrer un exemple similaire.

Je ne vais pas dire si ta facon de procéder est moins bien ou pas sinon, ... . En fait si. Je pense et suis convaincu que l'apprentissage d'une syntaxe fait partie de l'apprentissage de la programmation. En ce sens, il me parait (bien que fastidieux) important d'apprendre à lire et comprendre les messages d'erreurs.
(Erreur grammaticale ligne 6 column 2 a {)
Mais bon c'est discutable donc osef.

Maintenant, la réponse est lachée, c'est comme ca. melimelo62 semble quand même avoir essayé. Je t'invite simplement à ne livrer la réponse complète que lorsque l'élève est bloqué ou a (quasiment) fini l'exercice.
la vie est une fête :)

cbmaths
Membre Naturel
Messages: 28
Enregistré le: 23 Jan 2012, 17:47

par cbmaths » 23 Jan 2012, 19:36

fatal_error a écrit:salut,

Bien que je reconnais ta bonne volonté cbmaths, la charte stipule de pas livrer la réponse complète sur un plateau. Ou bien tu peux montrer un exemple similaire.

Je ne vais pas dire si ta facon de procéder est moins bien ou pas sinon, ... . En fait si. Je pense et suis convaincu que l'apprentissage d'une syntaxe fait partie de l'apprentissage de la programmation. En ce sens, il me parait (bien que fastidieux) important d'apprendre à lire et comprendre les messages d'erreurs.
(Erreur grammaticale ligne 6 column 2 a {)
Mais bon c'est discutable donc osef.

Maintenant, la réponse est lachée, c'est comme ca. melimelo62 semble quand même avoir essayé. Je t'invite simplement à ne livrer la réponse complète que lorsque l'élève est bloqué ou a (quasiment) fini l'exercice.


Nous sommes, j'insiste, dans un cas très particulier, ici l'utilisation de XCAS, dont les messages d'erreurs soit dit en passant ne sont pas très précis sur le type d'erreur et la position exacte de l'erreur. Si l'enseignant de cet élève avait fait le choix d'utiliser, par exemple, AlgoBox, ou pourquoi pas XCAS avec la syntaxe française (au lieu de la syntaxe anglaise) il aurait eu beaucoup moins de problème pour faire fonctionner sa boucle. Ce qui est important pour les élèves de lycée c'est de savoir créer des algorithme par eux-même, il ne s'agit pas d'en faire des experts dans tel ou tel langage de programmation.

melimelo62
Membre Naturel
Messages: 68
Enregistré le: 23 Déc 2011, 16:18

merci

par melimelo62 » 27 Jan 2012, 18:58

En tout cas,moi je te remercie car j'ai vu où j'avais fait des erreurs.D'ailleurs je ne sais pas trop utiliser xcas car je n'ai fait qu'un seul TD sur les algorithme.Dans ma classe tout le monde a galléré pour cet algo donc la prof va nous en refaire un prochainement.
Merci

 

Retourner vers ✎✎ Lycée

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 72 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite