typecast and type check

master
Juan 3 years ago
parent e6bed82426
commit 376922e87f

@ -1,4 +1,24 @@
## opérateurs complémentaires
- opérateur de concaténation (joindre deux chaînes entre elles) : ~
- opérateur de vérification de type : est
## Vérification de type : est "type"
- 1 est entier
- 1.2 est decimal
- "bonjour" est chaine
- mavariable est objet
- [1,2,45,6] est tableau
## instructions complémentaires
### fonction de conversions de types :
- entier(1.2) => 1
- entier("1") => 1
- chaine(3) => "3"
En anglais : Typecast functions, appelées aussi transtypage.
*NB* : dans certains langages les fonctions de conversion de types sont des opérateurs unaires.
## exercice 1
Demander à quelqu'un le prix d'un produit HT et le nombre qu'il veut.
@ -34,18 +54,52 @@ afficher "année de naissance ?"
lire annee;
afficher "bonjour " ~ nom;
afficher "votre age est de " ~ (2022 - anne) ~ "ans"
afficher "votre age est de " ~ (2022 - anne)*12 ~ "mois"
afficher "votre age est de " ~ (2022 - anne)*52 ~ "semaines"
afficher "votre age est de " ~ (2022 - anne) ~ "ans";
afficher "votre age est de " ~ (2022 - anne)*12 ~ "mois";
afficher "votre age est de " ~ (2022 - anne)*52 ~ "semaines";
```
## exercice 3
une année est bissextile si elle divisible par 4, sauf si elle est divisible par 100, à moins qu'elle soit divisible par 400.
Du coup : demander une année à un utilisateur et sire si elle est bisextile our pas.
```
var annee entier;
```
afficher "année ?";
lire annee
si (annee / 400) est entier alors
afficher "l'année est bissextile";
sinon si (annee / 100) est entier alors
afficher "l'année n'est pas bissextile";
sinon si (annee / 4) est entier alors
afficher "l'année est bissextile";
sinon
afficher "l'année n'est pas bissextile";
fin si
```
## exemple de fonction est entier du resutlat d'une division
```
fonction est_entier(opD,opG)
var reste = opD;
tant que reste > opD
reste = reste - opG;
fin tant que
si reste > 0 alors
renvoyer faux;
sinon renvoyer vrai
fin fonction;
```
## fonction est entier pour un nombre
```
fonction est_entier(nombre)
si entier(nombre) == nombre alors
retourner vrai;
sinon
retourner faux;
fin si;
fin fonction;
```

Loading…
Cancel
Save