Difference between revisions of "Basic Pascal Tutorial/Chapter 1/Assignment and Operations/fr"

From Free Pascal wiki
Jump to navigationJump to search
(Created page with "{{Assignment_and_Operations}} 1E - Assignment and Operations (author: Tao Yue, state: unchanged) Once you have declared a variable, you can store values in it. This is calle...")
 
m (bypass language bar/categorization template redirect [cf. discussion])
 
(8 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Assignment_and_Operations}}
+
{{Basic Pascal Tutorial/Chapter 1/Assignment and Operations}}
  
1E - Assignment and Operations (author: Tao Yue, state: unchanged)
+
[[Basic Pascal Tutorial/fr|Tutoriel de Pascal Objet]] : Bases / '''Affectation et opérations'''
  
Once you have declared a variable, you can store values in it. This is called assignment.
+
Une fois que vous avez déclaré une variable, vous pouvez stocker une valeur dedans : il s'agit de l'affectation.
  
To assign a value to a variable, follow this syntax:
+
Pour affecter une valeur à une variable, suivez cette syntaxe :
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
variable_name := expression;
 
variable_name := expression;
 
</syntaxhighlight>
 
</syntaxhighlight>
Note that unlike other languages, whose assignment operator is just an equals sign, Pascal uses a colon followed by an equals sign, similarly to how it's done in most computer algebra systems.
+
Observez que contrairement aux autres langages où l'affectation est juste un signe égal, Pascal emploie un deux-points suivi du signe égal, de manière identique aux systèmes de calcul formel.
  
The expression can either be a single value:
+
L'expression peut soit être une simple valeur :
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
some_real := 385.385837;
 
some_real := 385.385837;
 
</syntaxhighlight>
 
</syntaxhighlight>
or it can be an arithmetic sequence:
+
ou bien cela peut être une expression arithmétique :
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
some_real := 37573.5 * 37593 + 385.8 / 367.1;
 
some_real := 37573.5 * 37593 + 385.8 / 367.1;
 
</syntaxhighlight>
 
</syntaxhighlight>
The arithmetic operators in Pascal are:
+
 
 +
Les opérateurs arithmétiques du Pascal sont :
 
{| style="background-color:#f5f5f5" cellspacing=5
 
{| style="background-color:#f5f5f5" cellspacing=5
!Operator !!Operation !!Operands !!Result
+
!Operateur !!Opération !!Opérandes !!Résultat
 
|-
 
|-
| + ||Addition or unary positive ||real or integer ||real or integer
+
| + ||Addition ou signe positif ||real or integer ||real or integer
 
|-
 
|-
| - ||Subtraction or unary negative ||real or integer ||real or integer
+
| - ||Soustraction ou signe positif ||real or integer ||real or integer
 
|-
 
|-
 
| * ||Multiplication ||real or integer ||real or integer
 
| * ||Multiplication ||real or integer ||real or integer
 
|-
 
|-
| / ||Real division ||real or integer ||real
+
| / ||Division réelle ||real or integer ||real
 
|-
 
|-
|div ||Integer division ||integer ||integer
+
|div ||Division entière ||integer ||integer
 
|-
 
|-
|mod ||Modulus (remainder division) ||integer ||integer
+
|mod ||Modulo (reste entier) ||integer ||integer
 
|}
 
|}
'''<tt>div</tt>''' and '''<tt>mod</tt>''' only work on ''integers''. '''<tt>/</tt>''' works on both ''reals'' and ''integers'' but will always yield a ''real'' answer. The other operations work on both ''reals'' and ''integers''. When mixing ''integers'' and ''reals'', the result will always be a ''real'' since data loss would result otherwise. This is why Pascal uses two different operations for division and integer division. <tt>7 / 2 = 3.5</tt> (real), but <tt>7 div 2 = 3</tt> (and <tt>7 mod 2 = 1</tt> since that's the remainder).
+
'''<tt>div</tt>''' et '''<tt>mod</tt>''' ne fonctionnent que sur les ''integers''. '''<tt>/</tt>''' fonctionne sur les ''reals'' et les ''integers'' mais retourne toujours un résultat ''real''. Les autres opérations marchent sur les ''reals'' et ''integers''. Quand vous mélangez des ''integers'' et des  ''reals'', le résultat sera toujours un ''real'' (sinon il résulterait un perte de données). C'est pourquoi Pascal utilise deux opérations différentes pour la division et la division entière. <tt>7 / 2 = 3.5</tt> (real), mais <tt>7 div 2 = 3</tt> (et <tt>7 mod 2 = 1</tt> puisque c'est le reste).
  
Each variable can only be assigned a value that is of the same data type. Thus, you cannot assign a real value to an integer variable. However, certain data types will convert to a higher data type. This is most often done when assigning integer values to real variables. Suppose you had this variable declaration section:
+
Chaque variable peut uniquement être affectée avec une valeur du même type de données. Vous ne pouvez donc pas affecter une valeur réelle dans une variable entière. Cependant, certains types de donnée seront convertis dans un type de données d'ordre supérieur. C'est souvent le cas en affectant des entiers dans des variables réelles. Admettons que vous avez déclaré :
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
var
 
var
 
   some_int : integer;
 
   some_int : integer;
 
   some_real : real;
 
   some_real : real;
 
</syntaxhighlight>
 
</syntaxhighlight>
When the following block of statements executes,
+
 
<syntaxhighlight>
+
Après l'exécution du bloc d'instructions suivant :
 +
 
 +
<syntaxhighlight lang="pascal">
 
some_int := 375;
 
some_int := 375;
 
some_real := some_int;
 
some_real := some_int;
 
</syntaxhighlight>
 
</syntaxhighlight>
<tt>some_real</tt> will have a value of <tt>375.0</tt>.
+
<tt>some_real</tt> aura la valeur de <tt>375.0</tt>.
  
Changing one data type to another is referred to as typecasting. Modern Pascal compilers support explicit typecasting in the manner of C, with a slightly different syntax. However, typecasting is usually used in low-level situations and in connection with object-oriented programming, and a beginning programming student will not need to use it. Here is information on typecasting from the GNU Pascal manual.
+
Transformer un type de donnée en un autre est la conversion de type (en Pascal, on parle aussi de cœrcition). Les compilateurs Pascal modernes supportent la conversion de type explicite comme en C, avec une syntaxe légèrement différente. Cependant, la conversion de type est généralement utilisée dans des situations de programmation de bas niveau et en relation avec la programmation orientée objet ; un débutant en programmation n'en aura pas besoin. Voici une information sur la conversion de type issu du manuel de GNU Pascal.
  
In Pascal, the minus sign can be used to make a value negative. The plus sign can also be used to make a value positive, but is typically left out since values default to positive.
+
En Pascal, le signe moins peut être utilisé pour faire une valeur négative. Le signe plus peut être aussi utilisé pour faire une valeur positive, mais c'est rare car les valeurs sont par défaut positives.
  
Do not attempt to use two operators side by side, like in:
+
Ne tentez pas d'utiliser deux opérateurs côte à côte, comme dans :
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
some_real := 37.5 * -2;
 
some_real := 37.5 * -2;
 
</syntaxhighlight>
 
</syntaxhighlight>
  
This may make perfect sense to you, since you're trying to multiply by negative-2. However, Pascal will be confused — it won't know whether to multiply or subtract. You can avoid this by using parentheses to clarify:
+
Cela est parfaitement sensé pour vous, parce que vous tentez de multiplier par le nombre négatif -2. Mais Pascal est embarrassé ne sachant s'il faut multiplier ou soustraire. Vous pouvez clarifier cela en employant des parenthèses :
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang="pascal">
 
some_real := 37.5 * (-2);
 
some_real := 37.5 * (-2);
 
</syntaxhighlight>
 
</syntaxhighlight>
  
The computer follows an order of operations similar to the one that you follow when you do arithmetic. Multiplication and division (<tt>* / div mod</tt>) come before addition and subtraction (<tt>+ -</tt>), and parentheses always take precedence. So, for example, the value of: <tt>3.5*(2+3)</tt> will be <tt>17.5.</tt>
+
L'ordinateur suit un ordre d'évaluation des opérations similaire à celui que vous suivez quand vous faites de l'arithmétique. La multiplication et la division (<tt>* / div mod</tt>) viennent avant l'addition et la soustraction (<tt>+ -</tt>) et les parenthèses ont toujours la précédence. Donc par exemple, la valeur de <tt>3.5*(2+3)</tt> sera <tt>17.5</tt>.
  
Pascal cannot perform standard arithmetic operations on Booleans. There is a special set of Boolean operations. Also, you should not perform arithmetic operations on characters.
+
Pascal ne peut pas faire d'opérations arithmétiques sur les booléens pour lesquels il existe un ensemble spécial d'opérations. Pareillement, vous ne pouvez pas faire d'opérations arithmétiques sur les caractères.
 
 
{|style=color-backgroud="white" cellspacing="20"
 
|[[Variables_and_Data_Types/fr|précédent]]
 
|[[Contents/fr|table des matières]]
 
|[[Standard_Functions/fr|suivant]]
 
|}
 
  
[[Category: Object Pascal Introduction]]
+
{{Tutorial page navigation/fr|Chapter 1/Variables and Data Types|Chapter 1/Standard Functions}}

Latest revision as of 15:17, 20 August 2022

български (bg) Deutsch (de) English (en) español (es) français (fr) 日本語 (ja) 한국어 (ko) русский (ru) 中文(中国大陆)‎ (zh_CN)

Tutoriel de Pascal Objet : Bases / Affectation et opérations

Une fois que vous avez déclaré une variable, vous pouvez stocker une valeur dedans : il s'agit de l'affectation.

Pour affecter une valeur à une variable, suivez cette syntaxe :

variable_name := expression;

Observez que contrairement aux autres langages où l'affectation est juste un signe égal, Pascal emploie un deux-points suivi du signe égal, de manière identique aux systèmes de calcul formel.

L'expression peut soit être une simple valeur :

some_real := 385.385837;

ou bien cela peut être une expression arithmétique :

some_real := 37573.5 * 37593 + 385.8 / 367.1;

Les opérateurs arithmétiques du Pascal sont :

Operateur Opération Opérandes Résultat
+ Addition ou signe positif real or integer real or integer
- Soustraction ou signe positif real or integer real or integer
* Multiplication real or integer real or integer
/ Division réelle real or integer real
div Division entière integer integer
mod Modulo (reste entier) integer integer

div et mod ne fonctionnent que sur les integers. / fonctionne sur les reals et les integers mais retourne toujours un résultat real. Les autres opérations marchent sur les reals et integers. Quand vous mélangez des integers et des reals, le résultat sera toujours un real (sinon il résulterait un perte de données). C'est pourquoi Pascal utilise deux opérations différentes pour la division et la division entière. 7 / 2 = 3.5 (real), mais 7 div 2 = 3 (et 7 mod 2 = 1 puisque c'est le reste).

Chaque variable peut uniquement être affectée avec une valeur du même type de données. Vous ne pouvez donc pas affecter une valeur réelle dans une variable entière. Cependant, certains types de donnée seront convertis dans un type de données d'ordre supérieur. C'est souvent le cas en affectant des entiers dans des variables réelles. Admettons que vous avez déclaré :

var
  some_int : integer;
  some_real : real;

Après l'exécution du bloc d'instructions suivant :

some_int := 375;
some_real := some_int;

some_real aura la valeur de 375.0.

Transformer un type de donnée en un autre est la conversion de type (en Pascal, on parle aussi de cœrcition). Les compilateurs Pascal modernes supportent la conversion de type explicite comme en C, avec une syntaxe légèrement différente. Cependant, la conversion de type est généralement utilisée dans des situations de programmation de bas niveau et en relation avec la programmation orientée objet ; un débutant en programmation n'en aura pas besoin. Voici une information sur la conversion de type issu du manuel de GNU Pascal.

En Pascal, le signe moins peut être utilisé pour faire une valeur négative. Le signe plus peut être aussi utilisé pour faire une valeur positive, mais c'est rare car les valeurs sont par défaut positives.

Ne tentez pas d'utiliser deux opérateurs côte à côte, comme dans :

some_real := 37.5 * -2;

Cela est parfaitement sensé pour vous, parce que vous tentez de multiplier par le nombre négatif -2. Mais Pascal est embarrassé ne sachant s'il faut multiplier ou soustraire. Vous pouvez clarifier cela en employant des parenthèses :

some_real := 37.5 * (-2);

L'ordinateur suit un ordre d'évaluation des opérations similaire à celui que vous suivez quand vous faites de l'arithmétique. La multiplication et la division (* / div mod) viennent avant l'addition et la soustraction (+ -) et les parenthèses ont toujours la précédence. Donc par exemple, la valeur de 3.5*(2+3) sera 17.5.

Pascal ne peut pas faire d'opérations arithmétiques sur les booléens pour lesquels il existe un ensemble spécial d'opérations. Pareillement, vous ne pouvez pas faire d'opérations arithmétiques sur les caractères.

Sommaire