1 00:00:00,000 --> 00:00:00,580 2 00:00:00,580 --> 00:00:02,950 >> Дејвид Џ MALAN: Ајде сега да се спроведе функција која не само што мора страна 3 00:00:02,950 --> 00:00:05,920 ефект, но наместо тоа, се враќа враќање вредност. 4 00:00:05,920 --> 00:00:09,150 Поточно, да се спроведе некоја функција наречен добие позитивен цел број чии 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 добива добие позитивен цел број. 8 00:00:18,770 --> 00:00:23,640 А потоа печати ѓ, благодарение за проценти i како 9 00:00:23,640 --> 00:00:26,490 случаеви, запирка, крај. 10 00:00:26,490 --> 00:00:29,030 >> Сега се разбира, се позитивни int уште не постои. 11 00:00:29,030 --> 00:00:33,020 Па ајде и ветуваме да се имплементира од страна на додавање на врвот на мојата датотека линија 12 00:00:33,020 --> 00:00:37,110 како int означува дека оваа функција ќе се врати во int - 13 00:00:37,110 --> 00:00:39,110 добие позитивен цел број. 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 int добие позитивен int неважечки. 20 00:00:59,140 --> 00:01:01,910 И сега нека се спроведе добие позитивни int како што следи. 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 од 25 00:01:20,800 --> 00:01:23,290 на CS50 библиотека всушност се добие дека Инт. 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 Сега тоа е вреди да се напомене дека иако добие позитивен int враќа во int, тоа е 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 во оваа линија 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 Ајде да се даде позитивен цел број како 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