1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:03,440 >> INTERLOCUTEUR 1: La dernière fois que nous avons analysé entiers, rappellent que nous avons utilisé certains 3 00:00:03,440 --> 00:00:07,810 Expressions booléennes pour vérifier si d'un utilisateur entrée de n se situe entre les numéros 4 00:00:07,810 --> 00:00:11,580 comme 0 et 3, 4 et 7, et 8 et 10. 5 00:00:11,580 --> 00:00:14,990 Eh bien, nous l'avons fait en utilisant le cas de et d'autre si de, mais il s'avère que vous pouvez 6 00:00:14,990 --> 00:00:17,990 mettre en œuvre cette même logique à l'aide d'un construction de programmation différente 7 00:00:17,990 --> 00:00:21,400 tout, tout en réalisant encore exactement le même résultat. 8 00:00:21,400 --> 00:00:25,000 En fait, nous pouvons introduire quelque chose appelé un commutateur qui permet de 9 00:00:25,000 --> 00:00:28,660 changer notre comportement en fonction de la valeur d'une variable. 10 00:00:28,660 --> 00:00:29,840 >> Donnons cette solution. 11 00:00:29,840 --> 00:00:35,730 Pour ce faire, je vais d'abord comprendre la bibliothèque de CS50 à titre d'cs50.h. 12 00:00:35,730 --> 00:00:39,960 Je vais également inclure la norme bibliothèque par l'intermédiaire d'E / S standard O.h. 13 00:00:39,960 --> 00:00:44,540 Et je vais déclarer principale de la manière habituelle, int void main. 14 00:00:44,540 --> 00:00:45,650 Ouvrez accolade. 15 00:00:45,650 --> 00:00:47,100 Fermez accolade. 16 00:00:47,100 --> 00:00:49,720 Et maintenant, je vais demander à la utilisateur pour un nombre entier. 17 00:00:49,720 --> 00:00:56,990 >> Printf, donnez-moi un int entre 1 et 10. 18 00:00:56,990 --> 00:00:59,310 Et maintenant, je vais me qui int en utilisant la CS50 19 00:00:59,310 --> 00:01:01,590 bibliothèques fonctionnent, GetInt. 20 00:01:01,590 --> 00:01:06,140 Int, appelons-n, est égal GetInt. 21 00:01:06,140 --> 00:01:08,500 Et maintenant, je vais faire un peu d'analyse de ce nombre entier. 22 00:01:08,500 --> 00:01:13,120 Quelque peu arbitraire, mais avec cette nouveau concept connu comme un interrupteur. 23 00:01:13,120 --> 00:01:16,530 Commuter sur la valeur de n comme suit. 24 00:01:16,530 --> 00:01:23,240 >> Dans le cas où n est égal à 1, ou dans l' le cas où n est égal à 2, ou dans le cas 25 00:01:23,240 --> 00:01:28,150 que n est égal à 3, aller de l'avant et exécuter cette ligne de code. 26 00:01:28,150 --> 00:01:34,480 Printf vous avez choisi un int petit break. 27 00:01:34,480 --> 00:01:37,610 Maintenant, j'ai besoin de mettre en œuvre l'équivalent d'une ELT simple en 28 00:01:37,610 --> 00:01:40,990 énumérant certains cas supplémentaires. 29 00:01:40,990 --> 00:01:47,180 >> Dans le cas où n est égal à 4, ou dans l' le cas où n est égal à 5, ou dans le cas 30 00:01:47,180 --> 00:01:53,830 que n est égal à 6, ou dans le cas où n est égal à 7, aller de l'avant et d'imprimer vous 31 00:01:53,830 --> 00:01:58,000 choisir un milieu Int. 32 00:01:58,000 --> 00:01:59,490 Pause. 33 00:01:59,490 --> 00:02:02,300 Or, dans le cas où l'utilisateur choisi un grand nombre, nous allons 34 00:02:02,300 --> 00:02:04,940 détecter que la façon suivante. 35 00:02:04,940 --> 00:02:08,900 >> Dans le cas où l'utilisateur a pris huit ou dans le cas où l'utilisateur de sélectionner 36 00:02:08,900 --> 00:02:14,110 neuf, ou dans le cas où l'utilisateur de sélectionner 10, aller de l'avant et d'imprimer vous 37 00:02:14,110 --> 00:02:17,830 choisir un grand int. 38 00:02:17,830 --> 00:02:19,180 Pause. 39 00:02:19,180 --> 00:02:23,970 ELT, si un utilisateur n'a pas choisi un certain nombre qui appartient à l'une de ces 10 cas, 40 00:02:23,970 --> 00:02:25,520 nous allons avoir un comportement par défaut. 41 00:02:25,520 --> 00:02:27,870 Qui dans ce cas sera le suivant. 42 00:02:27,870 --> 00:02:32,860 >> Par défaut, Printf, vous avez choisi un invalide Int. 43 00:02:32,860 --> 00:02:36,100 44 00:02:36,100 --> 00:02:38,220 Pause. 45 00:02:38,220 --> 00:02:42,870 Maintenant, si je sauve ce fichier de compilation il avec faire commutateur. 46 00:02:42,870 --> 00:02:44,870 Lancez-le avec le commutateur de barre oblique.. 47 00:02:44,870 --> 00:02:46,770 Faisons quelques vérifications de bonne santé. 48 00:02:46,770 --> 00:02:48,440 Je vais prendre un Int 1. 49 00:02:48,440 --> 00:02:50,110 Et ID choisit une petite int. 50 00:02:50,110 --> 00:02:52,240 >> Faisons maintenant. Slash commutateur. 51 00:02:52,240 --> 00:02:54,514 Et tapez exemple, négatif 1. 52 00:02:54,514 --> 00:02:56,900 Et ID ramassé un int invalide. 53 00:02:56,900 --> 00:02:59,560 A la fin de la journée, le commutateur construire ne vous permettra pas de faire 54 00:02:59,560 --> 00:03:03,320 tout ce que vous ne pouviez pas déjà faire avec le plus familier si, d'autre si, 55 00:03:03,320 --> 00:03:04,530 else. 56 00:03:04,530 --> 00:03:07,470 Mais si vous avez une liste finie de valeurs que vous vérifiez pour un 57 00:03:07,470 --> 00:03:09,820 instruction switch peut très ainsi rendre votre code plus 58 00:03:09,820 --> 00:03:11,310 explicite, ou plus lisible. 59 00:03:11,310 --> 00:03:12,910