1 00:00:00,000 --> 00:00:09,250 2 00:00:09,250 --> 00:00:11,070 >> ZAMYLA CHAN: скок Ајде во Марио. 3 00:00:11,070 --> 00:00:14,850 Марио е програма каде што ќе ја направиме нашата свој, макар примитивен, верзија на 4 00:00:14,850 --> 00:00:17,760 класичен Супер Марио браќата игра позадина. 5 00:00:17,760 --> 00:00:21,100 За овој проблем во собата, ние ќе да се рекреираат на половина пирамида за 6 00:00:21,100 --> 00:00:23,000 Марио да скокаат на. 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 Марио, тоа нема да го стори само производ за цел број. 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 На Do-Додека јамка извршува кодот во внатрешноста на телото еднаш, а потоа проверува 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 Вашиот Do-Додека јамка. 30 00:01:47,270 --> 00:01:50,950 Ако услов е исполнет, иако, јамка ќе се повторува. 31 00:01:50,950 --> 00:01:55,560 >> На не-Додека јамка за потврдување корисник влез ќе изгледа нешто како ова. 32 00:01:55,560 --> 00:02:02,920 Јас декларирате променлива n, GetInt, и повторете до n е валидна. 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 Ако Изјавувам n внатрешноста на мојата 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 Ако сакаме да се направи стил Марио пирамида на висина од три и тоа е подреден во средина 44 00:02:35,920 --> 00:02:41,370 на левата страна од нашите прозорецот, а потоа ние би внеси две хашови, кликнете Enter, 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 Јас би можеле да ги користите за да подвлекува, два на горниот ред и една на вториот. 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 В Ајде да се обидеме и да дознаам некои вид на шема дека можеме да 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, постојат 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 >> Сега, имате шема за било апстрактни ред n. 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 повторува се додека вашата состојба евалуира на true. 88 00:05:18,580 --> 00:05:21,450 Ти си состојба на крајот мора да valuate на false, иако, бидејќи 89 00:05:21,450 --> 00:05:24,490 за разлика од нула, ние не имате било какви Засекогаш петелки. 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 Иницијализација изјавува целобројна јас, со вредност 0. 93 00:05:36,790 --> 00:05:40,750 Додека i е помала висина, телото на циклусот ќе се изврши и 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 На 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 образец за било ред n. 112 00:06:43,580 --> 00:06:49,990 Значи за секој ред од нула до n минус 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