info113, TD1 groupes MATH-STIC, MASS-GEO, MASS-PSY Pierre.Hyvernat@univ-savoie.fr 1. variables et affectations ============================ Exercice 1 ========== # var a, b: entiers a := 2 b := 7 affiche(a,b) a := b+3 b := 2 affiche(a,b) Qu'affichent ces commandes ? Exercice 2 ========== # var r: entier r := 0 r := r+2 r := r+2 r := r*2 affiche(r) Qu'affichent ces commandes ? Exercice 3 ========== # var a, b, x: entiers a := 0 b := 1 x := 3 a := b+1 b := b+1 x := a affiche(a,b,x) Qu'affichent ces commandes ? Exercice 4 ========== # var a, b: entiers a := 1 b := a a := 2 affiche(b) Qu'affichent ces commandes : 1 ou 2 ? Exercice 5 : échanges ===================== # var a, b: entiers a := 5 b := 2 b := a a := b affiche(a,b) Est-ce que ces commandes ont échangé les valeurs de a et b ? Trouvez une suite de commandes qui permettent d'échanger le contenu de deux variables... Trouvez une suite de commandes qui permettent d'échanger le contenu de trois variables : b prend l'ancienne valeur de a, c prend l'ancienne valeur de b, a prend l'ancienne valeur de c. 2. Types de données et opérations ================================= Exercice 1 ========== # var i, j: entiers i := 2 j := 5 # var x: ?? var: y ?? var z: ?? var t: ?? x := i**5 y := (j-2)**i % 2 z := (i+j) / 2 t := (i+j) // 2 Quels sont les types de x, y, z et t ? Quelles sont leurs valeurs ? Exercice 2 ========== # x, y: flottants x := 2.35 y := 2 / 7 # var b, c: ?? b := x > y c := (x+1) < 3*y and b affiche(b,c) Quel est le type de b et c ? Quelles sont leurs valeurs ? Exercice 3 ========== # var x: flottant var i: entier var b: booléen var s: chaine x := 1.5 i := 3 b := True s := "Hello" # ... u1 := x / 3 u2 := x / 3.0 u3 := s + " Tom" u4 := "12" + "3" u5 := "12" + 3 u6 := "12" + str(3) u7 := int("12") + 3 u8 := "12" * "3" u9 := "12" * 3 Quels sont les types et les valeurs de u1, u2, u3, u4, u5, u6, u7, u8, u9 ?