IFT-20403-A-cours-2-Algo-1-PDF

IFT-20403-A-cours-2-Algo-1-PDF

-

Documents
8 pages
Lire
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Histoire de l’algorithmiqueIntroduction à l’algorithmique • Le terme algorithme vient du nom du mathématicien persan Al Khwarizmi (820 après J.C.)Variables, opérateurs et expressions • Algorithmes antiques :– PGCD (Euclide, IIIe s. avant J.C.)Philippe Pasquier – Approximation de PI (Archimède, IIIe s. avant J.C.)– Résolution d’équations (Diophante, IIIe s. après J.C.)– Calcul de surfaces (Grecs et Égyptiens)Philippe Pasquier, Septembre 20032IFT-20403-A Basic et Visual BasicHistoire de l’algorithmique Algorithme : qu’est-ce ?• Définition : Un algorithme est une suite finie• L’algorithmique est la fille des mathématiquesd’instructions qui, étant donné des paramètres• Elle a beaucoup évolué ces 50 dernières années typés, calcule une solution d’un problème (boom de la recherche)donné• L’algorithmique est le cœur de l’informatique :– Une formule 1 ne se conduit pas comme une voiture à Notions de variable et de typepédales– Un ordinateur ne s’utilise pas comme un boulier Notions d’instructions – L’algorithmique est le permis de conduire de l’informatique Notion de calcul d’une solutionTaille finie du programme et surtout Sans elle, il n’est pas concevable d’exploiter exécution finie (termine)un ordinateur sans risques.Philippe Pasquier, Septembre 2003 Philippe Pasquier, Septembre 20033 4IFT-20403-A Basic et Visual Basic IFT-20403-A Basic et Visual BasicExemple : calcul du carré Exemple : réutilisation• En VB :• Exemple d’algorithme en pseudo-code ...

Sujets

Informations

Publié par
Nombre de lectures 48
Langue Français
Signaler un problème
Introduction à l’algorithmique
Variables, opérateurs et expressions
Philippe Pasquier
Histoire de l’algorithmique
L’algorithmique est la fille des mathématiques Elle a beaucoup évolué ces 50 dernières années (boom de la recherche) L’algorithmique est le cœur de l’informatique : Une formule 1 ne se conduit pas comme une voiture à pédales Un ordinateur ne s’utilise pas comme un boulier L’algorithmique est le permis de conduire de l’informatique
Sans elle, il n’est pas concevable d’exploiter un ordinateur sans risques.
IFT20403A Basic et Visual Basic
3
Philippe Pasquier, Septembre 2003
Histoire de l’algorithmique
Le terme algorithme vient du nom du mathématicien persan Al Khwarizmi (820 après J.C.) Algorithmes antiques : PGCD (Euclide, IIIe s. avant J.C.) Approximation de PI (Archimède, IIIe s. avant J.C.) Résolution d’équations (Diophante, IIIe s. après J.C.) Calcul de surfaces (Grecs et Égyptiens)
IFT20403A Basic et Visual Basic
Algorithme : qu’estce ?
2
Philippe Pasquier, Septembre 2003
Définition : Un algorithme est une suite finie d’instructions qui, étant donné des paramètres typés, calcule une solution d’un problème donné
Notions de variable et de type
Notions d’instructions
Notion de calcul d’une solution
Taille finie du programme et surtout exécution finie (termine)
IFT20403A Basic et Visual Basic
4
Philippe Pasquier, Septembre 2003
Exemple : calcul du carré
Exemple d’algorithme en pseudocode : Fonction Carré (Entier : x) résultat = x * x retourne résultat Fin Implémentation en VB 6.0 : Public Function Carré(x) As Single Carré = x * x End Function
Dans le cadre de ce cours, tout sera exprimé en code VB
IFT20403A Basic et Visual Basic
Notion de variable
5
Philippe Pasquier, Septembre 2003
Elles sont nécessaires pour stocker (conserver) une valeur dynamique et réutilisable. C'est en fait une simple zone mémoire temporaire qui porte un nom unique choisi par le programmeur pour faciliter sa programmation. Le nom de la variable désigne une adresse mémoire. Si l’on veut une programmation cohérente, il faut les déclarer (avec leur type).
Toujours déclarer toutes vos variables
IFT20403A Basic et Visual Basic
7
Philippe Pasquier, Septembre 2003
Exemple : réutilisation
En VB :
Public Function puissance4(x) As Single puissance4 = Carré(x)* Carré(x) End Function
Ou bien :
Public Function puissance4(x) As Single Cube = Carré(Carré(x)) End Function
IFT20403A Basic et Visual Basic
6
Philippe Pasquier, Septembre 2003
Syntaxe des déclarations Syntaxe d’une déclaration de variable : Dim <NomVariable> As <Type> Pour la lisibilité du code, on peut les commenter après une apostrophe ( ‘ )
Vous serez notés sur la lisibilité de votre code Exemples : Dim Taux As Single ‘ Taux de la TVA Dim Réponse As String ‘ Mot proposé par le joueur Les variables doivent être déclarées avant d’être utilisées(cocher la case Tools»Option»Editor»Require Variable Declaration)
IFT20403A Basic et Visual Basic
8
Philippe Pasquier, Septembre 2003
Syntaxe des noms de variables
1. Un nom doit débuter par une lettre 2. Il ne doit être constitué que de lettres, de chiffres et du soulignement (_) 3. Longueur maximale : 255 caractères 4. Ne doit pas être un motclé du langage Exemples valides : L987654, MaMère, C_O_O_L Exemples invalides : 997L, Ma Mère, C.O.O.L, DIM
Il est essentiel de donner des noms explicites à vos variables (lisibilité du code)
IFT20403A Basic et Visual Basic
Types de données
9
Philippe Pasquier, Septembre 2003
Types de variables en VB (suite) : : booléenne, True (1) ou False (0) Boolean : octet (0 à 255 en binaire) Byte : monétaire, 4 chiffres décimaux Currency : date de 1 janvier 100 au 31 décembre Date 9999 : référence à un objet Object : type de données défini par Type l’utilisateur
IFT20403A Basic et Visual Basic
11
Philippe Pasquier, Septembre 2003
Types de données
Types de variables en VB (fig. 33, p.165) : 16 : de 32 768 à 32 767 (65536=2 ) Integer : de 2 147 483 648 à 2 147 483 647 Long : décimaux en simple précision, 39 Single chiffres significatifs : décimaux en double précision, Double plus de 300 chiffres significatifs ! : chaînes de caractère ASCII de 0 à String 65535 octets : de type nombre ou texte selon Variant l'affectation faite
IFT20403A Basic et Visual Basic
10
Initialisation des variables
Philippe Pasquier, Septembre 2003
On peut préfixer les noms de variables par leur type (fig 34, p.67) Pour éviter tout problème, il est préférable d’initialiser les variables déclarées. Exemples : intCompteur = 0 ‘ affecte 0 à Compteur ‘ affecte 20.6 à TauxsngTaux = 20.6 Parmi les types de données, les plus utilisés sont le type String (chaîne de caractères), le type Integer (entier relatif) et le type Single (décimal, virgule flottante).
IFT20403A Basic et Visual Basic
12
Philippe Pasquier, Septembre 2003
Les constantes
Des variables dont le contenu est fixe (optimisation de l’espace mémoire). VB reconnaît deux types de constantes : Constantes littérales : désigné directement par une valeur. Exemples : 3 ‘ Entier Décimal3.0 ‘ ‘ chaîne de caractères« Mes amis du Togo » True ‘ Valeur booléenne Constantes symboliques : emplacement mémoire de contenu invariable.
IFT20403A Basic et Visual Basic
13
Philippe Pasquier, Septembre 2003
Les constantes symboliques
Syntaxe de la déclaration d’une constante symbolique : Const <NomConstante> [As type]= <expr> Exemples : Const conPI As Single = 3.141593 Const conAgeMax As Integer = 89 Const conPI2 As Single = conPI * conPI Non modifiables après initialisation Facilitent les modifications du code et rendent le programme plus lisible
IFT20403A Basic et Visual Basic
15
Philippe Pasquier, Septembre 2003
Constantes littérales
Chaîne de caractères : Toutes les chaines entre guillemets sont des chaînes de caractères, y compris la chaine vide «». On ne peut pas faire de calcul en utilisant des chaines : «3»+«2» Grandeurs numériques : Les valeurs décimales doivent contenir un point pour être considérée comme telles : 3.0 Le reste passe pour entier. Typage par suffixe : %(Integer), &(Long), !(Single), #(Double), $(String), @(Curency), #X#(Date)
IFT20403A Basic et Visual Basic
Typage des littéraux
Exemples : 550 «550» 550.0 «Marie» Marie 550! 550#
14
Philippe Pasquier, Septembre 2003
‘ un entier (Single ou double) ‘ une chaîne de caractères ‘ un décimal ‘ une chaîne de caractères ‘ un nom de variable ? ‘ décimal (single) ‘ décimal (double)
IFT20403A Basic et Visual Basic
16
Philippe Pasquier, Septembre 2003
Les expressions
Une expression peutêtre : Un littéral, une constante Une variable Une propriété (de contrôle, …) Un opérateur ou une fonction et ses arguments (littéraux , variables, propriétés ou expressions) Exemples : 5712.75 / 12.456 ‘ Single lblTitle.Enabled ‘ Booléen 45.1# * 65.123# ‘ Double #4192# ‘ Date sngNew98total – 1000! ‘ Single
IFT20403A Basic et Visual Basic
17
Philippe Pasquier, Septembre 2003
Les opérateurs mathématiques
Il existe de nombreux autres opérateurs mathématiques : Fonctions (opérateurs unaire) : Abs, Atn, Cos, Exp, Fix, Int, Log, Rnd, Sgn, Sin, Sqr, Tan Instruction (opérateur 0aire) : Randomize Fonctions financières : DDB, FV, Ipmt, IRR, MIRR, Nper, NPV, Pmt, PPmt, PV, Rate, SLN, SYD
IFT20403A Basic et Visual Basic
19
Philippe Pasquier, Septembre 2003
Les opérateurs
Opérateurs arithmétiques unaires ou binaires (dans l’ordre de préséance) : : élévation à la puissance 1. ^ : moins (négation) 2.  : multiplication, division 3. *, / : division entière 4. \ : modulo arithmétique 5. Mod : addition et soustraction 6. +, On peut utiliser les parenthèses pour changer l’ordre de préséance. En cas d’égalité VB traite de gauche à droite. En cas d’imbrication, VB traite l’intérieur d’abord.
IFT20403A Basic et Visual Basic
18
Philippe Pasquier, Septembre 2003
Les opérateurs sur les chaînes
Opérateurs sur les chaines de caractères : ou (concaténation) & + Fonctions : Instr, InstrB, Lcase, Left, LeftB, Len, LenB, Ltrim, Mid, MidB, Right, RightB, Rtrim, Space, StrComp, StrConv, String, Tab, Trim, Ucase Instructions : Lset, Mid, MidB, Rset La plupart renvoies des variants, il faut ajouter un à leur nom pour avoir un String $
IFT20403A Basic et Visual Basic
20
Philippe Pasquier, Septembre 2003
Les opérateurs sur les dates
Traitement de la date et des heures : Fonctions : Day, Date, DateAdd, DateDiff, DatePart, DateSerial, DateValue, Hour, Minute, Month, Now, Second, Time, Timer, TimeSerial, RimeValue, WeekDay, Year Instructions : Date, Time Il faut encadrer les litéraux de # : DateDébut = #15/03/75# HeureDépart = #15:30#
IFT20403A Basic et Visual Basic
21
Opérateurs de conversion
Philippe Pasquier, Septembre 2003
Fonctions de conversion (d’un type vers un autre) : Asc, AscB, AscW, Cbool, Cbyte, Ccur, Cdate, CDbl, Cdec, Chr, ChrB, ChrW, Cint, CLng, CSng, CStr, Cvar, CVDate, CVErr, Format, Hex, Oct, Str, TypeName, Val, VarType
IFT20403A Basic et Visual Basic
23
Philippe Pasquier, Septembre 2003
Opérateurs logiques et tests
Retournent des valeurs booléennes : Opérateurs logiques (s’appliquent à des booléens) : And, Eqv, Imp, Not, Or, Xor Opérateurs de comparaisons numériques : =, <, <=, <>, >, >=, Is, Like Fonctions logiques (typage) : IsArray, IsDate, IsEmpty, IsError, IsMissing, IsNull, IsNumeric, IsObject Priorité :ils sont évalués après les opérateurs mathématiques, évaluation de gauche à droite de l’expression
IFT20403A Basic et Visual Basic
La fonction Format
22
Philippe Pasquier, Septembre 2003
Mise en forme de données pour l’affichage : Syntaxe : Format (expression, format) Il y a des formats prédéfinis (fig 238, p.145) : Currency Fixed Standard Percent Exemple : Format (Montant, Fixed) & «$CA» Format (Montant, Standard) & «$CA» Format (Montant, _«# 000.00») & «$CA»
IFT20403A Basic et Visual Basic
24
Philippe Pasquier, Septembre 2003
La fonction Val
Ordonne à VB de considérer une chaîne comme valeur numérique : Syntaxe : VAL(Chaîne) est blindée (pas d’erreurs) mais VAL renvoie par défault 0 et s’arrête sinon au premier caractère qui n’est pas un chiffre ou un séparateur décimal (le point). Exemples : : 0 VAL(«XYZ») : 122.2 VAL(«123.2$CA») VAL(txtTaux.Text) : 2.456
IFT20403A Basic et Visual Basic
25
L’instruction d’affectation
Philippe Pasquier, Septembre 2003
Les propriétés des objets sont des variables comme les autres. Elle sont déclarées et initialisées à la création de l’objet. On y accède grâce à la notation pointée : [feuille.]objet.propriété Exemples : CmdQuitter.Caption = « Quitter » frmBase.cmdCalculer.Visible = false txtTaux.Text = Str(sngTaux)& « % » txtTaux.Text = Format(sngTaux, Percent) txtTaux.Text = «» ‘ la chaîne vide
IFT20403A Basic et Visual Basic
27
Philippe Pasquier, Septembre 2003
L’instruction d’affectation
Le = est utilisé comme instruction d’affectation. Il signifie : la valeur de la variable à gauche du signe est remplacée par l’évaluation de la valeur de l’expression de droite si celleci est du bon type. Exemples : ‘ Taux de la TVADim Taux As Single ‘ mauvaisTaux = « pas cool » Taux = 5 ‘ bon ‘ mauvaisTaux = 987456321 ‘ bonTaux = 98*34 Taux = 98/0 ‘ mauvais
IFT20403A Basic et Visual Basic
Exemples d’affectation
26
Philippe Pasquier, Septembre 2003
sinRésultat=(intJ1*constPI)/intJ2 txtMessage.Text = «Super » & Name & «, tu as : » & Str(sngSold) intNbAd = intNbAd + 1 cmdQuitter = (intTime >= 90) Échanger deux valeurs ( et ): intI intJ intTemp = intI intI = intJ intJ = intI
IFT20403A Basic et Visual Basic
28
Philippe Pasquier, Septembre 2003