Информатика, Лого, Първи програми

дървен статив от Hudozhnik.club

Глава 3 Първи програми

В тази глава ще научите:

  • как да напиша и стартирам програма на Logo;
  • какво е "спомагателен алгоритъм" и "процедура";
  • как да превърнете една сложна задача в няколко прости и защо е необходимо това.

Вече знаете няколко основни графични команди за костенурка и можете да създавате машинни чертежи. Но всеки път, за да нарисувате картина (и дори просто да я коригирате), трябва да въведете отново всички команди. Защо не комбинирате цялата последователност от команди? На езика на логото това се прави много лесно. Необходимо е на специален лист - лист с програми (за да преминете към него и обратно в LogoWorlds, използвайте картинката "това" -- ) да напишете всички тези команди, като поставите пред тях

„Име“ в този случай е името на нашата програма. По принцип 13 имена могат да бъдат съставени от букви, цифри и долна черта (_). Забележка: Логото, за разлика от повечето езици за програмиране, позволява използването на български букви в имената. Но в същото време той смята главните и малките български букви за различни ("ЛИЦЕ" и "лице" ще се считат за една и съща дума, но "лице" и "чаша" са различни). Обикновено се опитвайте да използвате смислени (смислени) имена.

това е квадрат на ch 50 inc 90 ch 50 inc 90 ch 50 inc 90 ch 50 v end

Сега костенурката знае още една команда. Веднага щом напишем думата "квадрат" в командното поле ("не е нужно да пишете това!") - и костенурката ще начертае квадрат със страна 50 стъпки. Възможно ли е да използваме нашата нова команда в програмите? Разбира се можете да. Например:

това е four_square square square square square end

(И какъв вид снимка ще бъде резултатът?)

Както можете да видите, тук алгоритъмът за изграждане на целия чертеж се състои от няколко части (в този случай те са еднакви, но това изобщо не е необходимо), всяка от които се изпълнява в съответствие с различен, предварително известен алгоритъм. Такъв алгоритъм, който изпълнява някаква относително завършена част от основната задача, се нарича спомагателен алгоритъм, а съответната "спомагателна програма" се нарича процедура (или подпрограма). Всъщност няма фундаментални разлики между основната програма и спомагателните процедури. Следователно в много езици за програмиране основната програма е проектирана по същия или почти същия начин като процедурата 14 .

Кога се прилагат процедурите? Първо, ако един и същ алгоритъм се използва няколко пъти в процеса на решаване на проблема. Това е съвсем очевидно: защо да пишете едно и също нещо десет пъти.

това решение data_input calculation_1 calculation_2 output end

Все още не знаем как ще бъдат извършени тези стъпки, но знаем, че са необходими; няма въпроси и с тяхната последователност. Освен това всеки от етапите се разделя на по-малки, а след това, ако е необходимо, на повече. Така че продължаваме, докато подзадачите станат толкова малки, че всяка от тях може да бъде изпълнена с малка, проста и разбираема процедура. Този начин на разработване на софтуер се нарича дизайн отгоре надолу 15 .

Какво дава той? Първо, решаването на 10 прости задачи обикновено отнема много по-малко време от една, която е 10 пъти по-трудна. Второ, много по-лесно е да разберете действието на процедурата и да откриете възможна грешка, ако тази процедура е кратка. Трето, когато трябва да се промени нещо в програмата, не всичко ще трябва да се преработи, а само някои от процедурите.И накрая, този метод улеснява разпределянето на работата между няколко програмисти: когато разработвате процедура, абсолютно не е важно какво се съдържа в другите.

Има още едно предимство, което ни дава използването на спомагателни алгоритми. Често, след като напишете процедура, можете да я използвате в различни програми. Това също улеснява и ускорява тяхното развитие, намалява вероятността от грешки.