1 00:00:00,000 --> 00:00:00,580 2 00:00:00,580 --> 00:00:02,950 >> David J. MALAN: Hayaan ngayon ipatupad ng isang function na ay hindi lamang magkaroon ng isang gilid 3 00:00:02,950 --> 00:00:05,920 epekto, ngunit sa halip ay babalik isang halaga return. 4 00:00:05,920 --> 00:00:09,150 Sa partikular, ipatupad ng isang function hayaan tinatawag na makakuha ng positibong int na ang 5 00:00:09,150 --> 00:00:11,490 layunin sa buhay ay upang gawin eksakto na. 6 00:00:11,490 --> 00:00:14,500 Sa partikular, gusto kong gamitin ang ito function na tulad ng sumusunod - 7 00:00:14,500 --> 00:00:18,770 int nakakakuha N makakuha ng positibong int. 8 00:00:18,770 --> 00:00:23,640 At pagkatapos ay i-print ang f, salamat para sa porsiyento i bilang isang 9 00:00:23,640 --> 00:00:26,490 placeholder, kuwit, pagtatapos. 10 00:00:26,490 --> 00:00:29,030 >> Ngayon siyempre, makakuha ng positibong int Hindi pa umiiral. 11 00:00:29,030 --> 00:00:33,020 Kaya sabihin nangangako ipatupad ito sa pamamagitan ng pagdaragdag sa tuktok ng aking mga file sa isang line 12 00:00:33,020 --> 00:00:37,110 tulad ng int signifying na ito function na ay magbabalik sa int - 13 00:00:37,110 --> 00:00:39,110 makakuha ng positibong int. 14 00:00:39,110 --> 00:00:43,000 At ni tukuyin tahasang ipaalam na ito function na ay hindi gumawa ng anumang input, at 15 00:00:43,000 --> 00:00:45,570 kaya mga argumento nito ay walang bisa. 16 00:00:45,570 --> 00:00:49,500 Sabihin na ngayon sa ibaba ng aking mga file, lamang sa gayon ay maaari kong panatilihin up pangunahing tuktok, 17 00:00:49,500 --> 00:00:52,220 talaga ipatupad o tukuyin ito function. 18 00:00:52,220 --> 00:00:55,120 >> Una simulan namin na may parehong lagda, kaya upang makipag-usap - 19 00:00:55,120 --> 00:00:59,140 int makakuha ng positibong int walang bisa. 20 00:00:59,140 --> 00:01:01,910 At ni ipapatupad makakuha ngayon hayaan positibong int tulad ng sumusunod. 21 00:01:01,910 --> 00:01:05,410 Ipinahahayag ng isang int, na tinatawag din N ngunit Hayaan maaari naming tumawag ito halos kahit ano 22 00:01:05,410 --> 00:01:11,360 nais naming, huwag ang mga sumusunod na habang ang ilan kondisyon ay totoo, at babalik kami sa 23 00:01:11,360 --> 00:01:13,030 na kalagayan sa ilang sandali. 24 00:01:13,030 --> 00:01:20,800 I-print f, mangyaring magbigay sa akin ng isang positibong int, at ng gumamit Kumuha ng int mula ngayon hayaan 25 00:01:20,800 --> 00:01:23,290 ang CS50 library upang aktwal na kumuha na int. 26 00:01:23,290 --> 00:01:28,210 >> Ngunit sa aking kalagayan, na gawin ito ipaalam loop hangga't N ay mas mababa sa 1. 27 00:01:28,210 --> 00:01:31,260 Sa madaling salita, hangga't ang user ay hindi makikipagtulungan sa pamamagitan ng pagbibigay sa akin 28 00:01:31,260 --> 00:01:36,260 may isang positibong int, sabihin-prompt muli sa akin sa kanya o muli sa kanya, at muli, at muli 29 00:01:36,260 --> 00:01:37,720 hanggang siya ay gumagana. 30 00:01:37,720 --> 00:01:40,360 Ngunit ako hindi pa tapos, dahil sa dulo ng function na kailangan kong 31 00:01:40,360 --> 00:01:42,210 talagang gawin ang isang bagay na may input na. 32 00:01:42,210 --> 00:01:46,710 At kaya pupuntahan ko pumunta tungkol sa pagbabalik ito na may isang linya tulad ng pagbalik ng pagtatapos 33 00:01:46,710 --> 00:01:52,850 tuldok-kuwit, at sa gayon ay bumabalik na isang aktwal na int sa main na tinatawag na ito function. 34 00:01:52,850 --> 00:01:56,810 Ngayon ay nagkakahalaga ng noting na kahit na makakuha ng positibong int babalik sa int, ito ay 35 00:01:56,810 --> 00:02:00,470 tiyak masarap para dito upang bumalik partikular na ang positibong int. 36 00:02:00,470 --> 00:02:04,170 May ay hindi isang espesyal na uri ng data para sa positibong integer partikular, kaya kami 37 00:02:04,170 --> 00:02:06,490 gamitin lamang ang built in na "int." 38 00:02:06,490 --> 00:02:11,250 >> Ngayon bumalik sa siyam na linya, mapapansin na ako nagpi-print out N. Subalit ang N sa linyang ito 39 00:02:11,250 --> 00:02:13,970 Nabibilang sa N na ipinahayag sa walong linya. 40 00:02:13,970 --> 00:02:17,840 Kaya ito ay lumiliko out maaari mong ganap na magkaroon variable identically pinangalanang kaya 41 00:02:17,840 --> 00:02:20,250 Hangga't umiiral ang mga ito sa loob ng iba't ibang mga saklaw. 42 00:02:20,250 --> 00:02:24,950 At isipin na ang saklaw ay tinutukoy ng ang kulot tirante na pinakamalapit na 43 00:02:24,950 --> 00:02:27,620 palibutan ang variable na tinukoy mo. 44 00:02:27,620 --> 00:02:30,370 >> Ngayon compile ipaalam at patakbuhin ang program na ito. 45 00:02:30,370 --> 00:02:35,210 Gumawa ng mga pag-andar 1, tuldok iwa function 1. 46 00:02:35,210 --> 00:02:40,040 Magbigay ng ito sa isang positibong int-tulad ng 50 Hayaan, at sinasabi nito salamat para sa 50. 47 00:02:40,040 --> 00:02:43,180 Samantala, kung hindi kami makikipagtulungan, muling tumakbo ang programa, na nagbibigay ito 48 00:02:43,180 --> 00:02:47,550 0, muli ako nai-prompt, o pagbibigay ito negatibong 1, ako sinenyasan muli. 49 00:02:47,550 --> 00:02:51,720 Ngunit kung ako makikipagtulungan pagbibigay ito sa, sinasabi, 50, ako thanked para sa 50. 50 00:02:51,720 --> 00:02:54,590