Type: int Age ; float Taille, Poids ; char Sexe ; int Est_Celibataire ; char Nom_Pre[31] ; etc . Constante: #define MAX_PERS 50 OU const float TAUX_TPS = 0.07 ; Type: DIM Age AS Integer DIM Taille As Single, Poids As Single DIM Sexe AS String * 1 DIM Est_Celibataire AS Boolean DIM Nom_Pre AS String * 30 etc . Constante: Const TAUX_TPS AS Single = 0.07 Opérateurs arithmétiques (pour les calculs) Opérateurs arithmétiques (pour les calculs) + , - , * (multiplication) + , - , * (multiplication) 10 / 4 vaut 2 mais 10.0 / 4 vaut 2.5 10 \ 4 vaut 2 mais 10 / 4 vaut 2.5 (un seul opérateur de division) ( division entière: \, division réelle: / ) 12 % 10 vaut 2 (le modulo) 12 MOD 10 vaut 2 (le modulo) 2 ^ 3 vaut 8 ( 2 au cube ) Opérateurs relationnels (comparaison) : Opérateurs relationnels (comparaison) : == != < = <> < est égale à est différent de plus petit que est égale à est différent de plus petit que <= > >= <= > >= plus petit ou égale plus grand pg ou égale plus petit ou égale plus grand pg ou égale Continuité d'une instruction: float Taille, Poids ; Affectation: Age = 23 ; Continuité d'une instruction: symbole DIM Taille AS Single, _ Poids AS Single Affectation: Age = 23 Quelques remarques: Quelques remarques: 1. point virgule (souvent) à la fin 2. majuscule vs minuscule : TP1 et différent de Tp1 3. liste d'informations de même type : float Taille, Poids ; 4. = (affectation) vs = = (égalité) 5. un seul opérateur de division : / 6. programmer le type booléen avec int 7. un seul caractère (char) vs chaîne de caractères (tableau des caractères, ...) _ 1. pas de point virgule à la fin 2. majuscule vs minuscule : TP1, Tp1, tp1, tP1 sont pareils 3. liste d'informations de même type : DIM Taille AS SINGLE, Poids AS Single 4. 5. 6. 7. = (affectation et aussi égalité) deux opérateurs de division : \ et / existence du type booléen chaîne de caractères ( "F", "Bon") Par Le Van Nguyen : Visual Basic vs C, C++ pour les cours de la DESI 1 La sélection simple avec if : if ( condition ) instruction A else instruction B If condition Then instruction(s) A Else instruction(s) B End If If condition Then instruction Style 1 (sans else): if ( Mois = = 1 ) Nb_Jours = 31 ; Style 2 (avec else): if ( Valeur1 > Valeur2 ) Maximum = Valeur1 ; else Maximum = Valeur 2 ; Style 3 (if imbriqué): if ( Jour >= 2 && Jour <= 5) Nb_Cafe = 5 ; else if ( Jour = = 6 ) Nb_Cafe = 3 ; else Nb_Cafe = 1 ; Style 4 (instruction composée): if ( Age >= 12 && Age < 18 ) { printf("Adolescent"); Nb_Ado++; } else { printf("Entrez la taille "); scanf("%f", &Taille); } Style 1 (sans else): if Mois = 1 then Nb_Jours = 31 OU If Mois = 1 Then Nb_Jours = 31 End if Style 2 (avec else): if Valeur1 > Valeur2 then Maximum = Valeur1 else Maximum = Valeur 2 end if Style 3 (if imbriqué): if Jour >= 2 AND Jour <= 5 then Nb_Cafe = 5 elseif Jour == 6 then Nb_Cafe = 3 else Nb_Cafe = 1 end if Style 4 (instruction composée): if Age >= 12 AND Age < 18 then txtAff.Text = "Adolescent" Nb_Ado = Nb_Ado + 1 else Taille = Val ( txtAff.Text) end if Par Le Van Nguyen : Visual Basic vs C, C++ pour les cours de la DESI 2 Fonctionnement Si la condition vaut vraie, on exécute les instructions sous if. Dans le cas contraire (sinon), et, si la clause else se présente, on effectue les instructions sous else. La sélection multiple avec switch ( expression ) { case cte1 : instructions 1; case cte2 : instructions 2; ... switch ... Select Case Expression Case Cte1, Cte2, ..., Cte k instructions A Case Borne1 TO Borne2 instructions B Case Is opé. rel. valeur instructions C Case Else case ctek : instructions k; default : instructions ; instructions End Select } Exemple avec C et C++ : switch ( Rang ) { case 2 : case 3 : case 4 : case 5 : printf("On travaille très fort"); break; case 6 : printf("Fin de semaine s'en vient "); break; case 1 : case 7 : printf("Youppi! C'est la fin de semaine"); break; default: printf("Rang erroné!"); } Par Le Van Nguyen : Visual Basic vs C, C++ pour les cours de la DESI 3 switch ( Jour ) { case 1 : case 7 : Nb_Cafe = 1 ; printf("Sa ou Di" ); break ; case 2 : case 3 : case 4 : case 5 : Nb_Cafe = 5 ; break ; case 6 : Nb_Cafe = 3 ; break ; default: Nb_Cafe = 1 ; } Quelques remarques: 1. break; pour quitter 2. pas de valeurs consécutives Select Case Jour Case 1, 7 Nb_Cafe = 1 txtAff.Text = "Sa ou Di" Case 2 TO 5 Nb_Cafe = 5 Case 6 ' ou Case Is = 6 Nb_Cafe = 3 Case Else Nb_Cafe = 1 End Select Quelques remarques: 1. pas besoin de break 2. utiliser TO pour valeurs consécutives 3. utiliser , pour une liste des valeurs Boucle de répétition avec tant que (while): while ( condition ) instruction While condition instruction(s) Wend (Note : Wend : End Of While Fin de Tant que) Par Le Van Nguyen : Visual Basic vs C, C++ pour les cours de la DESI 4 Cas d'instruction simple: while ( N > 0 ) N = N / 10 ; Cas d'instruction composée: while ( N > 0 ) { Som = Som + N % 10; N = N / 10 ; } Quelques remarques: 1. instruction composée: entre { et } 2. condition de continuer entre parenthèses Cas d'instruction simple: While N > 0 N = N \ 10 Wend Cas d'instruction composée: While N > 0 Som = Som + N MOD 10 N = N \ 10 Wend Quelques remarques: 1. instruction composée: délimitée entre While et Wend 2. condition de continuer : parenthèses facultatifs. Fonctionnement : Étape 1 : vérifier d'abord la condition Étape 2 : si la condition vaut vraie alors a) on effectue les instructions à répéter b) on revient à l'étape 1 si non, on quitte la boucle Il faut assurer que la condition soit bien définie avant d'éxécuter la boucle while. Boucle de répétition avec pour (For . . .) : for ( exp1 ; exp2; exp3 ) for var=exp1 to exp2 step exp3 instruction instruction(s) next var Par Le Van Nguyen : Visual Basic vs C, C++ pour les cours de la DESI 5 Exemple 1 for ( i = 1 ; i <= 5 ; i++) printf("Bonjour"); Exemple 2 for ( Val = 1 ; Val <= 21; Val += 5) { Som = Som + Val ; Pro = Pro * Val ; } (Step est facultatif, le var dans Next var est facultatif) For i = 1 To 5 Print "Bonjour" Next For Val = 1 To 21 Step 5 Som = Som + Val Pro = Pro * Val Next Val Fonctionnement classique: Initialiser la variable de contrôle de la boucle: Var = Départ; Tantt que Var <= Fin Faire - effectuer les instructions à répéter - ajuster la valeur de la variable de contrôle Var = Var + Le_Pas Domaines d'utilisation: On utilise la boucle for quand on sait à l'avance le nombre de fois qu'on répète le même traitement. C'est le cas des valeurs dont le pas est une constante entre deux bornes données. On l'utilise également pour parcourir les indices d'un tableau. Boucle de répétition avec do . . . while do do instruction while ( condition pour continuer ) ; instruction loop while condition pour continuer (et plusieurs variations) Exemple: do { Somme = Somme + N % 10; N = N / 10 ; } while (N > 0); Solution : do Somme = Somme + N MOD 10 N = N \ 10 loop while N > 0 etc. Par Le Van Nguyen : Visual Basic vs C, C++ pour les cours de la DESI 6