[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.38,0:00:03.29,Default,,0000,0000,0000,,Initialement, si je compile \Net exécute le testeur, Dialogue: 0,0:00:03.29,0:00:06.20,Default,,0000,0000,0000,,toutes les méthodes renvoient des zéros. Dialogue: 0,0:00:06.20,0:00:08.62,Default,,0000,0000,0000,,Rectifions l'amdahlSpeedup en premier. Dialogue: 0,0:00:08.62,0:00:10.36,Default,,0000,0000,0000,,Pour l'instant, il renvoie 0. Dialogue: 0,0:00:10.36,0:00:13.32,Default,,0000,0000,0000,,\NEt si je l'écris juste comme ça? Dialogue: 0,0:00:13.32,0:00:15.78,Default,,0000,0000,0000,,Maintenant, si je lance\Nà nouveau le testeur, Dialogue: 0,0:00:15.78,0:00:18.72,Default,,0000,0000,0000,,j'obtiens en réalité 2.875 Dialogue: 0,0:00:18.72,0:00:20.84,Default,,0000,0000,0000,,alors que je m'y attendais à 1.6. Dialogue: 0,0:00:20.84,0:00:23.34,Default,,0000,0000,0000,,Je ferais mieux de revenir\Nen arrière et le corriger. Dialogue: 0,0:00:23.34,0:00:25.56,Default,,0000,0000,0000,,Maintenant, il fait d'abord les divisions, Dialogue: 0,0:00:25.56,0:00:28.52,Default,,0000,0000,0000,,donc 1 sur s et s sur n. Dialogue: 0,0:00:28.52,0:00:30.80,Default,,0000,0000,0000,,Ensuite les additions et\Nsoustractions au milieu Dialogue: 0,0:00:30.80,0:00:34.11,Default,,0000,0000,0000,,et il n'y a pas de sens de la fraction\Navec laquelle nous avons commencé. Dialogue: 0,0:00:34.11,0:00:37.36,Default,,0000,0000,0000,,Toute cette pièce, de s à n Dialogue: 0,0:00:37.36,0:00:40.62,Default,,0000,0000,0000,,devrait rester unie dans le dénominateur Dialogue: 0,0:00:40.63,0:00:44.63,Default,,0000,0000,0000,,et celle -1 doit rester unie \Ndans son numérateur. Dialogue: 0,0:00:45.59,0:00:47.47,Default,,0000,0000,0000,,Essayons ça encore. Dialogue: 0,0:00:47.47,0:00:50.30,Default,,0000,0000,0000,,On dirait que amdalhSpeedup fonctionne, Dialogue: 0,0:00:50.30,0:00:53.48,Default,,0000,0000,0000,,mais nous devons encore \Nfaire le rapport croisé. Dialogue: 0,0:00:53.48,0:00:56.30,Default,,0000,0000,0000,,Je vais essayer de refaire\Nde façon un peu naïve. Dialogue: 0,0:00:56.30,0:00:59.44,Default,,0000,0000,0000,,J'ai écrit ça comme ça a l'air\Nmais l'ai aplati sur une ligne. Dialogue: 0,0:00:59.44,0:01:02.97,Default,,0000,0000,0000,,Donc, si je renvoie cette\Nquantité et que je compile, Dialogue: 0,0:01:03.40,0:01:05.62,Default,,0000,0000,0000,,j'obtiens une erreur, type inattendu, Dialogue: 0,0:01:05.62,0:01:08.63,Default,,0000,0000,0000,,classe valeur trouvée requise. Dialogue: 0,0:01:09.15,0:01:12.56,Default,,0000,0000,0000,,Cette erreur n'a probablement \Npas beaucoup de sens pour le moment, Dialogue: 0,0:01:12.56,0:01:14.79,Default,,0000,0000,0000,,mais c'est un petit indice\Nde ce qui vient. Dialogue: 0,0:01:14.79,0:01:17.18,Default,,0000,0000,0000,,Une paire de parenthèses \Ncomme celle-ci suivie Dialogue: 0,0:01:17.18,0:01:20.11,Default,,0000,0000,0000,,d'une autre quantité \Na une autre signification Dialogue: 0,0:01:20.11,0:01:21.93,Default,,0000,0000,0000,,surtout, si vous mettez un type ici Dialogue: 0,0:01:21.93,0:01:24.60,Default,,0000,0000,0000,,au lieu d'une expression comme a - c. Dialogue: 0,0:01:24.60,0:01:27.72,Default,,0000,0000,0000,,Ce que je dois faire, c'est indiquer\Nce que je veux multiplier Dialogue: 0,0:01:27.72,0:01:29.83,Default,,0000,0000,0000,,\Net je vais devoir le faire ici aussi. Dialogue: 0,0:01:29.83,0:01:32.38,Default,,0000,0000,0000,,Et maintenant, si j'essaie \Nde relancer le testeur, Dialogue: 0,0:01:32.38,0:01:35.18,Default,,0000,0000,0000,,je n'obtiens pas les bonnes \Nréponses pour le rapport croisé. Dialogue: 0,0:01:35.18,0:01:37.31,Default,,0000,0000,0000,,Car lorsque nous avons\Nun groupe d'opérateurs Dialogue: 0,0:01:37.31,0:01:39.21,Default,,0000,0000,0000,,avec les mêmes précédents, Dialogue: 0,0:01:39.21,0:01:42.40,Default,,0000,0000,0000,,Java commencera juste à gauche \Net se déplacera vers la droite. Dialogue: 0,0:01:42.40,0:01:46.21,Default,,0000,0000,0000,,Donc, au lieu de calculer\Na - c * b - d Dialogue: 0,0:01:46.21,0:01:50.22,Default,,0000,0000,0000,,sur, entre parenthèses, (b - c) * (a - d). Dialogue: 0,0:01:50.22,0:01:54.29,Default,,0000,0000,0000,,Cela donnera a - c * b - d / b - c Dialogue: 0,0:01:54.31,0:01:58.12,Default,,0000,0000,0000,,et toute cette quantité \Nmultipliée par a - d. Dialogue: 0,0:01:58.42,0:02:02.14,Default,,0000,0000,0000,,Ce que je dois faire ici, \Nc'est grouper le dénominateur. Dialogue: 0,0:02:02.14,0:02:05.11,Default,,0000,0000,0000,,Je pourrais aussi regrouper\Nle numérateur, si je le voulais, Dialogue: 0,0:02:05.11,0:02:07.35,Default,,0000,0000,0000,,mais cela ne ferait pas \Nbeaucoup de différence. Dialogue: 0,0:02:07.35,0:02:10.93,Default,,0000,0000,0000,,Si je compile à nouveau\Net exécute le testeur, Dialogue: 0,0:02:10.93,0:02:13.71,Default,,0000,0000,0000,,j'ai maintenant deux méthodes \Nqui fonctionnent bien. Dialogue: 0,0:02:13.71,0:02:15.31,Default,,0000,0000,0000,,\NMaintenant pour la moyenne. Dialogue: 0,0:02:15.31,0:02:18.98,Default,,0000,0000,0000,,Je pourrais essayer de renvoyer \Nla somme de tous ces éléments, Dialogue: 0,0:02:18.98,0:02:20.98,Default,,0000,0000,0000,,\Ntous divisés par quatre. Dialogue: 0,0:02:20.98,0:02:22.89,Default,,0000,0000,0000,,\NVoyons voir comment cela fonctionne. Dialogue: 0,0:02:22.89,0:02:26.30,Default,,0000,0000,0000,,Si je lance le testeur, il semble \Nque cela fonctionne dans un cas, Dialogue: 0,0:02:26.30,0:02:27.44,Default,,0000,0000,0000,,\Nmais pas dans l'autre. Dialogue: 0,0:02:27.44,0:02:29.64,Default,,0000,0000,0000,,\NRegardons le deuxième cas. Dialogue: 0,0:02:29.64,0:02:31.75,Default,,0000,0000,0000,,Je vais aller lire à \Nl'intérieur du testeur. Dialogue: 0,0:02:31.75,0:02:33.85,Default,,0000,0000,0000,,Le cas qui ne fonctionne pas\Nest quand nous essayons Dialogue: 0,0:02:33.85,0:02:36.69,Default,,0000,0000,0000,,\Nde prendre la moyenne de 3, 4, 3 et 3. Dialogue: 0,0:02:37.63,0:02:40.11,Default,,0000,0000,0000,,Nous devrions, en fait, nous\Nattendre à 3,25, Dialogue: 0,0:02:40.63,0:02:43.04,Default,,0000,0000,0000,,mais il semble que \Nnous perdons la décimale. Dialogue: 0,0:02:43.04,0:02:46.08,Default,,0000,0000,0000,,Java interprète cela \Ncomme une division entière, Dialogue: 0,0:02:46.08,0:02:50.08,Default,,0000,0000,0000,,car 4 est un entier, et a, b, c et d \Nsont tous déclarés comme entiers. Dialogue: 0,0:02:50.40,0:02:52.74,Default,,0000,0000,0000,,Il y a plusieurs façons \Nde résoudre ce problème. Dialogue: 0,0:02:52.74,0:02:56.27,Default,,0000,0000,0000,,Je pourrais écrire 4 comme 4. ou 4.0 Dialogue: 0,0:02:56.27,0:02:58.56,Default,,0000,0000,0000,,et alors il obtiendrait\Nla bonne réponse ici. Dialogue: 0,0:02:58.72,0:03:01.88,Default,,0000,0000,0000,,Ou je pourrais réellement changer \Ntous ces ints en doubles Dialogue: 0,0:03:01.88,0:03:05.54,Default,,0000,0000,0000,,et alors je n'aurais pas besoin\Nde spécifier que le 4 était un double. Dialogue: 0,0:03:05.54,0:03:09.54,Default,,0000,0000,0000,,Je peux compiler ceci, lancer \Nle testeur et cela fonctionne toujours. Dialogue: 0,0:03:10.10,0:03:13.56,Default,,0000,0000,0000,,C'est parce que si une de \Nces variables est un double, Dialogue: 0,0:03:13.56,0:03:16.65,Default,,0000,0000,0000,,cette expression entière entre\Nparenthèses sortira comme un double Dialogue: 0,0:03:16.65,0:03:20.31,Default,,0000,0000,0000,,et un double divisé par un entier ne doit\Npas être fait avec la division entière Dialogue: 0,0:03:20.31,0:03:22.78,Default,,0000,0000,0000,,qui requiert une division régulière. Dialogue: 0,0:03:22.78,0:03:24.89,Default,,0000,0000,0000,,C'est une chose vraiment \Nfacile à confondre. Dialogue: 0,0:03:24.89,0:03:27.89,Default,,0000,0000,0000,,Cela nous semble juste, \Nmais l'ordinateur le lira mal Dialogue: 0,0:03:27.89,0:03:30.07,Default,,0000,0000,0000,,\Net le compilateur ne vous avertira pas. Dialogue: 0,0:03:30.07,0:03:32.72,Default,,0000,0000,0000,,Lorsque nous lançons cela\Navec les ints et sans doubles, Dialogue: 0,0:03:32.72,0:03:35.63,Default,,0000,0000,0000,,nous avons vu que cela a fini\Npar être une erreur d'exécution. Dialogue: 0,0:03:35.63,0:03:38.50,Default,,0000,0000,0000,,Ceci est un bon exemple de pourquoi\Nil est utile de penser Dialogue: 0,0:03:38.50,0:03:41.07,Default,,0000,0000,0000,,à ce que vous voulez que\Nvotre réponse soit à l'avance. Dialogue: 0,0:03:41.07,0:03:43.56,Default,,0000,0000,0000,,Calculez quelques exemples, \Npuis écrivez votre code. Dialogue: 0,0:03:43.56,0:03:44.75,Default,,0000,0000,0000,,Au plaisir avec ce quiz.