PRO 1028 Programmation informatique en Ingénierie I : Sommaire



Documents pareils
Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle P. Bonnet

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Algorithmique et Programmation, IMA

Travaux Pratiques de Commande par ordinateur 1 TRAVAUX PRATIQUES

Programmation C. Apprendre à développer des programmes simples dans le langage C

Utilisation d objets : String et ArrayList

Programmation Visual Basic. Visite guidée d'un programme Visual Basic 6.0

1. Structure d'un programme FORTRAN 95

Algorithmique et programmation : les bases (VBA) Corrigé

ACTIVITÉ DE PROGRAMMATION

Cours Informatique Master STEP

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE


Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Visual Basic for Applications

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cyber-base du Pays Martégal. Atelier «Découverte de l ordinateur»

Plan du cours Cours théoriques. 29 septembre 2014

Cours de C++ François Laroussinie. 2 novembre Dept. d Informatique, ENS de Cachan

Présentation du langage et premières fonctions

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Conventions d écriture et outils de mise au point

Formation VBA 3 Interagir

L informatique en BCPST

UE Programmation Impérative Licence 2ème Année

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Tp 1 correction. Structures de données (IF2)

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Généralités sur les systèmes d Exploitation

IV- Comment fonctionne un ordinateur?

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

Table des matières Avant-propos... V Scripting Windows, pour quoi faire?... 1 Dans quel contexte?

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

Notions fondamentales du langage C# Version 1.0

Initiation à la programmation en Python

SYSTÈME DE GESTION DE FICHIERS

TD3: tableaux avancées, première classe et chaînes

Bernard HAMM, Évelyne LAVOISIER

Programmer en JAVA. par Tama

Introduction à MATLAB R

Mode d emploi de la clef USB de l I.P.I. Philosophie de la clef USB

Programmation système I Les entrées/sorties

Utilitaires méconnus de StrataFrame

Licence Sciences et Technologies Examen janvier 2010

Programmation en Java IUT GEII (MC-II1) 1

Premiers pas sur l ordinateur Support d initiation

Préparation à l examen EFA en Macro

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

Guide d utilisation de la clé mémoire USB

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Cours Informatique 1. Monsieur SADOUNI Salheddine

Leçon 1 : Les principaux composants d un ordinateur

MATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.

Généralités sur les systèmes d Exploitation

Guide de formation avec cas pratiques. Programmation. Philippe Moreau Patrick Morié. Daniel-Jean David

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Java Licence Professionnelle CISII,

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Évaluation et implémentation des langages

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

TP 1. Prise en main du langage Python

Cours d algorithmique pour la classe de 2nde

Applications des mathématiques pdf. Introduction à la Programmation en Visual Basic 6

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Compilation (INF 564)

1 TD 2 : Construction d'une chier Acrobat et envoi par

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Corrigé des TD 1 à 5

Introduction à R. Florence Yerly. Dept. de mathématiques, Université de Fribourg (CH) SP 2011

Plan du cours. Historique du langage Nouveautés de Java 7

La mémoire. Un ordinateur. L'octet. Le bit

Solutions du chapitre 4

INF 321 : mémento de la syntaxe de Java

HMI target Visu / PLC HMI. Pour réaliser une interface homme machine avec PLC control


URECA Initiation Matlab 2 Laurent Ott. Initiation Matlab 2

Génie Logiciel I. Cours VI - Typage statique / dynamique, fonctions virtuelles et classes abstraites, flots d entrées / sorties, et string

Les chaînes de caractères

Initiation à LabView : Les exemples d applications :

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Introduction à l informatique en BCPST

Module : Informatique Générale 1. Les commandes MS-DOS

I. Introduction aux fonctions : les fonctions standards

.NET - Classe de Log

1 Introduction C+ + Algorithm e. languag. Algorigramm. machine binaire. 1-1 Chaîne de développement. Séance n 4

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Initiation à la Programmation en Logique avec SISCtus Prolog

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi module

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

STAGE IREM 0- Premiers pas en Python

Le langage C. Séance n 4

SNT4U16 - Initiation à la programmation TD - Dynamique de POP III - Fichiers sources

Manuel d'installation

Programmation avec Microsoft Visual Basic. NET. Réponses aux questions Solutions des exercices

Transcription:

UQTR École d Ingénierie PRO 1028 Programmation informatique en Ingénierie I : Sommaire Vincent FRANCOIS Décembre 2002 1

UQTR École d Ingénierie Chapitre 1 Introduction à l informatique Architecture d un micro-ordinateur Représentation interne de l information Logiciels de programmation» Compilateur» Linker 2

UQTR École d Ingénierie Chapitre 2 La programmation séquentielle Les notions de bases Un programme de base : Sub main() Les variables (p101 à 115) Définition (p101) Les types (p101 à 105) Les déclarations (p105 à 107) Les constantes (p113) Les énumérations (p115) Les opérations entre les variables (p117 + p140 à 144) 3

UQTR École d Ingénierie Conversions de type (p144 à 148) Les sous-programmes(p128 à 132) Subroutine (p129) Function (p130) Les arguments et le passage d arguments(p132 à 134) La portée des variables (p111 à 113) Les instructions de contrôle (p116 à 127) Mise en forme (p116) Commentaires (p116) If then else end (p118 à 120) For next (p121 à 122) For each next (p122) Do loop (p122 à 124) While wend (p124) Select case (p124 à 125) 4

UQTR École d Ingénierie Select case (p124 à 125) Iif (p125) Switch (p126) Choose (p126) With end with (p127) Les tableaux (p107 à 111) Définition Passage d Arguments avec des tableaux Exemple d utilisation La gestion des erreurs (p174 et p 191 à 192) Erreurs dues à un problème d algorithme Erreurs dues à un problème d utilisation des commandes de VB Les chaînes de caractères (p148 à 160) Construction d une chaîne (p148 à 150) Recherche dans une chaîne (p150 à 151) 5

UQTR École d Ingénierie Le format (p154 à 157) Codification des caractères (p151 à 153) L allocation dynamique (p108) Les fichiers (p995 à 1003) Accès séquentiel (p996 à 999) Accès direct (p999 à 1000) Accès binaire (p1000 à 1003) Fichier versus base de données Les variables statiques (p106 et 132) 6

UQTR École d Ingénierie Chapitre 3 La programmation événementielle L approche de la programmation (p35 à 42) Utilisateur au centre (p35 à 37) Programmation sur évènements (p39) Les modes de fonctionnement (p40 à 41) L environnement de développement (p43 à 72) Création d une application (p73 à 90) Dessin de l interface (p73 à 79) Valorisation des propriétés (p80 à 85) Écriture du code (p86 à 90) 7

UQTR École d Ingénierie Les éléments visuels de l application (p207 à 596) Notion de méthode événement et propriétés Les feuilles de travail (p207 à 254) MessageBox (p229 à 234) CommonDialog (p283 à 304) Les autres objets visuels de Visual Basic Distribution d un logiciel crée à l aide de Visual Basic 8

UQTR École d Ingénierie PRO 1028 Programmation informatique en Ingénierie I : Résumé Mylène Raymond Décembre 2002 9

1 CHAPITRE 1 Introduction à l informatique Architecture d un micro-ordinateur Odinateur : 1 Clavier 1 Écran 1 Souris 1 Boîtier : Carte mère : Processeur (ensemble de transistors) Barette de mémoire ROM Alimentation (+-12, +-5) Mémoire de masse (disque dur) Mémoire de masse non fixe (cd-rom, diquette, graveur) Carte video Carte réseau : LAN/Ethernet Communication externe (série, parallèle, USB, USB2) Modem Carte de son Système d exploitation (OS) Série Windows (95/98/Millenium) (NT4/2000) XP Mac OS Unix C Linux DOS Logiciels de programmation Programme : 1 ou plusieurs fichiers textes écrits selon un language donnée. COMPILATION en 1 ou plusieurs fichiers en language machine. EDITION DE LIENS LINKER en fichier exécutable (soit le programme). Languages (Basic, Java, C, C++, Fortran, ADA, Pascal, Prologue, Cobol, Lisp) Séquentielle : Tant que l exécution de la ligne n est pas terminée, rien ne se passe. Événementielle : Utilisateur au centre. Événements qui se passent du à l action de l utilisateur. Ex : cliquer sur fichier.

2 CHAPITRE 2 La programmation séquentielle Les notions de bases Un programme de base Sub main()... En Sub Capable (compiler et linker) de former l exécutable, mais celui-ci ne fait rien. Les variables Définition : Outils (possède un nom décidé par le programmeur) qui permet de stocker des informations. Règles de créations de nom de variables : Utiliser uniquement les 26 lettres, les 10 chiffres e «_» Le premier caractère ne peut pas être un chiffre. Le nom doit comporter moins de 255 carractères. Le nom ne doit pas être une commande du language. En VB, il n y a pas de différence entre els minuscules et les majuscules Noms souvent utilisés : I, j, x, y, compteur, pas_de_temps Noms non-valide : Pas de temps, sub, msgbox, 4I Les types : les variables sont typés Les déclarations : Implicite DefInt I-J Explicite Dim nom as Type Dim i as Integer Dim chaine as String Dim i, j as integer (le i est variant) Dim j [Variant] Dim j as integer

3 Les constantes : «variable» à valeurs fixes Option explicit. Constantes.. ex : const PI = 3.141592564 Sub main(). Variables End sub Les énumérations : Private Enum Couleurs Noir Blanc Vert End Enum; Dim coul as Couleurs Type Client Nom as String Nas as Long Tel as String End Type; // à mettre à la même place que les constantes dans le code Dim personne as client; // à mettre à la même place que les variable dans le code personne.nom Les opérations entre les variables Affectation, ^. -, *, /, \, mod, +, -, & (concaténation de chaîne) Conversions de type CDbl : convertit une expression en donnée de type Double (avec arrondi) CInt : convertit une expression en donnée de type Integer (avec arrondi) CStr : convertit une expression en donnée de type string

4 Les sous-programmes Partie de code indépendant localisée également dans le projet de façon indéptendante du programme minimal. Subroutine : Ne renvoie pas de valeurs. Déclarations : Sub nom_sub.. variables de la subroutine. codes. end Sub Function : Renvoie des valeurs typées Déclarations : Function nom_func as type.. variables de la function. codes. end Function ex : Sub affiche msgbox «Allo» end Sub Function f as double Dim x as double Dim res as double Dim chaine as Double Chaine = inputbox(«entrer x») X = cdbl(chaine) Res= x * x + 1 F = res end function Sub main Dim z as double Affiche Z = f End Sub

5 Les arguments et les passages d arguments Ce sont des variables d un sous-programme qui sont initialisées par le sousprogramme appelant. Déclaration des arguments : même façon qu un variable en enlevant le mot Dim. Se déclare à côté du nom du sous programme entre (). Il y a 2 modes de passage d arguments : Par valeur : La valeur de la variable d initialisation est copiée dans l argument. Par référence : l argument s identifier à la variable d initialisation. La portée des variables Il y a deux types de variables : Variables locales: Déclaré dans une sous-routine Variables globales: Déclaré en haut de programme Les variables globales, ce sont des variables définies dans tout le module. Elles rendent les sous-programme non-autonome, parce qu ils dépendent du module dans lequel ils sont. Elles rendent le code non-réutilisable. Pas d avantage et compliqe la vie à long terme. Les variable locales, ce sont des variables définies et connues uniquement dans une sous-routine. Séquentiel: Variable globales inutiles Événementiel: Utile pour les informations d environnement Nomdumodule.a = nomdumodile.a + 1 Dim a as double (Dim c est privé par défaut) Sub a () (Sub est public par défaut) Les instructions de contrôle Mise en forme 1 instruction par ligne ou plusieurs instructions, il faut les séparer par :

6 x(0)=1 : x(1)=2 : x(4)=2 On peut couper une instruction pas le carractère «_» Chaine = cstr(b1) + cstr(b2) + cstr(b3) + _ cstr(b4) Msgbox «fgdfgdfgdgfg» _ & «fgdfgdfgdfg» Conseils, 1 instruction par ligne, décaler vers la droite les blocs de codes Commentaires Rem ou le reste de la ligne est ignoré par le compilateur. If then else end If condition then If condition 1 then code 1 code 1 else else if condition 2 then code 2 code 2 end if else code 3 end if if condition then code For next For I=5 to 10 Vecteur(I) = I +2 Next I I optionnel For each next Dim vecteur (1 to 42) as double For each I in vecteur Vecteur(I) = I +2 Next

7 Do loop Do.... Loop (while, until) condition tant que condition est vrai, jusqu au moment où la condition est vraie Do (until, while).... Loop While wend While condition do while condition.. code...code wend loop Select case Select case expression Case valeur 1..Code 1 Case valeur 2..Code 2 Case valeur 3..Code 3 end select Iif Iif (condition, valeur1, valeur2) renvoie Valeur 1 si condition vraie Valeur 2 si condition fausse A=3 B=2 C= lif (a<b, a,b) C=b=2

8 Switch Switch(exp1, val1, exp2, val2,,expn,valn Renvoie la valeur immédiatement à droite de la première condition vraie. Choose Choose (index,val1,val2,val3,,valn) Renvoie la valeur numero index. With end with With nom.personne = «moi».tel = 4545433.nas = 33333333 with Les tableaux Définition : C est un ensemble de plusieurs variable regroupé sous le même nom. Passage d Arguments avec des tableaux Sub equation (matrice() as double) Equation matrice Exemple d utilisation Dim vecteur (1 to 12) as double Vecteur regroupe 12 variables Dim Matrice (1 to 4, 1 to 3) as double

9 La gestion des erreurs Erreurs dues à un problème d algortihme Erreur dues à un problème d utilisation des commandes de VB Les chaînes de caractères Dans chaque OS (système d exploitation), il y a une correspondance entre la table des carractères et leur équivalent 256 carractères (0 à 255) 0 à 127 sont à peu près les stantard selon le Os (lettres, chiffres) après 128 il diffèrent. En windows table ainsi 0 à 31 caractères non imprimable 13(saut de ligne), 10 (début de ligne), 9 (tab) & et join Dim s as string s = «bonjour» s = s & s s = «bonjourbonjour» concaténation Split split («bonjour toto 12») «bonjour» «toto» «12» extraire les mots d une phrase. Tableau de string = split Dim chaine (1 to 3 ) as string Len Donne le nombre de carractères d une chaine Len («bonjour toto») 12 Dim chaine as string *20

10 Instr Instr («bonjour toto», «jour») 4 Instr («bonjour toto», «to») 9 Instr (10, «bonjour toto», «to») 11 - rechercher - rechercher suivant Instrev Instr («bonjour toto», «to») 11 Instr (10, «bonjour toto», «to») 9 Left Retourne une chaine de n carractères les plus à gauche Left ( bonjour, 3) bon Right Retourne une chaine de n carractères les plus à droit right ( bonjour, 4) jour Mid mid (chaine, pos,n) retourne une chaine de n carractères à partir de la position pos mid («bonjour toto» 5,3,) «our» Ltrim Ote toutes les espaces à gauche d une chaine Rtrim Ote toutes les espaces à droite d une chaine Trim Ote toutes les espaces à gauche et à droite d une chaine

11 Strcomp Compare deux chaines entre elle. Renvoie 0 si identique. Opération logique = ou <> Allocation dynamique On laisse un blanc. Le programme alloue la mémoire en cours. Déclaration : Dim a() as double Redim a (1 to 3) (1 to m) Redim a (1 to 5) réinitialise la tout Redim Preserve aa (1 to 5) Les fichiers Définition : C est de l information stockés sur une unité rigide (disquette, disque dur) Pour conserver des données d une utilisation à l autre de la même application. Pour transmette de l information d une application à l autre. 2 types de fichier : Les non-structurés : information est stockée de façon séquentielle sans notion d ordre Les structurés : informations stockée de façon ordonnées (base de données) Les fichiers non-structurés : 3 accès avec VB différents par ces fichiers Accès séquentiel Utilisé pour des fichiers ne contenant que des caractère lisible + chr (10) + char(13) (surtout pour fichier texte)

12 Avec ce mode d accès, on peut lire, écrire ou ajouter de l information, mais un seul à la fois. Un fichier s ouvre et se ferme On ne peut lire et écrire en même temps. Open «nomfichier.txt.» for (input as numero 1, out put, append) Append ajoute des trucs Le numero doit être compris entre 1 et 511 un entier Entre 1 et 255 on a l exclusivité sur le fichier Entre 256 et 511 on n a pas l exclusivité Fermeture de fichier : Close (numero) Lire : line input #numero, chaine Écrire : print #numero,chaine Fin de fichier EOF (numero) = True, false Accès direct Utilisé pour des fichiers ne contenant que des informations provenant d un type composé ex : type client Avec ce mode d accès, on peut lire et écrire en même temps Un fichier s ouvre et se ferme On ne peut lire et écrire en même temps. Open «nomfichier» for random ar numero len = len (client) Le numero doit être compris entre 1 et 511 un entier Entre 1 et 255 on a l exclusivité sur le fichier Entre 256 et 511 on n a pas l exclusivité Fermeture de fichier : Close (numero) Lire : get numero, I, var Écrire : put numero, I, var Fin de fichier EOF (numero) = True, false

13 Accès binaire Utilisé pour des cas où l accès ne peut être ni séquentiel, ni direct. Avec ce mode d accès, on peut lire et écrire de l information Un fichier s ouvre et se ferme On ne peut lire et écrire en même temps. Open «nomfichier» for binary as numero Le numero doit être compris entre 1 et 511 un entier Entre 1 et 255 on a l exclusivité sur le fichier Entre 256 et 511 on n a pas l exclusivité Fermeture de fichier : Close (numero) Lire : get numero, octect, chaine Écrire : put numero, octect, chaine Fin de fichier EOF (numero) = True, false Si on veut échanger des données entre différents OS, il faut les transférer en fichier texte (language de prog) Avantages de l accès binaire: Ça donne des fichier plus compacts. Désavantages de l accès binaire: pas lisible partout. Les variables statiques Une variable local qui garde sa valeur d un appel à l autre jusqu à la fin de l exécution. Sub prog() Static c as Double End Sub

14 CHAPITRE 3 La progrommation événementielle L approche de la programmation Utilisateur au centre Séquentielle : le programme est au centre. Événementielle : l utilisateur est au centre. On a un programme qui tourne et qui ne fait que répondre aux actions de l utilisateur (évènements) Une boucle infinie tourne derière le programme Do.... loop while condition (true) Programmation sur évènements Consiste à écrire le code correspondant à un évènement dans un sous programme de type sub. Le code écrit dans le sous-programme est séquentiel. L utilisateur doit avoir accès à une interface graphique (form, feuille, fenêtre) Les modes de fonctionnement

15 L environnement de développement Création d une application Dessin de l interface défini l interface Unité en twips 1440 twips = 1 pouce Name : est une propriété commune à tous les contrôles. C est le nom de la variable qui représente les objets. Caption : nom visuel à l écran Valorisation (initialisation) des propriétés défini l interface Écriture du code défini les réponses aux événements Chaque contrôle correspond à un type. Type contrôle c est un objet.

16 Un type est composé de propriétés, caractérique de l objet ex : form height et width sont des integer Un type est composé de méthodes, action que l objet peut réaliser, ex : form line, sub ou function. Un type est composé d évenement, réponse possible à une action extérieur de l objet. Ex : form click événementielle Le nom de l objet est form Dim form1 as form Form1.height Form1.line (x1,y1) (x2,y2), R,G,B La propriété d un objet peut être de type objet. Ex: command_button propriété font de type objet. Propriété de font : size, name. Command1.font.size Similitude avec définition de nouveaus types. Objet: un type composé avec des règles interne. L objet est la base de la programmation orienté objet On utilise que l objet, mais on ne le modifie pas et on ne le crée pas Les éléments visuels de l application Notion de méthodes événements et propriétés Pour afficher une form Sub command1_click() (load form1) Form1.Show End sub Pour désafficher une form Sub command1_click() (Form1.hide) Unload Form1 End sub

17 La méthodes show peut avoir 1 argument : Vbmodeless (Défaut) Vbmodal : La fenêtre sera modal sur l application. La fenêtre prend le contrôle de l application et interdit toutes actions sur les autres Méthodes Circle : dessine une elipse. Cls : efface les éléments d une form qui ont été dessiné par une méthode de la forme. Poet : dessine un point Line : dessine une ligne Hide, show SetFocus : prend le focus Les feuilles de travails

18 Événement 1ier form_load Nième form_paint Dernier form_unload appelé souvent décharge de la mémoire