Algorithmes sur Open Office

Slides:



Advertisements
Présentations similaires
CE QU'IL FAUT SAVOIR FAIRE AVEC UN TABLEUR :
Advertisements

Abes agence bibliographique de l’enseignement supérieur Les scripts.
Portée des variables VBA & Excel
1 : Léditeur 2 : Le traitement dimages. 3 : La visionneuse dimage. FRONTPAGE PAINT SHOP PRO ACD SEE.
J'ADE 2005 J’aide Au Développement des Evaluations Animateurs TICE
Utiliser autrement des données de Base Elèves 1) Choisir les données Base Élèves propose 3 sortes de listes, par exemple dans le menu : Elèves : Liste.
Références à une cellule dans EXCEL
Courbes de fonctions avec Excel
Courbes de fonctions avec Excel
TP 2 : Nos premières macros
ALGORITHMIQUE STAGE LA REUNION Isabelle ABOU.
Retour au menu principal. Généralités Lenvironnement Laffichage de la fenêtre Déplacement / sélection dans une feuille Classeurs La gestion des classeurs.
La fonction Style Permet de créer des types de texte, par exemple
ALLUMER L’ORDI 1 Appuyer sur le bouton du disque dur
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Générique d’initiales.
Microsoft Excel Avancé
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Par Fabrice Pasquier Cours IV
Tableau croisé dynamique sous Excel (TCD).
Création d'un diaporama Création d'un diaporama
Publispostage Menu Outils / Lettres et publipostage
Le menu « Actualités » © Michel DURIEUX – Février 2007.
Les structure d’un programme :
Création de menus. Depuis la page d’accueil de votre site, cliquez sur le lien [Login] puis saisissez les identifiants qui vous ont été attribués. Connectez-vous.
Références à une cellule dans EXCEL
ALLUMER L’ORDI 1 Appuyer sur le bouton du disque dur
EXERCICE D'ANIMATION AVEC POWER POINT
Accès au logiciel.
Dans la barre des messages, cliquez sur Activer la modification,
DEFINITION COMMENT Y ACCEDER ? COMMENT CREER UNE FORMULE ? Ph. SAURON.
Les présentations assistées par ordinateur (préAO)
Tableaux, chaînes VBA et Excel
Création et présentation d’un tableau avec Word 2007
Cour : Microsoft excel FACULTE DES SCIENCES AGADIR
Réaliser par : Moh Fakhri Slama
Cliquez pour modifier le style du sous-titre Cliquez pour modifier le style du titre.
Le menu « Agenda / Calendrier » © Michel DURIEUX – Février 2007.
Energie d’un signal, énergie d’interaction, analogie avec l’électrocinétique
Digitaliser des images
Fabienne BUSSAC CALCUL LITTÉRAL – INITIATION AU TABLEUR 1. DÉFINITION
+ Tutoriel KF L’outil IPROM et la sélection des idées prometteuses Janvier 2013.
Le site-en-kit pour les locales 2. Créer des pages.
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II PRO-1024.
La fonction RECHERCHEV
Sommaire AFFICHER L’ONGLET DEVELOPPEUR AJUSTER LA SECURITE MACRO COPIER ET COLLER LA MACRO L’ENREGISTREMENT AVEC MACRO CREATION DU RESUME ENVOI SANS MACRO.
Représentations graphiques I- Création d’un graphique
Programmation événementielle
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Initiation aux bases de données
Arbres binaires et tables de hachage
Macros Visual Basic sur Excel
Tableur 1.Concept : Un tableur permet de manipuler des données, de le présenter, de les trier et d'effectuer automatiquement des calculs sur des nombres.
Comment tracer la caractéristique d’une résistance avec Excel
Informatique de Gestion part II – the dark macro
Comprendre le SGBDR Microsoft Access – partie 2
Résolution du Problème
Une proposition de résolution du pb1 AEP PACD VB Pb11.
Une aide pour débutant éclairé
Le menu « Albums photos » © Michel DURIEUX – Février 2007.
Utilisation des formules de base
Bouton Office Barre d’outils d’accès rapideBarre de titre Ruban Office Barre de formule Désignation des colonnes Désignation des lignes Gestion des feuilles.
A.Aarabi ´. ´ Objectifs Faciliter la prise en main du logiciel MATLAB Présenter les fonctionnalités utiles au travail scientifique.
© Fujitsu Canada Introduction à Minitab Version 14 - Anglais Formation Black Belt Lean Six Sigma.
Algorithmes sur Open Office. 1. Ouvrir Visual Basic de Open Office.
Abes agence bibliographique de l’enseignement supérieur Les scripts.
1 Tableur Excel. 2 Introduction Un tableur est un logiciel permettant de manipuler des données numériques et d'effectuer automatiquement des calculs sur.
Le Tableur, MS Excel Cours de Dominique Meganck – ICC - IFC Diaporama proposé par FST et adapté par D. Meganck.
Présentation Excel Microsoft Excel est le tableur de la suite bureautique propriétaire « Office System ». Développé pour les plateformes Windows et Macintosh.
Transcription de la présentation:

Algorithmes sur Open Office

1. Ouvrir Visual Basic de Open Office

Ouvrir un module Visual Basic (1/3) 1) Ouvrir Open Office, créer un classeur nommé « algo » (Enregistrer sous…) 2) Faire « Outils/Macros/Gérer les macros/OpenOffice Basic »

Ouvrir un module Visual Basic (2/3) 3) Sélectionner votre classeur (ici « algo ») 4) Cliquer sur « Nouveau » et valider « Module1 » par OK

Ouvrir un module Visual Basic (3/3) La fenêtre Visual Basic s’ouvre et est présente dans la barre des tâches. Les fonctions et procédures seront créées dans ce module.

2. Créer une fonction dans Visual Basic de Open Office

Créer une fonction en Visual Basic (1/3): la fonction On veut créer une fonction qui s’appelle « signal »: signal est périodique, de période 2; la représentation graphique de signal est ci-dessous: sur [-1 ; 0], signal(x) = x + 1 et sur ]0 ; 1], signal(x) = 1 – x.

Créer une fonction en Visual Basic (2/3): création de la fonction On créé une fonction d’une ou plusieurs variable par Function nom(x,y,z..) A la fin de l’algorithme, il y nécessairement End Function Les commentaires sont précédés d’une apostrophe. VB gère les « for.. Next » et les « Do ..loop » avec while ou until. Avant le « End function », il faut donner la valeur de l’image de x par la fonction signal par « signal =… »

Créer une fonction en Visual Basic (3/3): utilisation dans le tableur Maintenant on peut utiliser la nouvelle fonction comme une fonction normale du tableur.

Cas d’une fonction récursive

Créer une fonction récursive en Visual Basic : Factoriel On veut créer la fonction n  n! qu’on appelle « fiel » (avec n entier naturel). On utilise la définition récurrente: fiel(0)=1 et pour tout n > 0, fiel(n) = n*fiel(n-1)

3. Créer une procédure dans Visual Basic de Open Office

Créer une procédure en Visual Basic (1/5): La procédure On veut tirer au sort 5 noms d’élèves d’une liste de 35 noms. 1) Nommer une nouvelle feuille du classeur « procedure » 2) Créer une liste de 35 noms dans la colonne A (par exemple ELEVE1 dans A1, puis « tirer »

Créer une procédure en Visual Basic (2/5): Créer la procédure Retourner dans le module visual basic. On créé la procédure appelée « tirage » par Sub tirage … End sub. Il suffit de mettre ce qu’il faut entre Sub et end sub!!!

Créer une procédure en Visual Basic (3/5): Créer un bouton sur le tableur Pour lancer la procédure depuis le tableur, on peut créer un bouton qui, lorsqu’on cliquera dessus, lancera la procédure: 1) Afficher la barre d’outil « contrôle » dans affichage/barre d’outils/contrôle de formulaire 2) Créer un bouton à l’aide de l’outil bouton et cliquer/glisser Doit être enfoncé: Activation du mode conception Créé un bouton

Créer une procédure en Visual Basic (4/5): Créer un bouton sur le tableur 3) Afficher le « contrôle » du bouton (clic droit sur le bouton, contrôle) 4) Dans l’onglet « général », mettre le titre: tirage de 5 élèves

Créer une procédure en Visual Basic (5/5): Créer un bouton sur le tableur 5) Dans l’onglet « Evènements », associer le clic sur le bouton à la macro « tirage »: 6) Valider deux fois par OK puis désactiver le mode conception du bouton 7) Maintenant, quand on clique sur le bouton, la procédure se lance et 5 élèves sont désignés…. Normalement!

4. Réouverture d’un classeur contenant des procédures

Réouverture d’un classeur contenant des procédures (1/2) Quand on ouvre un classeur contenant des macros (procédures visual basic), souvent ces macros sont « désactivées » et donc ne fonctionnent pas. Pour les activer: Outils/option OpenOffice.org/sécurité Sécurité des macros : Niveau de sécurité faible

Réouverture d’un classeur contenant des procédures (2/2) Pour retourner sur visual basic: ALT F11 puis choisir votre module du classeur

5. Travail à faire…

Travail (1/3): créer une fonction Exercice 1: En s’inspirant de la fonction signal: 1) Créer une fonction « chaine » périodique de période 4 telle que: sur [-1;1], chaine(x) = x² sur [-2;-1[, chaine(x) = x+2 sur ]1;2[, chaine(x) = 2-x 2) Tracer la représentation graphique de cette fonction sur [-8;8] dans le tableur.

Travail (2/3): créer une fonction récursive Exercice 2: En s’inspirant de la fonction fiel: Créer la suite de fibonnaci : U0 = 1, U1 = 1 et pour tout entier n >1, Un = Un-1 + Un-2 à l’aide d’une fonction récursive appelée « suite »

Faire tourner l’algorithme Travail (3/3): créer une fonction récursive Exercice 3: Modifier la procédure « tirage » de sorte à ce que les noms d’élèves tirés soit en ordre alphabétiques (c’est-à-dire que les nombres choisis doivent être en ordre croissant). On pourra utiliser l’algorithme de tri suivant: Variables: n: nombre de nombres à trier a: matrice des nombres à trier j: entier Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme Faire tourner l’algorithme

Réponses

Réponses (1/3): créer une fonction Exercice 1: En s’inspirant de la fonction signal: 1) Créer une fonction « chaine » périodique de période 4 telle que: sur [-2;-1[, chaine(x) = x+2 sur [-1;1], chaine(x) = x² sur ]1;2[, chaine(x) = 2-x 2) Tracer la représentation graphique de cette fonction sur [-8;8] dans le tableur.

Réponses (2/3): créer une fonction récursive Exercice 2: En s’inspirant de la fonction fiel: Créer la suite de fibonnaci : U0 = 1, U1 = 1 et pour tout entier n >1, Un = Un-1 + Un-2 à l’aide d’une fonction récursive appelée « suite »

Réponses (3/3): créer une fonction récursive Exercice 3: Modifier la procédure « tirage » de sorte à ce que les noms d’élèves tirés soit en ordre alphabétiques (c’est-à-dire que les nombres choisis doivent être en ordre croissant). On pourra utiliser l’algorithme de tri suivant: Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme

Quelques fonctions et méthodes sur Visual Basic dans Open Office

Quelques fonctions importantes sur Visual basic de Open office Mathématiques: sin, cos, tan, atan : sinus, cosinus, tangente, arc tangente exp, log : exponentiel et logarithme népérien sqr, ^, rnd : racine carrée, puissance, aléa de ]0;1[ int, abs, sgn : partie entière, valeur absolue, signe (renvoie -1,0,1 suivant le signe) +, *, -, /, mod : opérations habituelles et modulo (reste de la division euclidienne) Textes: str, val : convertit un nombre en chaîne de caractère, et inversement str(3,5) est la chaîne « 3,5 », val(« 3,5 ») est le nombre 3,5. left(« texte »,n) , right(« texte »,n) : renvoie les n caractère de gauche (droite) du « texte » left(« MATHEMATIQUES »,3) est égal à « MAT » mid(« texte »,n,p) : renvoie la partie du texte à partir du nième caractère et de longueur p « texte1 » & « texte2 » : concatène les deux textes len : donne la longueur d’un texte

3 méthodes importantes sur Visual basic de Open office Chercher et mettre des informations dans une feuille du classeur: truc = thisComponent.getSheets.getByName(« machin ») : place dans la variable truc « l’objet » feuille appelée machin du classeur dans lequel est la procédure. truc.getCellByPosition(col,lig).string : est le texte contenue dans la cellule repérée par la colonne col et ligne lig de la feuille désignée par truc (cf au-dessus). Par exemple: si dans la feuille appelée machin du classeur la cellule B3 contient le texte « chien », A = truc.getCellByPosition(1,2).string met dans la variable A le mot « chien » truc.getCellByPosition(1,2).string = « chat » met le mot « chat » dans la cellule B3 Attention: La colonne A correspond à la colonne 0, la colonne B correspond à la colonne 1… La ligne 1 du classeur correspond à la ligne 0 de visual basic truc.getCellByPosition(col,lig).value : est le nombre contenu dans la cellule repérée par la colonne col et ligne lig de la feuille désignée par truc. Cela marche comme précédemment: on peut récupérer un nombre d’une cellule ou bien mettre un nombre dans une cellule

FIN

L’algorithme de tri

Algorithme de tri: on le fait « tourner » On suppose que a(1)=7, a(2)=4, a(3)=3, n=3. Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 7 4

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 j=1, n=3 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 j=1 a(j+1)=a(2)=4 a(j)=a(1)=7 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 j=1 Condition non réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=2, n=3 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 a(j+1)=a(3)=3 a(j)=a(2)=7 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=2 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=1, n=3 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=1, a(j+1)=a(2)=3 a(j)=a(1)=4 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=1, Condition non réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=2, n=3 Condition réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=2 a(j+1)=a(3)=7 a(j)=a(2)=4 Condition non réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 j=3, n=3 Condition non réalisée

Algorithme de tri: on le fait « tourner » Début algorithme de tri 1j Répéter tant que j < n si a(j+1) < a(j) alors a(j)  a(j+1) si j >1 alors j-2  j fin du si fin du si j+1  j fin du répéter Fin algorithme n j a(1) a(2) a(3) 3 1 7 4 2 Retour Les nombres a(j) sont triés