Types d'entiers Pascal. Programmation. Types de données numériques Pascal-Pascal. Exemple d'utilisation de variables du type énuméré

Lorsque vous décrivez la variable, vous devez spécifier son type. Le type de variable décrit un ensemble de valeurs qu'il peut accepter et des actions pouvant être complétées ci-dessus. Type Description Spécifie l'identifiant qui signifie le type.

Les types simples sont divisés en standard (ordinal) et répertoriés (limité).

Types standard

Turbo-Paskal a quatre types standard intégrés: entier (entier), réel (réel), booléen (logique) et char (symbole).

Type d'entier (entier)

À Turbo Pascal, il y a cinq types d'entiers intégrés: raccourcis (entier court), entier (entier), longint (entier long), octet (octet-long) et mot (longueur de mot). Chaque type indique un sous-ensemble spécifique d'entiers, comme indiqué dans le tableau suivant.

Types entiers intégrés.

Varier

Format

8 bits avec un signe

16 bits avec un signe

2147483648 +2147483647

32 bits avec un signe

8 bits sans signe

16 bits sans signe

Les actions arithmétiques sur les opérandes de type entier sont effectuées conformément aux règles suivantes:

  1. Le type de constante entière est un type entier intégré avec la plus petite plage, qui inclut la valeur de toute cette constante.
  2. Dans le cas d'une opération binaire (opération à l'aide de deux opérandes), les deux opérandes sont converties à leur type partagé avant que l'action soit effectuée au-dessus d'eux. Le type commun est le type entier intégré avec la plus petite plage, qui inclut toutes les valeurs possibles des deux types. Par exemple, un type commun pour un tout et une longueur entière en octets est un entier et le type commun pour un tout et une longueur entière dans le mot est un entier long. L'action est effectuée conformément à la précision du type total et le type de résultat est un type général.
  3. L'expression à droite dans la déclaration d'affectation est calculée indépendamment de la taille de la variable à gauche.

Opérations effectuées sur des entiers:

"+" - Ajout

"-" - Sous-traction

"*" - multiplication

SQR - Construction de Square

Div - après la fission de la partie fractionnée rejetée

Mod - obtenir un équilibre complet après la division

ABS - Numéro de module

Aléatoire (x) - nombre aléatoire de 0 à x

A: \u003d 100; B: \u003d 60; A DIV B Résultat - 1 A MOD B Résultat - 40

Les variables entières sont décrites comme suit:

var liste des variables: type;

Par exemple: var a, p, n: entier;

Type réel (réel)

Le type réel comprend un sous-ensemble de nombres réels, qui peuvent être représentés dans un format de semi-flûte flottant avec un nombre fixe de nombres. Un enregistrement d'un point-virgule flottant comprend généralement trois valeurs - M, B et E - de telle manière que M * B E, où B est toujours 10, et M et E sont des valeurs entières dans la plage de types réels. Ces valeurs M et E déterminent en outre la plage et la précision du type réel.

Il existe cinq types de types réels: réel, célibataire, duble, exnende, comp. Les vrais types diffèrent dans la plage et la précision des valeurs associées

Numéros de gamme et décimaux pour de vrais types

Varier

Nombres

2.9x10e-39 à 1.7x10e 38

1.5x10e-45 à 3.4x10e 38

5.0x10e-324 à 1.7x10e 308

3.4x10e-493 à 1.1x10e 403

2E 63 à 2E 63

Opérations effectuées au-dessus des nombres réels:

  • Toutes les opérations admissibles pour les entiers.
  • SQRT (x) -Korn Square parmi x.
  • Sin (x), cos (x), arctan (x).
  • Ln (x)-VOCARITHM.
  • Exp (x) -exponent x (e x).
  • Exp (x * ln (a)) - Erend (A x).
  • Type Fonctions de conversion:
    • Trunc (x) est une partie fractionnaire;
    • Rond (x) -crug.
  • Quelques règles d'opérations arithmétiques:
    • Si dans l'action arithmétique, il y a un nombre de type réel et entier, le résultat aura un type de réel.
    • Tous les composants de l'expression sont enregistrés en une seule ligne.
    • Seuls les crochets ronds sont utilisés.
    • Il est impossible de mettre deux signes arithmétiques dans une rangée.

Décrit des variables de type réel comme suit:

Var liste des variables: type;

Par example:

Var d, g, k: réel;

Type de symbole (char)

K Type Char appartient à tout symbole enfermé dans des apostrophes. Pour représenter l'Apostrophe sous forme de variable symbolique, il est nécessaire de le conclure à l'Apostrophe: '' ''.

Chaque symbole a son propre code et son numéro. Les numéros de séquence des nombres 0.1..9 sont commandés ascendants. Les numéros de séquence de lettres sont également commandés en ascension, mais ne se suivent pas nécessairement mutuellement.

Données symboliques Signes de comparaison applicables:

> , < , >=, <=, <> .

Par exemple: 'a'< ‘W’

Fonctions qui s'appliquent aux variables symboliques:

  1. Ord (x) - définit le numéro de séquence du symbole X. ORD ('A') \u003d 97;
  2. CHR (x) - détermine le caractère par numéro. CHR (97) \u003d 'A';
  3. Pred (x) - donne un symbole face au symbole de X. Pred ('B') \u003d 'A';
  4. SUPC (x) - Problime un symbole suivant après le symbole X. Succ ('A') \u003d 'B';

Type énuméré

Le type de données indiqué est nommé car il est défini sous la forme de transfert de constantes dans une commande strictement définie et dans une quantité strictement définie. Le type énuméré consiste en une liste de constantes. Les variables de ce type peuvent faire la valeur de l'une de ces constantes. La description du type énuméré a la forme:

Taper<имя типа>\u003d (liste des constantes); Var.<имя переменной>:<имя типа>;

où<список констант> - Il s'agit d'un type spécial de constantes définies par la virgule et ayant son propre numéro de série, à partir de 0.

Par example:

Type direction \u003d (nord, sud, ouest, est); mois \u003d (juin, juillet, août, janvier); Capacité \u003d (seau, baril, bidon, réservoir); VAR TOUR: Direction; Départ: lundi; Volume: capacité; VAR TOUR: (SPE, Sud, Occident, Est); Départ: (juin, juillet, août, janvier); Volume: (seau, baril, bidon, réservoir);

Vous pouvez effectuer de tels opérateurs d'affectation:

Tourner: \u003d sud; Départ: \u003d août; Volume: \u003d réservoir;

mais il est impossible d'effectuer des missions mixtes:

Départ: \u003d Sud; Volume: \u003d août;

Les fonctions suivantes sont appliquées aux variables de type répertoriée:

1. Numéro de séquence ORD

2. Elément précédent

3. Succ est l'élément suivant.

Pred (baril) \u003d seau; Succ (sud) \u003d ouest; ORD (juillet) \u003d 1;

Les variables de la liste peuvent être comparées, car elles sont commandées et numérotées. Alors expressions: nord< юг, июнь < январь имеют значения TRUE, а юг>ouest et Buck<бочка значение FАLSE.

Type limité

Si la variable n'accepte pas toutes les valeurs de son type, mais uniquement dans une certaine plage, elle peut être considérée comme une variable de type limité. Chaque type limité est défini par des restrictions imposantes sur les types de base.

Décrit comme ceci:

Taper<имя типа>\u003d Constant1 .. Constanta2.

Dans le même temps, les règles suivantes doivent être suivies:

  1. Les deux constantes limitées doivent être un type.
  2. En tant que type de base, vous pouvez utiliser n'importe quel type simple que valide (réel).
  3. La valeur initiale lors de la détermination du type limité ne doit pas être supérieure à la valeur finale.
type index \u003d 0 ..63; Lettre \u003d 'a' .. 'z'; Var char1, char2: lettre; A, G: index;

Peut être décrit immédiatement dans les descriptions des variables:

Var a, g: 0 ..63; Char1, Char2: 'A' .. 'Z'.

Vous êtes dans la section des matériaux sur la programmation sur Pascal. Avant de commencer la programmation, vous devez clarifier certains des concepts dont nous avons besoin au début. Après tout, il est impossible de programmer tellement. Nous ne pouvons pas enregistrer le programme avec des mots - l'ordinateur en plus des zéros et des unités ne comprenez rien d'autre. Pour ce faire, un symbolisme spécial a été créé dans la langue de Pascal - Pascal, un ensemble de mots réservés qui ne peuvent pas être utilisés dans leurs programmes ailleurs, à l'exception de son objectif. Nous énumérons les concepts de base dont nous avons besoin au début:

✎ 1) Programme - En anglais "Program", écrit au tout début du code, après quoi le nom du programme du Point latin et un point de virgule est. Par example: programme Summa; - Programme appelé Summa. Mais cette partie du code, appelée la rubrique du programme, ne peut pas écrire - elle n'est présente que pour plus de clarté et montre quelle tâche ce programme résolve. Ici, nous avons utilisé le mot "code" - le texte du programme est appelé.

✎ 2) Entier - English signifie "Entier" (ou simplement "entier") et à Pascal est utilisé pour désigner des entiers 32 bits (8 octets) avec une plage de la plage [-2147483648, 2147483647]. Que veulent dire ces grands nombres, nous discerrons ensuite.

3) Real - de l'anglais "réel", "réel", "réel", "valide". Dans le langage Pascal, ce terme fait référence aux nombres réels de la plage [-1.8 ∙ 10 308, 1,8 ∙ 10 308]. Ce sont des nombres très importants, mais des chiffres significatifs sont affichés 15 à 16. Au fait, les types de données d'entier et réel dans l'environnement de programmation PASCALABC.NET sont toujours automatiquement mis en évidence en bleu.

✎ 4) const est un analogue de l'anglais. "Constante", ce qui signifie "constante", "constante". À Pascal, il s'agit d'une valeur qui ne peut pas être changée. Écrit comme ceci:


Cette entrée doit être perçue comme elle est écrite: le nombre n est 12, s est 5, "PI" est de 3,14 (comme en mathématiques, uniquement au lieu de la virgule à Pascal, le point est utilisé). Dans la dernière ligne, nous avons utilisé une double barre oblique (deux caractéristiques obliques), après quoi le texte va, "les commentaires sont écrits à Pascal et leur programme ne perçoit pas. Tout ce qui commence la double barre oblique et jusqu'à la fin de la ligne est un commentaire qui est écrit pour expliquer au programme et est toujours mis en surbrillance par une autre couleur (dans Pascalabc.net, il est vert, ce type de commentaire n'est pas utilisé à Turbo Pascal ). Il existe un autre type de commentaire - ceci (le texte conçu entre crochements, ainsi que ici, qui se distingue également en vert). Cette vue sur le commentaire peut agir quelques lignes de suite - du début du support et avant sa fermeture, et tout ce qui est au milieu d'un tel design, le compilateur ne percevait pas comme le code et ne saute simplement.

En fait, le format d'enregistrement const. Un peu plus fort. Selon les règles, nous avons dû écrire:

1 2 3 4 const. N: tapez entier;

La description:

")" Onmouseout \u003d "ToolTip ()"\u003e Entier
= 12 ; // Numéro N - Type entier S: tapez entier;

La description:
Représente un entier 32 bits avec un signe.

Gamme de valeurs: -2 147 483 648 .. 2 147 483 647")" Onmouseout \u003d "ToolTip ()"\u003e Entier
= 5 ; // Numéro S - Type entier pI: tapez réel;

La description:
Présente le nombre de précision du point flottant à double variation.

Taille: 8 octets
Nombre de nombres significatifs: 15 - 16
Gamme de valeurs: -1,8 ∙ 10 308 .. 1.8 ∙ 10 308
")" Onmouseout \u003d "info-bulle ()"\u003e réel
= 3.14 ; // le numéro "pi" - réel

Après avoir déclaré chaque valeur, son type est spécifié, puis la valeur est attribuée. Mais le post précédent est également correct, car le compilateur Pascal est configuré de manière à définir automatiquement le type de constante. Mais cela ne peut pas être dit sur le type de nombres suivant - variables.

5) Var - vient de l'anglais. "Variable" ("variable" ou "modifiable"), qui, dans Pascal, la valeur que pendant le programme peut modifier sa valeur. Écrit comme ceci:


Comme on peut le voir à partir de l'enregistrement, le signe "\u003d" n'est pas ici - les variables du même type (à travers la virgule) sont recalculées et seul le type est indiqué après le côlon. Les variables N, M (INTEGER) et Q, R, T (réel) dans le programme peuvent modifier les valeurs dans Entreger et réel, respectivement. Une autre note: la description des variables est toujours debout après la description des constantes (permanente) - il existe d'abord une conception de construction, puis le var.

✎ 6) Commencer - Traduit de l'anglais signifie "Démarrer" et Pascal signifie le début du programme principal dans lequel les commandes (opérateurs) sont enregistrées. Après le mot commencer. Le point avec la virgule n'est pas mis.

✎ 7) Fin - En anglais. "Fin", et dans le langage Pascal signifie la même chose (fin du programme). Après le dernier mot finir. Vaut toujours un point. Nous avons alloué le mot "dernier" parce que l'utilisation de la conception commencer à finir. Peut-être dans un cas: ce sont les soi-disant crochets utilisés pour combiner plusieurs opérations sous un seul opérateur. Mais à ce sujet plus tard. Ainsi, le programme principal ressemblera à ceci:

1 2 3 4 5 6 commencer. < оператор 1 > ; < оператор 2 > ; . . . . . . . < оператор N > ; finir..

Ici, les opérateurs du corps du programme sont des commandes différentes au compilateur.

✎ 8) Ecrire - en anglais signifie "écrire". Cet opérateur affiche le texte placé dedans, il est donc appelé - l'opérateur de sortie. Le texte placé en elle est mis en évidence en bleu et est écrit comme suit:

Écrivez ( "Ce texte est affiché à l'écran.");

Le message entre crochets et citations sera affiché dans la fenêtre de la console (simplement entre parenthèses sans guillemets ne peut pas être). Après avoir terminé cet opérateur, nous verrons à l'écran:

ce texte est affiché à l'écran.

Dans ce formulaire, l'opérateur de l'écriture est utilisé lorsqu'il est nécessaire de montrer l'indice, l'explication, le commentaire, etc. et de si vous devez retirer même une valeur numérique, disons, S \u003d 50 kV. m, alors le format est utilisé:

Écrire (, s);

En conséquence, nous obtenons le résultat sur l'écran:

Carré est égal à: S \u003d 50

Et si nécessaire, des unités de sortie, il est nécessaire d'insérer du texte dans des guillemets après s à nouveau:

Écrivez ( "La place est égale à: S \u003d", S, "m²");

Après avoir exécuté le dernier opérateur de sortie, nous obtenons la sortie à l'écran:

La taille de la place est: S \u003d 50 m²

✎ 9) WritEln est identique à écrire, mais après avoir exécuté le curseur sera traduit à la chaîne suivante.

✎ 10) Lire - Traduit de l'anglais signifie "lire", donc lue s'appelle l'opérateur de lecture ou la saisie de données. Il est écrit comme lu (N), ce qui signifie que la nécessité d'entrer la valeur de n, où n est un nombre ou un texte, ou un autre type de variable. Par exemple, si vous devez entrer l'âge d'une personne, il est âgé de 32 ans, nous pouvons écrire de cette façon:


Dans la première ligne de ce code, le programme affiche la question " Quel âge avez-vous?"Et traduit le curseur sur la ligne suivante (fin de ln); Dans la deuxième ligne, nous déposons "année \u003d" (au début de l'espace); Ensuite, nous voyons l'opérateur LISTLN (année) qui signifie la nécessité d'introduire l'âge de l'année (numéro 32); Enfin, nous apportons le message "Mon âge", "32" et "Année. "Alternativement. Il est nécessaire de surveiller de près les espaces. À la suite de l'exécution de ce code, nous recevrons un message:

Quel âge avez-vous?
Année \u003d 32.
Mon âge a 32 ans

✎ 11) Readln est la même que la lecture, uniquement avec la traduction à une nouvelle chaîne. En effet, dans l'exemple ci-dessus après l'introduction du nombre d'années, nous n'écrivons que dans la ligne suivante: " Mon âge a 32 ans».

C'est toujours tout. À la page suivante, nous écrirons le premier programme et dans la programmation sur Pascal, ce sera notre

Les données sont un concept général pour tout ce qui fonctionne avec un ordinateur.

Variables utilisées pour stocker des données à Pascal, peuvent être de différents types. Ceci, en particulier, est associé au désir de recevoir des programmes plus compacts et à grande vitesse qui utilisent moins de mémoire au cours de leur travail.

Par exemple, une mémoire plus petite est nécessaire pour stocker de petits nombres que pour stocker de grandes. Les nombres entiers de la plage de 0 à 255 n'occupent que 1 octet de la mémoire, tandis que les pires numéros nécessitent un nombre de lin d'octets. Si la logique du programme est connue que le résultat ne dépasse pas 255, il suffit d'utiliser une variable monte-octet pour son stockage.

D'autre part, les transformateurs modernes sont généralement traités de différentes manières et des nombres réels. Par exemple, les commandes arithmétiques entières dans les processeurs I80X86 sont effectuées directement principalement par AllU et nécessitent relativement peu de temps de processeur. Bien que les opérations avec des chiffres réels soient effectuées par un coprocesseur mathématique, qui, bien qu'il présente de grandes opportunités de traitement, mais nécessite beaucoup plus de temps pour obtenir le résultat.

Par conséquent, si la logique de l'algorithme ne nécessite pas l'utilisation de nombres réels, il n'est pas logique d'utiliser une arithmétique "flottante" fastidieuse. Lors de la spécification du programme que cette variable est entière, le programmeur donne les instructions au compilateur pour le traiter avec un alu rapide du processeur principal, sans cyclisme sans la nécessité d'un coprocesseur.

De plus, diverses opérations peuvent être identifiées pour différents types de données. Par exemple, il n'a pas de sens pour effectuer une opération de division pour les chaînes de symboles ou rendre l'ajout d'une variable de matériau avec logique. Si son type est spécifié lors de la déclaration de variable, le compilateur est capable de surveiller l'exactitude des expressions dans lesquelles cette variable sera utilisée. Cela vous permet de réduire légèrement le nombre d'erreurs dans le programme.

À Pascal, il existe des types de données simples, composites et de référence. Maintenant, nous ferons connaissance en détail qu'avec le premier d'entre eux, mais sur le reste, parlons dans les conférences suivantes.

Les types simples incluent:

- Logique

- Types entiers

- de vrais types

- Symbole

1. Type logique (type booléen)

Une valeur logique est l'une des deux valeurs de vérité désignées par des noms réservés. faux et vrai..

Le type logique est défini pour que faux < vrai.. Les opérations de relation donnent toujours un résultat logique. Par exemple, attitude



avec x \u003d 0, y \u003d 0 donne faux; avec x \u003d 0, y \u003d 10 - valeur vrai..

2. Types de données entiers

Les valeurs des variables de type entier sont des éléments d'un sous-ensemble limité d'entiers; Ce sous-ensemble est déterminé par une implémentation spécifique.

Dans la norme Pascal, un seul type de données entièrement défini est défini entier. Nombre de types entier prend deux octets de mémoire; Dans ce cas, le bit zéro détermine le nombre de nombres.

Dans la mise en œuvre de Pascal, avec laquelle nous allons travailler, dans des variables entier Vous pouvez stocker des entiers dans la gamme de -32768 au +32767.

De plus, Turbo Pascal a des types de données supplémentaires:

1) Type raccourcie. - une courte longueur entière un octet avec un signe (un signe occupe un bit nul), les limites du changement -128 .. 127;

2) Type octet - longueur entière courte un octet sans signe (tous les huit bits - numéros binaires), modifications des limites 0. 255;

3) Type mot. - une longueur de deux octets (mot) sans signe, limites du changement 0 .. 65535;

4) Type longint. - Longueur longue 4 octet avec signe, modifications limites - 2 147 483 648 .. 2 147 483 647.

Pour les valeurs entière, les opérations arithmétiques suivantes sont admissibles:

Une addition;

- soustraction;

* Multiplication;

diviser La division de Flay (notez que le signe traditionnel de la division "/" renvoie un nombre fractionnaire à Pascal, le résultat d'une telle opération ne peut donc pas être attribué une variable entière).

mod. reste de la division.

En termes arithmétiques, deux signes d'opération ne peuvent pas supporter. Par exemple, il est impossible d'écrire un * -b. Ici vous devez écrire un * (-b).

Opérations de démarrage:

1) expressions entre crochets;

2) *, div, mod (opérations multiplicatives);

3) +, - (Opérations additives).

Les opérations de la même ancienneté sont effectuées de gauche à droite.

Il n'y a pas d'opérations d'exercices au degré de Pascal. Pour les indicateurs entier, cette opération peut être remplacée par une multiplication répétée.

Le résultat complet donne les caractéristiques pré-ouvertures suivantes:



1) ABS (i) est la valeur absolue de l'argument entier I;

2) SQR (I) - Les valeurs carrées de l'argument entier I;

3) Trunc (R) est un entier résultant de la défausse de la partie fractionnée du nombre R;

4) rond (R) est un entier en arrondissant R.

trunc (3.3) \u003d 3; Rond (3.3) \u003d 3;

trunc (3.5) \u003d 3; Rond (3.5) \u003d 4;

trunc (3.8) \u003d 3; Rond (3.8) \u003d 4;

trunc (-3.3) \u003d -3; Rond (-3,3) \u003d -3;

trunc (-3.8) \u003d -3; Rond (-3,8) \u003d -4.

3. Types réels

Les nombres réels sont des nombres de points flottants. L'utilisation large d'entre eux est caractéristique des tâches techniques et techniques.

En l'absence de coprocesseur, un seul type réel est en cours de mise en œuvre - Type réel; En présence de coprocesseur, les types sont également mis en œuvre seul, double., Élargi, compression. Les vrais types diffèrent des uns des autres par le nombre de décharges allouées à la représentation de la mantisse et de la commande.

Pour le type réel Quatre opérations arithmétiques sont définies:

Addition soustraction

* multiplication / division

Le résultat des opérations "+", "-", "*" est une valeur réelle si au moins un des opérandes a un type réel. L'opération "/" donne une valeur réelle dans le cas où l'un de ses deux opérand a un type d'entier.

Caractéristiques standard ABS (X) et SQR (X) donnent une réalisation si leur argument x est de type réel. Quel que soit le type d'argument, les fonctions standard suivantes fournissent toujours un résultat réel: sin (x), cos (x), ln (x), exp (x), arctan (x), sqrt (x) (carré).

Reprendre réel avec un véritable argument donne également des fonctions

Int (x) - une partie intégrante de la valeur réelle x;

Frac (x) - partie fractionnée de la valeur réelle x.

4. Type de données de symboles (type de caractères)

Les valeurs des variables de type de caractère sont les éléments de l'ensemble de caractères final et commandé. Cet ensemble peut être inégal sur divers ordinateurs.

La valeur d'une variable de type de caractère est indiquée par un caractère enfermé dans des apostrophes.

"A" "A" "8" "" "" (Apostrophe est écrit deux fois)

Indépendamment de la mise en œuvre du type symbolique, les hypothèses suivantes sont valides.

1) Les nombres décimaux de "0" à "9" sont commandés conformément à leurs valeurs et enregistrées l'une après l'autre.

2) Il y a toutes les grandes lettres de l'alphabet latin de "A" à "Z". Cet ensemble est commandé alphabétiquement, mais pas nécessairement connecté. Par conséquent, dans toute mise en œuvre, "je" doit être exécuté< "J".

3) Il peut y avoir de petites lettres de l'alphabet latin de "A" à "Z". Si tel est le cas, il s'agit alors de nombreuses lettres rationalisées alphabétiquement, mais pas nécessairement connectées.

Pour le type symbolique, deux fonctions de conversion d'ORD et de commandes mutuelles sont définies:

k \u003d ord (ch) - le numéro de séquence du symbole de CH;

cH \u003d CHR (k) - Symbole avec numéro de séquence K.

Pour le type symbolique, toutes les opérations sont définies.

On croit que CH1< ch2, если ord(ch1) < ord(ch2).

Structure du programme Pascal

Le programme Pascal se compose d'un en-tête de programme et d'un bloc:

En-tête de programme;

Bloquer .

Titre Se compose du programme de mots-clés et du nom du programme:

Exemple de programme;

Bloquer Contient les descriptions des descriptions dans lesquelles tous les objets sont définis par rapport à ce programme et la section des opérateurs, où les actions devant être effectuées au-dessus de ces objets sont spécifiées. Le bloc comprend les sections suivantes:

1. Section Description des étiquettes.

2. Section de description constante

3. Section de type de type de type

4. Section de la description des variables.

5. Section Description des procédures et des fonctions.

6. Section des opérateurs.

Dans le bloc, il ne peut y avoir aucune des sections à l'exception de la section opérateur.

1. Section des descriptions des étiquettes

Tout opérateur du programme peut être marqué d'une étiquette. L'étiquette est placée devant l'opérateur et séparée de celle-ci avec un côlon. Toutes les balises doivent être décrites dans les descriptions des étiquettes.

Étiquette 10, 20, MET15;

2. Section de description constante

Cette section définit certains identifiants en tant que synonymes de constantes.

Textstring \u003d "Appuyez sur la touche Entrée";

PI Constant est préopé et égal à

pI \u003d 3.1415926536.

L'utilisation d'identificateurs constants améliore la lisibilité du programme et facilite sa modification.

3. Section de type de type de type

Types de données réels, Entier, Boolean, Char sont prédéterminés et utilisés dans la section Descriptions variables. Si le programmeur doit entrer un nouveau type de données, il doit être décrit dans la section Descriptions de type.

Plus sur la description des nouveaux types, nous allons parler plus tard.

4. Section de la description des variables

Chaque nom de variable, matrice ou autre objet de programme doit être indiqué dans la section Descriptions de variable.

Var i, j, k: entier;

5. Section Description des procédures et des fonctions

L'objectif et la structure de la section seront définis lors de l'examen des procédures et des fonctions.

6. Section des opérateurs

La section contient des opérateurs qui mettent en œuvre le traitement des informations dans le programme. La section opérateur est un cas particulier d'un opérateur composite, qui comprend un ou plusieurs opérateurs enfermés dans "Supports de l'opérateur", commencent ... fin. Le séparateur entre les opérateurs est un point avec une virgule. Dans les conférences ultérieures, nous étudierons les principaux opérateurs du langage Pascal.

Section numéro 9 (2 heures)

Opérateur d'assignation. Entrée sortie
Dans les programmes sur Pascal

Opérateur d'assignation. Écrire des expressions arithmétiques

Procédures de saisie de données du clavier

Procédures de sortie de données à l'écran

Le concept de données est l'une des principales programmations et en général en sciences informatiques. À peu près, les données en informatique sont des informations dans un état de stockage, de traitement ou de transmission, dans un segment de temps. Dans les machines Turing, les informations sont de type et cela dépend à son tour du type d'informations.

Types de données dans Pascal, les valeurs possibles des variables, des constantes, des expressions et des fonctions sont déterminées. Ils sont intégrés et utilisateur. Les types intégrés sont initialement présents dans le langage de programmation et la coutume est créée par un programmeur.

Par la méthode de présentation et de traitement des types de données sont:

  • simple
  • structuré
  • pointeurs
  • objets
  • procédures

Cet article ne considérera que les types de données les plus simples, car aux premières étapes de la formation, votre programme fera facilement, par exemple, sans fichiers et enregistrements que sans variables entier ni à chaîne.

Type d'entier

Cela inclut plusieurs types entier, qui diffèrent dans la plage de valeurs, le nombre d'octets alloués pour le stockage et le mot avec lequel le type est déclaré.

Un type Varier Taille en octets
raccourcie. -128…127 1
entier -32 768…32 767 2
longint. -2 147 483 648…2 147 483 647 4
octet 0…255 1
mot. 0…65 535 2

Une variable entière peut être annoncée dans la section Var, par exemple:

Sur les variables de cette catégorie, toutes les opérations arithmétiques et logiques peuvent être effectuées à l'exception de la division (/), elle est nécessaire pour cela. Certaines fonctions et procédures standard peuvent également être appliquées.

Type réel

Les types de données réels suivants sont à Pascal:

Un type Varier Mémoire, octet Nombre de chiffres
Réel 2.9E-39 ... 1.7E38 6 11-12
Seul 1.5e-45 ... 3.4E38 4 7-8
Double. 5.0e-324 ... 1.7E308 8 15-16
Élargi 3.4e-4932 ... 1.1E493 10 19-20
Compression -9.2e63 ... (9.2e63) -1 8 19-20

Une plus d'opérations et de fonctions peuvent être effectuées au-dessus de ceux-ci que sur le dessus. Par exemple, ces fonctions renvoient la réalisation:

péché (x) - sinus;

cos (x) - cosinus;

arctan (x) - arctangent;

ln (x) - logarithme naturel;

sqrt (x) - racine carrée;

exp (x) - exposant;

Type logique

Une variable qui a un type de données logique ne peut prendre que deux valeurs: vraie (vérité) et false. Ici, la vérité correspond à la valeur 1, et les mensonges sont identiques zéro. Vous pouvez déclarer une variable booléenne comme celle-ci:

Sur les données de ce type, des opérations de comparaison et des opérations logiques peuvent être effectuées: non et, ou, XOR.

Type de symbole

Le type de données de symboles est un ensemble de caractères utilisés dans un ordinateur particulier. La variable de ce type prend la valeur de l'un de ces caractères, prend 1 octet dans la mémoire de l'ordinateur. Mot Carboniser. Détermine la valeur de ce type. Il existe plusieurs façons d'enregistrer une variable symbolique (ou constante):

  1. en tant que symbole unique, clôturé dans des apostrophes: 'W', 'v', 'P';
  2. lorsque vous spécifiez le code de symbole, la valeur doit être comprise entre 0 et 255.
  3. utilisation de la conception ^ k, où k est le code du symbole de contrôle. La valeur K doit être 64 plus de code du symbole de contrôle correspondant.

Les opérations de relations et les fonctions suivantes sont applicables aux valeurs du type de données symbolique:

Succ (x) - retourne le symbole suivant;

Pred (x) - retourne le symbole précédent;

Ord (x) - retourne la valeur du code de symbole;

Chr (x) - retourne la valeur du symbole par son code;

Upcase (x) - Traduit la litta de l'intervalle 'A'. Z dans le registre principal.

Pour un travail fructueux avec type symbolique, je vous recommande d'utiliser.

Type de chaîne

La chaîne de Pascal est une séquence de caractères de prisonniers dans les apostrophes et est indiqué par le mot Chaîne. Le nombre de caractères (longueur de chaîne) ne doit pas dépasser 255. Si la longueur de la chaîne ne spécifie pas, elle décompose automatiquement en 255 caractères. La vue générale de l'annonce de la variable de chaîne ressemble à ceci:

Var.<имя_переменной>: Chaîne [<длина строки>];

Chaque caractère de la chaîne a son propre index (numéro). L'indice du premier octet est de 0, mais il est stocké non au premier caractère, mais la longueur de la ligne entière, à partir de laquelle il s'ensuit que la variable de ce type occupera 1 octet plus que le nombre de variables. Le numéro du premier symbole est de 1, par exemple, si nous avons une chaîne S \u003d 'Stroka', puis S \u003d S;. Dans l'une des leçons suivantes, le type de données de chaîne sera considéré comme plus.

Type de données énumérés

Le type de données répertorié est un nombre limité d'identificateurs. Ces identifiants consistent entre parenthèses et séparés des autres virgules.

Type jour \u003d (lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche);

Une variable A peut prendre uniquement des valeurs définies dans la section Type. Vous pouvez également déclarer une variable du type énuméré dans la section Var:

Var A: (lundi, mardi);

Les opérations de relation s'appliquent à ce type, alors qu'à l'avance, il est défini lundi

Type de données d'intervalle

Lorsque vous devez définir une sorte de gamme de valeurs, alors dans de telles situations, le type de données d'intervalle est appliqué. Pour les annonces de conception d'occasion m..n.m. - signifiant minimum (initial), et n. - maximum (fini); Ici m et n sont des constantes qui peuvent être un type global, symbolique, listé ou logique. Les valeurs d'intervalle peuvent être décrites à la fois dans la section Types et dans la section Descriptions de variable.

Forme générale:

Taper<имя_типа> = <мин. значение>..<макс. значение>;

3.2. Types simples de base de données Turbo Pascal 7

Un type simple définit un ensemble commandé de valeurs de paramètre. Turbo Pascal a les types simples simples suivants:

  • types entiers;
  • type logique;
  • type de symbole;
  • type énuméré;
  • gamme de types;
  • vrais types.

Tous les types simples, à l'exception de réels, sont appelés types de séquence. Pour les quantités de types de séquence, des procédures standard et des fonctions sont définies: Dec, Inc, ORD, PRD, SUCC (voir section 13.1).

3.2.1. Types entiers

Contrairement à la langue de Pascal, où le seul type d'entiers entiers est défini, il existe cinq types de nombres entiers standard: raccourcis, entier, béton, octet, mot à Turbo Pascal. Les caractéristiques de ces types sont indiquées dans le tableau. 2.

Tableau 2. Types de données entiers

Un type Varier Format Taille en octets
Raccourcie. -128 .. 127 Signe 1
Entier -32768 .. 32767 Signe 2
Longint. -2147483648 .. 2147483647 Signe 4
Octet 0 .. 255 Sans fond 1
Mot. 0 .. 65535 Sans fond 2

3.2.2. Type logique

Le type logique standard Boolean (taille - 1 octet) est un type de données, dont tout élément peut ne prendre que deux valeurs: vrai et faux. Dans le même temps, les conditions suivantes sont vraies:
FAUX ORD (FALSE) \u003d 0
Ord (vrai) \u003d 1
Succ (faux) \u003d vrai
PRY (vrai) \u003d faux

Turbo Pascal 7.0 Ajoutée Trois autres types logiques Bytebool (taille - 1 octet), Wordbool (taille - 2 octets) et Longbool (taille - 4 octets). Ils sont entrés pour unifier avec d'autres langages de programmation et avec l'environnement Windows. Leur différence par rapport au type standard de Boolean est la valeur réelle du paramètre de ce type, correspondant à la valeur de true. Pour le jalon de types logiques, la valeur du faux correspond au numéro 0 enregistré dans le nombre d'octets approprié. La valeur de true pour le type booléen correspond au numéro 1 enregistré dans son octet et pour d'autres types, la valeur du vrai correspond à tout nombre autre que zéro (bien que la fonction ORR dans ce cas donne la valeur 1).

3.2.3. Type de symbole

Type de symbole standard Type de caractères Définit un ensemble complet de caractères ASCII. La fonction ORD de la taille du type de caractères donne le code du symbole correspondant. Les valeurs du type de caractères en fonction de leurs codes sont comparées.

3.2.4. Type énuméré

Le type de type n'est pas standard et est déterminé par l'ensemble d'identificateurs avec lesquels les valeurs de paramètre peuvent correspondre. La liste des identificateurs est indiquée entre parenthèses, les identificateurs sont séparés par des virgules:

Taper
= ();)

Il est important, dans quels identifiants d'ordre sont répertoriés lors de la détermination du type, car le premier identifiant est attribué au numéro de séquence 0, le second - 1, etc. Le même identifiant peut être utilisé dans la définition d'un seul type répertorié. La fonction ORD de la valeur du type énuméré donne le numéro de séquence de sa valeur.

Exemple. Type énuméré.

type operat \u003d (plus, moins, mults, diviser);

Le type logique est un cas particulier de type coté:

type booléen \u003d (faux, vrai);

3.2.5. Gamme de types

Dans n'importe quel type de commande, vous pouvez sélectionner un sous-ensemble de valeurs défini par la valeur minimale et maximale dans laquelle toutes les valeurs du type source sont dans ces limites, y compris les frontières elles-mêmes. Un tel sous-ensemble détermine la gamme de types. La plage de types est définie pour indiquer les valeurs minimales et maximales séparées par deux points:

type \u003d. . ;

La valeur minimale pour déterminer ce type ne doit pas être supérieure au maximum.

Exemple. Déterminer les gammes de caractères.

taper
Douzaine \u003d 1..12; (nombres de 1 à 12)
Addsub \u003d plus..minus; (Opérations d'addition et de soustraction)

3.2.6. Types de types réels

Contrairement à la norme de Pascal, où un seul type réel est défini, Turbo Pascal a cinq standard de style réel: réel, simple, double, étendu, smr. Pour les caractéristiques de ces types, voir tableau. 3. Tableau 3. Types de données réels

Un type Varier Nombre de chiffres de sens Taille en octets
Réel 2.9*10-39..1.7*1038 11-12 6
Seul 1.5*10-45..3.4*1038 7-8 4
Double. 5.0*10-324.-1.7*10308 15-16 8
Élargi 3.4*10-4932..1.1*104932 19-20 10
Compression -263+1..263-1 19-20 8

Le type de Comp est en réalité le type d'entiers de la portée accrue, mais l'ordinal n'est pas pris en compte.

Types Simple, Double, Étendu et Comp peuvent être utilisés dans des programmes uniquement en présence d'un coprocesseur arithmétique ou d'un émulateur coprocesseur sur (voir pp. 17.5.8 et 17.7.1).