1 00:00:00,000 --> 00:00:09,250 2 00:00:09,250 --> 00:00:11,070 >> ZAMYLA CHAN: скок Нека в Mario. 3 00:00:11,070 --> 00:00:14,850 Марио е програма, която ще направи нашата собствено, макар и примитивно, версия на 4 00:00:14,850 --> 00:00:17,760 класически Super Mario Brothers игра фон. 5 00:00:17,760 --> 00:00:21,100 За този проблем в стаята, отиваме да пресъздаде наполовина пирамида за 6 00:00:21,100 --> 00:00:23,000 Mario да скочи върху. 7 00:00:23,000 --> 00:00:27,330 Нашата програма ще бъде интерактивен, така че ще поиска от потребителя да въведе определен 8 00:00:27,330 --> 00:00:28,660 височина на пирамидата. 9 00:00:28,660 --> 00:00:32,920 И програмата ще отпечата полу-пирамида на тази височина, където 10 00:00:32,920 --> 00:00:37,390 долния ляв хеш изравни с дъното ляв ъгъл на терминал 11 00:00:37,390 --> 00:00:39,710 изход прозорец. 12 00:00:39,710 --> 00:00:44,870 >> Нека да прекъсне този проблем на две части, един, се приноса на потребителите, и две, 13 00:00:44,870 --> 00:00:47,040 отпечатване на пирамидата. 14 00:00:47,040 --> 00:00:51,150 Не забравяйте, че въпреки че GetInt функция ще изтегли цяло число, вие 15 00:00:51,150 --> 00:00:56,260 трябва да се уверите, че този вход прави чувство за вашата програма, така че в 16 00:00:56,260 --> 00:00:59,690 Mario, той няма да направи само Продуктът е цяло число. 17 00:00:59,690 --> 00:01:03,440 Вие ще трябва да се уверите, че потребителят входове цяло число, че е в рамките на 18 00:01:03,440 --> 00:01:06,985 долните и горните граници на пирамида че можете да печатате. 19 00:01:06,985 --> 00:01:12,300 На тази спекулация, това е 0 и 23 включително. 20 00:01:12,300 --> 00:01:16,410 Ако потребителят входа цяло число чужбина от нашите приетите граници, а след това ние искаме 21 00:01:16,410 --> 00:01:20,840 да ги подкани отново и отново, докато те ни дават валиден число. 22 00:01:20,840 --> 00:01:25,990 >> Един от начините да се гарантира правилното въвеждане на текст е с помощта на направи Докато контур, който е 23 00:01:25,990 --> 00:01:28,100 много подобен на линия, докато. 24 00:01:28,100 --> 00:01:32,580 В направи линия, докато изпълнява код вътре в тялото веднъж и след това се проверява 25 00:01:32,580 --> 00:01:35,270 дали условието е изпълнено или не. 26 00:01:35,270 --> 00:01:38,830 Това е полезно за получаване на потребителски вход защото вие знаете, че имате нужда 27 00:01:38,830 --> 00:01:41,805 да ги подтикне най-малко веднъж. 28 00:01:41,805 --> 00:01:45,940 Ако условието не е изпълнено, програмата ще изпълни линия след 29 00:01:45,940 --> 00:01:47,270 Докато не се прави цикъл. 30 00:01:47,270 --> 00:01:50,950 Ако условието е изпълнено, обаче, на цикъл ще се повтаря. 31 00:01:50,950 --> 00:01:55,560 >> A Do-линия, докато за валидиране потребителя вход ще изглежда по следния начин. 32 00:01:55,560 --> 00:02:02,920 Декларирам, променлива N, GetInt, и повторете до п е валиден. 33 00:02:02,920 --> 00:02:06,270 Не забравяйте, че когато заявите променлива, тя се нуждае от подходящо 34 00:02:06,270 --> 00:02:08,449 поле, точно както в самото начало. 35 00:02:08,449 --> 00:02:12,510 Ако Декларирам, п вътре ми Do-линия, докато, останалата част от програмата няма да бъде 36 00:02:12,510 --> 00:02:13,750 имате достъп до нея. 37 00:02:13,750 --> 00:02:16,100 Той е ограничен до границите от фигурни скоби. 38 00:02:16,100 --> 00:02:19,010 39 00:02:19,010 --> 00:02:23,090 >> Добре, така че сега, че сме валидирани на потребителя вход, ние всъщност трябва да 40 00:02:23,090 --> 00:02:25,020 изготвя тази полу-пирамида. 41 00:02:25,020 --> 00:02:29,700 Тя е съставена от печатни букви, така че нека да се направи половин пирамида по прост 42 00:02:29,700 --> 00:02:31,480 текстов редактор. 43 00:02:31,480 --> 00:02:35,920 Ако ние искаме да направим един стил Mario пирамида на височина три, който е подравнен 44 00:02:35,920 --> 00:02:41,370 от лявата страна на нашия прозорец, след това щяхме да въведете две хешове, кликнете Въведете, 45 00:02:41,370 --> 00:02:47,180 след това въведете три хешове, кликнете Въведете и след това въведете четири. 46 00:02:47,180 --> 00:02:51,090 >> Но в този проблем набор, ни половин пирамидата трябва да се подравнени вдясно. 47 00:02:51,090 --> 00:02:55,550 С помощта на стандартна клавиатура, как може да модифицирате този файл да се движат хешове 48 00:02:55,550 --> 00:02:57,210 към дясната страна? 49 00:02:57,210 --> 00:03:03,190 I може да използвате, за да подчертава, два на горния ред и един на секунда. 50 00:03:03,190 --> 00:03:07,690 Това не изглежда толкова хубаво, въпреки че, така нека да замени подчертава с 51 00:03:07,690 --> 00:03:12,450 пространства, и там имаме половин пирамида на височина три. 52 00:03:12,450 --> 00:03:16,330 >> Опитайте и запомнете, че тази текстов редактор Например, когато започнем да мислим обратно 53 00:03:16,330 --> 00:03:20,100 C. Да се ​​опитам да разбера някои вид на модел, който можем да 54 00:03:20,100 --> 00:03:22,750 поставени в една линия конструкция. 55 00:03:22,750 --> 00:03:27,570 Вземете височина например, да речем осем, и да видим дали можете да започнете да 56 00:03:27,570 --> 00:03:29,470 излезе с модел. 57 00:03:29,470 --> 00:03:34,710 Първият ред ще има седем места последвано от две хешове. 58 00:03:34,710 --> 00:03:40,090 Вторият ред ще има шест места и три хешове, и така нататък, докато 59 00:03:40,090 --> 00:03:41,440 осми ред. 60 00:03:41,440 --> 00:03:45,210 >> Но как да би представлявало -тия ред? 61 00:03:45,210 --> 00:03:48,170 Не забравяйте, че Конвенцията програмиране е нула индексира. 62 00:03:48,170 --> 00:03:51,870 Това означава, че започва да отброява в нула, така че първият ред е технически 63 00:03:51,870 --> 00:03:57,110 нула номера на реда с две люкове, ред номер едно има три хешове, редови 64 00:03:57,110 --> 00:04:01,860 номер две е четири хешове, така че след този модел за всеки ред 65 00:04:01,860 --> 00:04:05,800 номер N, има п плюс 2 хешове. 66 00:04:05,800 --> 00:04:09,270 Ще го оставя на теб, все пак, да се намери от схемата за пространствата. 67 00:04:09,270 --> 00:04:12,240 Не забравяйте, че вашият модел ще бъде малко по-различно, ако решите да 68 00:04:12,240 --> 00:04:16,649 започне да ви изгонят от една и не е нула. 69 00:04:16,649 --> 00:04:19,560 >> Сега, имате модел за всяко абстрактно п ред. 70 00:04:19,560 --> 00:04:25,190 Знаеш ли колко много места, за да отпечатате и колко хешове, така че за всеки ред, че 71 00:04:25,190 --> 00:04:26,270 броят ще се промени. 72 00:04:26,270 --> 00:04:30,700 Но същият процес на отпечатване на един символ, или интервал или 73 00:04:30,700 --> 00:04:33,200 хеш, се повтаря. 74 00:04:33,200 --> 00:04:37,470 Така че всичко, което трябва да направите, е многократно отпечатате този характер, за колкото се може повече пъти 75 00:04:37,470 --> 00:04:40,120 като вашия модел определя. 76 00:04:40,120 --> 00:04:42,522 >> И как ще се повтаря процеси? 77 00:04:42,522 --> 00:04:45,160 В самото начало, ние използвахме повторение блок. 78 00:04:45,160 --> 00:04:48,580 В C, ще използваме за линия. 79 00:04:48,580 --> 00:04:51,290 Нека да разгледаме синтаксиса за За вериги. 80 00:04:51,290 --> 00:04:57,140 >> Всеки за линия се състои от три части, инициализация, състояние, 81 00:04:57,140 --> 00:04:58,592 и актуализация. 82 00:04:58,592 --> 00:05:01,550 Вие за линия ще се инициализира променлива, когато за първи 83 00:05:01,550 --> 00:05:02,960 въвежда за линия. 84 00:05:02,960 --> 00:05:07,100 Ако условието е изпълнено, тялото на цикъла ще се изпълни. 85 00:05:07,100 --> 00:05:10,070 След това, актуализацията ще се изпълни. 86 00:05:10,070 --> 00:05:13,630 >> Ако състоянието е все още изпълнени, линия ще изпълни и актуализират и 87 00:05:13,630 --> 00:05:18,580 повтаря, докато състоянието Ви Проверява. 88 00:05:18,580 --> 00:05:21,450 Ти си състояние, трябва в крайна сметка остойностяване с неверни, все пак, тъй 89 00:05:21,450 --> 00:05:24,490 за разлика от Scratch, ние не някакви Forever цикли. 90 00:05:24,490 --> 00:05:28,270 Вашата програма трябва да приключи в края на краищата. 91 00:05:28,270 --> 00:05:32,330 >> Ето един пример за за линия, че може да искате да използвате за Марио. 92 00:05:32,330 --> 00:05:36,790 The инициализация декларира цяло число, аз със стойност 0. 93 00:05:36,790 --> 00:05:40,750 Стига да е по-малко от височината, тялото на цикъла ще се изпълни и 94 00:05:40,750 --> 00:05:44,980 увеличи и с един и повторете докато не е по-голяма или 95 00:05:44,980 --> 00:05:47,220 равна на височината. 96 00:05:47,220 --> 00:05:49,140 >> Сега ми за линия е нула индекс. 97 00:05:49,140 --> 00:05:52,270 The Int I започва от нула, а не един. 98 00:05:52,270 --> 00:05:55,320 Ако аз избрах един, след това състоянието ми ще Също така трябва да бъде различен за 99 00:05:55,320 --> 00:05:58,740 на линия за изпълнение на същия брой пъти. 100 00:05:58,740 --> 00:06:03,490 Запомнете това внимателно, когато сте избора на инициализация и си 101 00:06:03,490 --> 00:06:08,660 състояние, и се консултира този диаграма, за да двойна проверка. 102 00:06:08,660 --> 00:06:13,430 >> Един от големите неща за компютъра науката е, че има толкова много 103 00:06:13,430 --> 00:06:15,490 начина за изпълнение на нещата. 104 00:06:15,490 --> 00:06:19,450 Можете да изберете дали започват от нула или едно. 105 00:06:19,450 --> 00:06:22,380 Ако не искате да използвате за линия, можете да използвате една линия Макар да 106 00:06:22,380 --> 00:06:26,530 повторете отчети, стига да запази същността на за линия, 107 00:06:26,530 --> 00:06:31,430 инициализация, състояние и актуализация. 108 00:06:31,430 --> 00:06:36,890 След като разбера, че за линия ние сме най-комфортно, тогава ние 109 00:06:36,890 --> 00:06:38,450 може да завърши Марио. 110 00:06:38,450 --> 00:06:41,540 >> Ние първо проверяват за приноса на потребителите и след това се идентифицира 111 00:06:41,540 --> 00:06:43,580 модел за всеки ред п. 112 00:06:43,580 --> 00:06:49,990 Така за всеки ред от нула до п минус 1 ще отпечата съответния брой 113 00:06:49,990 --> 00:06:55,340 Само, тогава съответният брой хешове според нашия модел и 114 00:06:55,340 --> 00:06:57,180 След това на нов ред. 115 00:06:57,180 --> 00:06:59,640 С това, имате пирамида. 116 00:06:59,640 --> 00:07:02,630 Моето име е Zamyla, и това е Марио. 117 00:07:02,630 --> 00:07:11,765