8
Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Embed Size (px)

Citation preview

Page 1: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Calcul et programmationau lycée avec Scilab

Christine GomezProfesseur au lycée Descartes

Antony (92)

Page 2: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Le nouveau programme de seconde

Algorithmique (objectifs pour le lycée)

La démarche algorithmique est, depuis les origines, une composante essentielle de l’activité mathématique. Au collège, les élèves ont rencontré des algorithmes (algorithmes opératoires, algorithme des différences, algorithme d’Euclide, algorithmes de construction en géométrie). Ce qui est proposé dans le programme est une formalisation en langage naturel propre à donner lieu à traduction sur une calculatrice ou à l’aide d’un logiciel. Il s’agit de familiariser les élèves avec les grands principes d’organisation d’un algorithme : gestion des entrées-sorties, affectation d’une valeur et mise en forme d’un calcul.

Dans le cadre de cette activité algorithmique, les élèves sont entraînée :• à décrire certains algorithmes en langage naturel ou dans un langage symbolique;• à en réaliser quelques uns à l’aide d’un tableur ou d’un petit programme réalisé sur une calculatrice ou avec un

logiciel adapté;• à interpréter des algorithmes plus complexes.Aucun langage, aucun logiciel n’est imposé.

L’algorithmique a une place naturelle dans tous les champs des mathématiques et les problèmes posés doivent être en relation avec les autres parties du programme (fonctions, géométrie, statistiques et probabilités, logique) mais aussi avec les autres disciplines ou la vie courante.

A l’occasion de l’écriture d’algorithmes et de petits programmes, il convient de donner aux élèves de bonnes habitudes de rigueur et de les entraîner aux pratiques de vérification et de contrôle

Page 3: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Le nouveau programme de seconde (suite)

Instructions élémentaires (affectation , calcul, entrée, sortie).

Les élèves, dans le cadre d’une résolution de problèmes, doivent être capables :• D’écrire une formule permettant un calcul;• D’écrire un programme calculant et donnant la valeur d’une fonction;Ainsi que les instructions d’entrées et sorties nécessaires au traitement.

Boucle et itérateur, instruction conditionnelle

Les élèves, dans le cadre d’une résolution de problèmes, doivent être capables :• De programmer un calcul itératif, le nombre d’itérations étant donné;• De programmer une instruction conditionnelle, un calcul itératif, avec fin de boucle conditionnelle.

Le logiciel Scilab permet de répondre à ces objectifs

Page 4: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

• Scilab est un logiciel de calculIl fait du calcul scientifique, pas du calcul formel. Il agit comme une grosse calculatrice, avec une grande

puissance de calcul, une facilité de programmation et une rapidité incomparable pour faire des simulations.

• Il est gratuitLa nouvelle version Scilab 5.1.1 pour les lycées est téléchargeable sur le site www.scilab.org/lycee où l’on

trouve aussi des documents d’accompagnement.

• C’est un logiciel professionnel,Utilisé par les ingénieurs et les universitaires, créé au départ pour les industriels, il a été enrichi d’un module

lycée pour une utilisation plus simple par les élèves, qui apprennent ainsi à manipuler un outil qu’ils utiliseront peut-être dans leur métier.

• Sa syntaxe est proche du langage naturelC’est ce que nous allons voir sur les exemples traités.

Il faut cependant une certaine pratique pour ne plus se tromper

Que fait le logiciel Scilab ? Pourquoi le choisir ?

Page 5: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Fonction : notions de variablesfunction y=f(x);

y=sin(x^2)+x;

endfunction

Test : • if x>10 then

y=x;• else

y=x^2;• end

Boucle : • for i=1:10

x(i)=i^2;• end

Voir la liste des instructions utiles sur le document papier

Les instructions utiles en seconde

Page 6: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Affectation de données, fonctions

Calculer un prix TTC connaissant le prix HT et le taux de TVA.

Algorithme

Mettre le prix hors taxe dans HTMettre le taux de TVA dans TVATTC prend la valeurAfficher le prix TTC

Définition de fonction

On définit la fonction AvecTaxe qui auxdeux variables HT et TVA fait correspondre TTC.On demande ensuite TTC pour HT=128 et TVA = 19,6%

Programme Scilab

HT = input("Prix hors taxes : ") ; TVA = input("Taux de TVA : ");TTC = HT*(1+TVA/100)afficher("Prix TTC : "+string(TTC))

function TTC= AvecTaxe (HT , TVA) TTC = HT*(1+TVA/100);endfunctionAvecTaxe(128,19.6)

Page 7: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Notion de boucle

En 2009, Paul place 5 000 € au taux composé de 2% par an. Quelles sont les sommes obtenues pendant 20 ans ? En quelle année cette

somme dépasse-t-elle les 6 500 € ?

Algorithme

Mettre 5000 dans s(1)Pour n allant de 1 à 20 s(n+1) prend la valeur s(n)*1,02 Afficher l’année 2008+n et la somme épargnéeFin de pour

Mettre 5000 dans sMettre 2009 dans nTant que s < 6500 s prend la valeur s*1.02 n prend la valeur n+1Fin de tant queAfficher : « s dépasse 6500 euros en n »

Programme Scilab

s(1)=5000;for n=1:20 s(n+1)=s(n)*1.02; afficher ([2008+n,s(n)])end

s=5000;n=2009;while s < 6500 then s=s*1.02; n=n+1;endafficher("s dépasse 6500 euros en : "+string(n))

Page 8: Calcul et programmation au lycée avec Scilab Christine Gomez Professeur au lycée Descartes Antony (92)

Notion de test, tirage aléatoire

Virginie lance trois dés numérotés de 1 à 6. Si elle obtient une somme de 18, elle gagne 50 euros, entre 10 et 17 elle gagne 5 euros, sinon

rien. Simuler l’expérience.

Algorithme

Simuler trois tirages d’entiers entre 1 et 6S prend la valeur de leur sommeSi S < 10 alors Afficher : Virginie ne gagne rien.Si non Si S < 18 alors Afficher : Virginie gagne 5 euros.Sinon Afficher : Virginie gagne 50 euros Fin de si

Programme Scilab

T=tirage_entier(3,1,6);S=sum(T)if S<10 then afficher("Virginie ne gagne rien")elseif S<18 then afficher("Virginie gagne 5 euros")else afficher("Virginie gagne 50 euros")end