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