1 00:00:00,000 --> 00:00:00,580 2 00:00:00,580 --> 00:00:02,950 >> Девід Дж. Малан: Давайте тепер реалізувати функція, не тільки є сторона 3 00:00:02,950 --> 00:00:05,920 ефект, але замість повертається що повертається. 4 00:00:05,920 --> 00:00:09,150 Зокрема, давайте реалізувати функцію називається отримати позитивний Int якого 5 00:00:09,150 --> 00:00:11,490 мету в житті, щоб зробити саме це. 6 00:00:11,490 --> 00:00:14,500 Зокрема, я хотів би використовувати ця функція наступним чином - 7 00:00:14,500 --> 00:00:18,770 Int N отримує отримати позитивний Int. 8 00:00:18,770 --> 00:00:23,640 А потім роздрукувати е, завдяки для відсотків я як 9 00:00:23,640 --> 00:00:26,490 заповнювач, кома, кінець. 10 00:00:26,490 --> 00:00:29,030 >> Тепер, звичайно,, отримати позитивний внутр ще не існує. 11 00:00:29,030 --> 00:00:33,020 Так що давайте обіцяють реалізувати її на додавши в початок моєму файлі рядки 12 00:00:33,020 --> 00:00:37,110 як внутр показуючи, що ця функція повернеться в междунар - 13 00:00:37,110 --> 00:00:39,110 отримати позитивний Int. 14 00:00:39,110 --> 00:00:43,000 І давайте явно вказати, що це функція не буде вживати ніяких вхід, і 15 00:00:43,000 --> 00:00:45,570 так що його аргументи є недійсними. 16 00:00:45,570 --> 00:00:49,500 Давайте тепер в нижній частині мого файлу, просто так, що я можу тримати магістраль нагорі, 17 00:00:49,500 --> 00:00:52,220 насправді реалізувати або визначити ця функція. 18 00:00:52,220 --> 00:00:55,120 >> Спочатку ми почнемо з того ж підпис, так сказати - 19 00:00:55,120 --> 00:00:59,140 внутр отримати позитивний внутр недійсними. 20 00:00:59,140 --> 00:01:01,910 А тепер давайте реалізуємо отримати Позитивний Міжн таким чином. 21 00:01:01,910 --> 00:01:05,410 Давайте оголосити Int, яка також називається N, але ми могли б назвати це майже все, що 22 00:01:05,410 --> 00:01:11,360 ми хотіли б, виконайте такі дії в той час як деякі умова істинно, і ми повернемося до 23 00:01:11,360 --> 00:01:13,030 що стан в даний момент. 24 00:01:13,030 --> 00:01:20,800 Роздрукувати е, будь ласка, дайте мені позитивну Int, а тепер давайте використовувати Get внутр від 25 00:01:20,800 --> 00:01:23,290 CS50 бібліотека насправді отримати, що Int. 26 00:01:23,290 --> 00:01:28,210 >> Але в моєму стані, давайте зробимо це цикл доти, N менше 1. 27 00:01:28,210 --> 00:01:31,260 Іншими словами, за умови, що користувач не співпрацюватиме, надаючи мені 28 00:01:31,260 --> 00:01:36,260 з позитивним Int, дозвольте мені знову швидке йому або їй знову, і знову, і знову 29 00:01:36,260 --> 00:01:37,720 поки він чи вона не робить. 30 00:01:37,720 --> 00:01:40,360 Але я ще не закінчив, тому що в Кінець цієї функції мені потрібно 31 00:01:40,360 --> 00:01:42,210 насправді зробити щось з цього входу. 32 00:01:42,210 --> 00:01:46,710 І тому я збираюся йти про повернення це з лінією, як зворотний кінець 33 00:01:46,710 --> 00:01:52,850 крапка з комою, тим самим повертаючи фактична Int На головну який назвав цю функцію. 34 00:01:52,850 --> 00:01:56,810 Тепер це варто відзначити, що незважаючи на те, отримати позитивні десяткового повертається в междунар, це 35 00:01:56,810 --> 00:02:00,470 звичайно, прекрасно для того, щоб повернутися позитивне внутр спеціально. 36 00:02:00,470 --> 00:02:04,170 Існує не особливий тип даних для позитивне ціле число спеціально, тому ми 37 00:02:04,170 --> 00:02:06,490 просто використовувати вбудований в "Int." 38 00:02:06,490 --> 00:02:11,250 >> Тепер повернемося на лінії дев'яти, зверніть увагу, що я роздрукувавши N. Але N в цій лінії 39 00:02:11,250 --> 00:02:13,970 належить N, яка оголошена відповідно вісім. 40 00:02:13,970 --> 00:02:17,840 Ось і виходить, ви можете абсолютно є змінні однаковими іменами так 41 00:02:17,840 --> 00:02:20,250 умови, що вони існують в межах різні області. 42 00:02:20,250 --> 00:02:24,950 І нагадаємо, що обсяг визначається фігурні дужки, які найближче 43 00:02:24,950 --> 00:02:27,620 оточують змінну що ви визначили. 44 00:02:27,620 --> 00:02:30,370 >> Тепер давайте компіляції та запустити цю програму. 45 00:02:30,370 --> 00:02:35,210 Зробити функції 1, точка скоротити функції 1. 46 00:02:35,210 --> 00:02:40,040 Давайте дамо йому позитивну RC-як 50, і це говорить спасибі за 50. 47 00:02:40,040 --> 00:02:43,180 Тим часом, якщо ми не співпрацюємо, запустивши програму знову, даючи йому 48 00:02:43,180 --> 00:02:47,550 0, я повторному запиті або надання його негативний 1, я знову буде запропоновано. 49 00:02:47,550 --> 00:02:51,720 Але якщо я співпрацюють надання йому, кажуть, 50, я подякував за 50. 50 00:02:51,720 --> 00:02:54,590