Introduction
Nous avons vu précédemment les types de données qui existent en programmation. Nous
allons maintenant voir le type de structure de données linéaire.
Commençons par définir cette structure. Une structure de données linéaire est une
structure dans laquelle les éléments de données sont disposés de manière séquentielle ou
linéaire. Dans ce type de structure, un élément est rattaché au précédent et au suivant qui
lui sont adjacents. Dans cette structure de données linéaire, un seul niveau est impliqué. Par
conséquent, nous pouvons parcourir tous les éléments en une seule fois. Les structures de
données linéaires sont faciles à mettre en œuvre car la mémoire des ordinateurs est
organisée de manière linéaire.
Au cours de cette super compétence, nous allons donc apprendre à travailler avec les
structures de données suivantes:
Array
Matrix
String
Tableau.
Un tableau est une collection d'éléments stockés à des emplacements mémoire contigus.
L'idée est de stocker plusieurs éléments du même type ensemble. Cela facilite le calcul de la
position de chaque élément en ajoutant simplement un décalage à une valeur de base, c'est-
à-dire l'emplacement mémoire du premier élément du tableau (généralement désigné par le
nom du tableau).
Les tableaux sont des collections d'éléments stockés à des emplacements mémoire contigus.
L'image ci-dessus peut être considérée comme une vue de haut niveau d'un escalier où vous
vous trouvez à la base de l'escalier. Chaque élément peut être identifié de manière unique
par son indice dans le tableau.
Pourquoi avons-nous besoin de tableaux ?
1. Voici quelques raisons d'utiliser les tableaux:
Les tableaux permettent de stocker plusieurs valeurs dans une seule variable
Les tableaux permettent de traiter de nombreuses valeurs facilement et rapidement
Le tri et la recherche des valeurs sont plus faciles dans les tableaux Les tableaux dans
l'algorithme : Pour déclarer un tableau, vous devez spécifier un nom et le type de
données qu'il contiendra. Pour le créer, vous devez spécifier sa longueur (le nombre
de valeurs), car le tableau est une structure de données statique, ce qui signifie que
vous ne pouvez pas modifier sa taille une fois qu'il a été déclaré.
Pratique avec les tableaux
Après avoir appris ce que sont les tableaux, et à quoi ils servent, passons à la pratique.
La première chose à faire avec un tableau est de savoir comment le définir et comment le
parcourir. Prenons le code suivant:
Les tableaux sont des structures de données.
Une structure de données de type tableau, ou simplement un tableau, est l'une des
structures de données les plus utilisées en programmation. Ici, nous allons commencer par
apprendre à déclarer un tableau. Prenons le code suivant:
La deuxième étape consiste à voir comment insérer un élément dans un tableau. Rappelez-
vous que, lorsque vous insérez des éléments dans un tableau, vous devez toujours vous
assurer que vous ne réduisez pas la taille du tableau.
L'utilisateur doit saisir un nouvel élément, ainsi que sa position dans le tableau.
La troisième étape consiste à voir comment nous pouvons effectuer une recherche dans un
tableau. Il existe de nombreux algorithmes utilisés pour rechercher un élément dans un
tableau.
La dernière étape consiste à voir comment supprimer un élément d'un tableau. Voici les
étapes à suivre pour supprimer un élément d'un tableau : Début Définir J = K Répéter les
étapes 4 et 5 while J < ; N Set LA[J] = LA[J + 1] Set J = J+1 Arrêter Et voici l'algorithme
structuré:
L'algorithme structuré est le suivant
Matrice:
Un tableau bidimensionnel est un tableau unidimensionnel, où dans chaque cas nous avons
un tableau unidimensionnel. Un tableau bidimensionnel peut être irrégulier (ses tableaux
peuvent tous être de longueurs différentes), mais nous travaillons le plus souvent avec (pour
des paramètres M et N appropriés) des tableaux bidimensionnels M par N qui sont des
tableaux de M lignes, chacun étant un tableau de longueur N (il est donc également logique
de se référer au tableau comme ayant N colonnes). Pour désigner l'entrée dans la ligne i et la
colonne j d'un tableau bidimensionnel m[][], nous utilisons la notation m[i][j] ; pour déclarer
un tableau à deux dimensions, nous ajoutons une autre paire de crochets ; et pour créer le
tableau, nous spécifions le nombre de lignes suivi du nombre de colonnes après le nom du
type (tous deux entre crochets), comme suit:
Les tableaux à deux dimensions sont créés à partir d'un tableau à deux dimensions.
nom_matrice : ARRAY_OF type[nb_ligne][nb_colonne] ;
exemple:
Autre exemple de manipulation de matrice, la multiplication matrice-matrice:
Chaîne de caractères
Une chaîne est une séquence de caractères. En d'autres termes, une chaîne est un tableau
de données de type caractère. Il s'agit de la structure de données la plus utilisée. Déclarer
une chaîne de caractères est aussi simple que de déclarer un tableau à une dimension. Voici
la syntaxe de base pour la déclaration d'une chaîne de caractères.
Chaîne de caractères
Une chaîne est une séquence de caractères. En d'autres termes, une chaîne est un tableau
de données de type caractère. Il s'agit de la structure de données la plus utilisée. Déclarer
une chaîne de caractères est aussi simple que de déclarer un tableau à une dimension. Voici
la syntaxe de base pour la déclaration d'une chaîne de caractères.
Initialisation d'une chaîne
Une chaîne peut être initialisée de différentes manières. Nous allons l'expliquer à l'aide d'un
exemple. L'exemple ci-dessous permet de déclarer une chaîne dont le nom est str et de
l'initialiser avec "GoMyCode".
Il existe de nombreuses fonctions que nous utilisons directement avec les chaînes de
caractères telles que Concat, ToLower, ToString, ToInteger, ToFloat.
Chaîne de caractères:
Maintenant, nous allons mettre en pratique ce que nous avons appris sur les chaînes de
caractères. Nous allons faire trois exemples de manipulation de chaînes de caractères.
La première consiste à comparer deux chaînes de caractères.
Le premier exemple concerne la comparaison de deux chaînes de caractères. On peut
parcourir une chaîne de caractères comme on parcourt un tableau, il suffit d'appeler
l'identifiant de la chaîne, avec un index entre parenthèses.
Voyons le code ci-dessous :
La première est la comparaison de deux chaînes de caractères.
Les deux chaînes de caractères doivent être converties en majuscules ou en minuscules.
Dans le troisième et dernier algorithme, nous allons supprimer les blancs au début d'une
chaîne de caractères donnée.
Consultons cet algorithme :
La chaîne de caractères est une chaîne de caractères.
Examinons cet algorithme :
La chaîne de caractères est une chaîne de caractères.
Introduction
Le sujet de cette compétence va être la programmation procédurale. Nous allons voir :
Quel est l'intérêt de la programmation procédurale ?
Qu'est-ce que la théorie derrière les procédures et les fonctions ?
Qu'est-ce que les paramètres?
Comment passer des paramètres?
Intérêt de la programmation procédurale
La résolution d'un problème complexe passe par la mise en place d'une procédure.
La résolution d'un problème complexe peut générer des milliers de lignes de code. Des
algorithmes longs, difficiles à écrire, à interpréter et à maintenir. Solution: Utiliser une
nouvelle méthodologie de résolution : La programmation procédurale Idée: Diviser le
problème complexe en sous-problèmes moins complexes et écrire chacun d'entre eux
séparément dans son environnement propre.
Avantages:
Clarité de l'algorithme
Un algorithme plus lisible
Facilité de maintenance
Réutilisation des sous-algorithmes
PLUS D’INFORMATIONS SUR LES AVANTAGES
Les algorithmes de calcul de la somme des éléments successifs sont les mêmes que ceux de
la somme des éléments.
Cet algorithme fonctionne bien, mais nous pouvons l'optimiser davantage.
Comme nous pouvons le remarquer, l'idée principale est de créer un algorithme pour le
traitement des données.
La version finale se présentera comme suit
Ne vous inquiétez pas, ceci n'est qu'une ébauche, nous verrons comment créer une
procédure et une fonction avec plus de détails dans les prochaines diapositives.
2 types de sous-algorithmes:
Procédure
Fonction
Les sous-algorithmes (procédures ou fonctions) sont appelés (utilisés) à l'intérieur d'un
algorithme, les variables de cet algorithme principal seront le vaisseau qui fait le lien entre
les sous-algorithmes.
En d'autres termes, la communication entre les sous-algorithmes et l'algorithme principal se
fait par l'intermédiaire des variables de l'algorithme principal.
Utiliser les fonctions et les procédures
Si le programmeur crée les siens, ils sont personnalisés ou définis par l'utilisateur.
Si le programmeur fait les siens, ils sont personnalisés ou définis par l'utilisateur.
Procédures ou fonctions ?
Une procédure exécute une tâche, tandis qu'une fonction produit une information.
Les fonctions se distinguent des procédures par le fait qu'elles renvoient des valeurs,
contrairement aux procédures qui n'en renvoient pas. Cependant, des arguments peuvent
être transmis aux procédures et aux fonctions.
Dans un programme permettant de dessiner des formes, le programme pourrait demander à
l'utilisateur quelle forme dessiner. Les instructions pour dessiner un carré pourraient être
capturées dans une procédure. Il n'y a rien à renvoyer ici, le carré est déjà dessiné à l'écran.
Une fonction pourrait calculer quelque chose comme la TVA due sur les marchandises
vendues. L'ensemble des instructions de calcul de la TVA pourrait porter le nom de
"calcul_TVA" et serait exécuté en lançant (appelant) cette fonction et en renvoyant la valeur
calculée comme résultat.
Les instructions de calcul de la TVA pourraient porter le nom de "calcul_TVA".
Description de la procédure:
Utilisation de la procédure : appelez-la directement dans le code
"nom_de_la_procédure(liste_paramètres);
Description de la fonction:
Paramètres
Les paramètres nous permettent de transmettre des informations ou des instructions dans
les fonctions et les procédures. Ils sont utiles pour les informations numériques telles que
l'indication de la taille d'un objet. Les valeurs passées dans les paramètres sont appelées
arguments. PROCEDURE draw_square(side_length : FLOAT) . FIN
Paramètres
Le champ d'application fait référence à l'endroit où une fonction, une procédure, une
variable ou une constante peut être utilisée. Ils peuvent être locaux ou globaux.
Une variable globale est déclarée de manière à être disponible pour toutes les autres parties
du programme, ce qui signifie que nous pouvons l'appeler dans n'importe quelle
fonction/procédure sans la passer en paramètre. Alors qu'une variable locale est déclarée
d'une manière qui la rend disponible uniquement dans une fonction ou une procédure
spécifique, ce sont les variables déclarées dans la partie VAR de la fonction, de la procédure
ou de l'algorithme principal lui-même.
Paramètres
L'appel de la procédure précédente pour créer un carré de taille 50 pour chaque côté se fera
avec cette instruction :
Le 50 ici est appelé l'argument - parce que c'est une valeur transmise.
Il est possible d'ajouter plus d'arguments.
Ou vous pouvez optimiser si deux paramètres de même type se suivent :
Les paramètres de même type se suivent.
Note: Vous devez respecter le même ordre des paramètres lorsque vous appelez une
fonction ou une procédure.
Passage des paramètres
Paramètre formel : Une variable et son type tels qu'ils apparaissent dans le prototype
de la fonction ou de la méthode.
Paramètre effectif : La variable ou l'expression correspondant à un paramètre formel
qui apparaît dans l'appel de la fonction ou de la méthode dans l'environnement
d'appel.
Modes :
1. IN : Passe l'information de l'appelant à l'appelé.
2. OUT : Called écrit les valeurs dans l'appelant.
3. IN/OUT : L'appelant indique à l'appelé la valeur de la variable, qui peut être
mise à jour par l'appelé.
Passage de paramètres
Méthodes importantes de passage de paramètres
Passer par la valeur : cette méthode utilise une sémantique en mode. Les
modifications apportées au paramètre formel ne sont pas transmises à l'appelant. En
d'autres termes, si vous passez un paramètre de votre fonction appelante à la
fonction appelée par valeur, cela signifie que vous prenez d'abord une copie du
paramètre, puis que vous passez cette copie à la fonction. Si vous modifiez la copie
du paramètre à l'intérieur de la fonction, cela ne modifie pas les données contenues
dans le paramètre original. Cette méthode est également appelée "call by value" ;.
Cette méthode est également appelée "call by value" ;.
Passage par référence (aliasing) : Cette technique utilise la sémantique in/out-mode.
Les modifications apportées à un paramètre formel sont transmises à l'appelant par
le biais du passage de paramètres. Si vous passez un paramètre de votre fonction
appelante à une fonction appelée par référence, cela signifie que vous passez en fait
un pointeur à la fonction qui pointe vers le paramètre original, l'élément de données
original. Si vous modifiez le paramètre à l'intérieur de la fonction, le paramètre
original sera également modifié. Cette méthode est également appelée "call by
reference" ;.
Cette méthode est également appelée "call by reference" ;.
La page d'accueil du site Web de l'entreprise a été modifiée.
Exemples de passage de paramètres
Mettons en pratique ce que nous avons appris !
La procédure
Dans notre exemple, nous allons créer une procédure qui prend un nombre comme
paramètre passé par valeur et qui va l'incrémenter :
La procédure est une procédure qui prend un nombre comme paramètre passé par valeur.
Voici comment procéder.
Voici comment cela va se passer:
La variable num va pointer sur la même allocation de mémoire que la variable myData.
Recap
During this super skill, we have seen what we called the static structure:
The array and matrix (they are called like that due to their static length),
The string which is an array of characters with specific methods (like concat),
Also,
You have mastered the procedural programming which is the solution that makes our
way of programming much more efficient.
It help us produce more readable and easy to maintain algorithm.
We have set the difference between function and procedure.
We have learned how to make procedure and function communicate with each other
using the parameter ticket