Expressions et variables numériques Flashcards

1
Q

Qu’est-ce que la syntaxe d’un language ?

A

Forme textuelle que peuvent prendre les programmes valides.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Qu’est-ce qu’une grammaire ?

A

Ensemble de règles pour former des programmes valides syntaxiquement à partir de fragments de programme valides.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Vrai ou faux ? La syntaxe est normalement définie par une grammaire.

A

Vrai

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Comment les calculs s’expriment dans les language de programmation ?

A

Par des expressions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Complète la phrase : Tout expression a une …..

A

Valeur (qui est le résultat du calcul exprimé par l’expression). Ex : 25 est la valeur de l’expression (2+3)*5

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Qu’est-ce qu’une constante littérale ?

A

Un nombre décimal non-négatif est une expression simple dont la valeur est le nombre en question

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Qu’est-ce qu’un opérateur binaire ?

A

C’est lorsque tu as 2 opérandes (3+7)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Les opérateurs de signe (+,-) peuvent être utilisés comment ?

A

Comme préfixe d’une expression (par ex, +3, -5)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qu’est-ce que l’exécution pas-à-pas ?

A

C’est lorsque tu veux assister à chaque étape de l’exécution.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Quels sont les niveaux de préséance des opérateurs ?

A

Chaque opérateur a un niveau de préséance +,- : les opér. binaires additifs (niveau 1)
*,/ : les opér. binaires multiplicatifs (niveau 2) ** : l’opérateur de puissance (niveau 3). Python a 13 niveaux de préséance au total.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Comment déterminer le regroupement des sous-expressions ?

A

Il faut regrouper les sous- expressions aux côtés des opérateurs les plus élevés avant ceux des niveaux inférieurs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Comment les sous-expressions se regroupent pour des opérateurs de même niveau de préséance ?

A

Pour des opérateurs de même niveau de préséance, les sous-expressions se regroupent en tenant compte de leur l’associativité. Les opérateurs +,-,*,/ sont associatifs à gauche L’opérateur ** est associatif à droite.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Qu’est-ce qu’il va arriver si le code ne correspond pas à la grammaire de python ?

A

Un message d’erreur sera affiché (SyntaxError).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Dans la notation positionnelle, les nombres sont encodés de quel façon ?

A

Dans cette notation un nombre est encodé par une séquence de symboles (chiffres).
Si la base est k, il y a k symboles distincts pour représenter les valeurs 0, 1, 2, …, k-1
Par exemple en base k=10 : 0,1,2,3,4,5,6,7,8,9.
Chaque chiffre de la séquence a un poids qui est k fois plus grand que le poids du chiffre à sa droite

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Explique le processus derrière le poids des chiffres.

A

Le poids des chiffres dépend de la position dans la séquence et le poids progresse suivant les puissances de k.
Par ex. avec la base k=10, 2087 a la valeur
2087
= 2×1000 + 0×100 + 8×10 + 7×1 = 2087

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Quels sont les 3 façons principales de stocker les nombres en mémoire à l’aide d’un groupe de bits ?

A

Encodage binaire non signé
Encodage complément à 2
Encodage point flottant (norme IEEE 754)

16
Q

Quels sont les problèmes que peuvent causer les erreurs d’arrondi ?

A

À cause des erreurs d’arrondi qui surviennent lors des calculs avec les flottants, certains comportements vont à l’encontre de principes de mathématiques. Par exemple, l’addition n’est pas associative.

17
Q

Que peut permettre la syntaxe des flottants en python ?

A

La syntaxe des nombres flottants permet de préciser des décimales et une puissance de 10

18
Q

L’affichage d’un nombre flottant utilise quoi quand le nombre est trop grand ou trop petit ?

A

L’affichage d’un nombre flottant utilise la notation scientifique lorsque le nombre est très grand ou très petit, sinon une séquence de chiffres contenant un point.

19
Q

Les nombres flottants spéciaux sont :

A

Zéro négatif : -0.0 ± Infini
Not-a-Number (NaN)… résultat indéterminé

20
Q

Vrai ou faux : Les int python sont sans limites ?

A

Vrai, contrairement à plusieurs langages, les entiers de Python ne sont pas limités à un nombre de bits fixe (ils peuvent avoir une taille quelconque).
Cela permet de faire des calculs exacts sans se soucier des débordements de capacité.

21
Q

Explique le processus des calculs mixtes.

A

Lorsqu’un opérateur combine un nombre int et un float, le int est d’abord converti en float
Cela peut nuire à la précision du résultat.

22
Q

En programmation, les noms sont des …., et on en donne la définition dans une….

A

identificateurs, déclaration

23
Q

En python, les identificateurs sont des symboles composés de quoi ?

A

de lettres (majuscules/minuscules), des chiffres (0…9), et le caractère _

23
Q

Quand faut-il utiliser les int ou les float ?

A

Il est conseillé d’utiliser les float pour les calculs scientifiques seulement car une petite erreur de calcul est acceptable
Pour les calculs monétaires, il est mieux de s’en tenir aux int qui sont représentés exactement (par exemple, calculer en nombre de cents plutôt qu’en nombre de dollars).

23
Q

Vrai ou faux ? (3roses, temp-max) sont des bons identificateurs ?

A

Faux, Les chiffres sont interdits au début d’un ident. De plus, on pas le droit de mettre -.

24
Q

Quels sont les autres identificateurs qui ne peuvent pas être déclarés par le programmeur ?

A

Ceux qui sont réservés par la grammaire (and, assert, continue, break, import, for etc)

25
Q

Quels sont les deux conventions les plus populaires pour construire des identificateurs ?

A

camelCase et snake_case

26
Q

Comment distinguer un bon identificateur à un mauvais ?

A

Un bon identificateur clarifie ce à quoi il réfère et il évite les ambiguïtés : il est significatif

27
Q

La syntaxe d’une déclaration de variable est :

A

‹identificateur› = ‹expression›, ‹identificateur› est le nom de la variable créée.
La valeur de ‹expression› est liée à la variable.

28
Q

Vrai ou faux ? Une déclaration de variable est une expression ?

A

Une déclaration n’est pas une expression Une déclaration n’a donc pas de valeur
On dit plutôt que la déclaration de variable a un effet (celui de créer une variable et la lier)

29
Q

Quels sont les avantages d’une déclaration de variable ?

A

Plus lisible, plus facile à comprendre, plus facile à maintenir et correcte. Son principe est d’éviter la duplication de code.

30
Q

Quels sont les autres calculs numériques, outres les opérateurs de base ?

A

Les opérateurs bit-à-bit (~, &, |, ^, «,&raquo_space;) Les fonctions mathématiques (racine carrée,
sinus, cosinus, min, max, …)
La division entière (//) et modulo (%)

31
Q

Explique le complément bit-à-bit

A

Pour l’opérateur unaire ~ (complément):
il y aura un 1 dans l’encodage de la valeur résultante si et seulement si il y a un 0 à la position correspondante de l’encodage de l’opérande.

32
Q

Qu’est-ce que python possède qui correspondent à des fonction mathématiques bien connu ?

A

Ce sont des fonctions prédéfinies.
On accède à ces fonctions par le module math. Comme par ex, math.sqrt(9) qui calcule la racine carrée de 9.

33
Q

Explique la différence entre la division entière et l’opérateur modulo.

A

“nombre de fois qu’un nombre peut être
soustrait d’un autre sans le rendre négatif” = division entière

L’opérateur binaire % calcule le modulo (ou reste après division entière)

34
Q
A