Повседневная жизнь каждого человека заключается в решаването на огромен брой задачи с различна сложност на работното място или по време на ученето. Някои задачи са толкова прости, че когато бъдат изпълнени правим определени действия автоматично, без дори да мислим. Решаването на всеки проблем, дори най-простият, обикновено се извършва последователно на няколко стъпки. Този вид последователност при решаването на проблеми се нарича алгоритъм. Днес ще разгледаме какви са линейните алгоритми, как се представя тяхната структура, как се осъществява тяхното решение и програмиране.
Тази концепция е точна рецепта на изпълнителя да изпълни определена последователност от действия, която е насочена към решаването на задачата.
Този език е средство за описване на алгоритми, които обикновено са ориентирани към потребителя.
Говорейки на компютърен език, и дветее посочена точната рецепта, определяща изчислителния процес. Това, от своя страна, води до първоначалния резултат, който варира в зависимост от първоначалния резултат.
Разработването на алгоритъма е доста сложен и отнема време. Това е техника за компилиране (разработване) на последователност от действия, предназначени за решаване на проблеми с помощта на компютър.
Сред имотите са:
Вече разгледахме определенията и свойствата на тази концепция. Сега нека да говорим за нейните видове:
Интересуваме се от линейни алгоритми. Какви са те? Те съдържат команди, които трябва да бъдат изпълнени една след друга в ясна последователност.
Линейната структура на алгоритъма може да бъде написана в словесна и графична форма.
Ето един пример, написан на устна форма. Така че, задачата: посетете училище. решение:
Графичната форма на горния процес ще се представи, както следва:
Блоковата схема е илюстративнаизображение на алгоритъм, в който всеки отделен етап се представя от блокове, представени под формата на различни геометрични фигури. В допълнение, връзката между етапите (с други думи, последователността на поетапно изпълнение) се обозначава със стрелките, които свързват фигурите (блокове). Всеки блок е придружен от надпис. За типични действия в линеен алгоритъм се използват следните геометрични форми:
Тук с помощта на такива диаграми е изобразено решението на линейни алгоритми. На следващо място, нека поговорим за характеристиките на присвояване на стойности.
Основни елементарни действия при изчисляванетоалгоритъм е присвояване на променлива на стойност на определена стойност. В случай, че стойността на константа се определя от типа на нейния запис, променливата ще получи конкретна стойност единствено в резултат на присвояване. Това може да стане чрез два метода: използване на командата за присвояване; използвайки командата за въвеждане.
Нека дадем пример с описанието на правилата за разделяне на обикновени дроби с помощта на линеен алгоритъм, който в учебниците в училище има следното съдържание:
a / b: c / d = (a * d) / (b * d) = m / n.
Така че, ние ще изградим компютър за алгоритъма за разделяне на дроби.За да не се объркваме, ще използваме същата нотация за променливите, както във формулата, спомената по-горе. a, b, c, d - първоначални данни под формата на цели променливи. Резултатът също ще бъде цели числа. Решението на алгоритмичния език ще бъде следното:
SAL Разделяне на фракции
рано
е цяло a, b, c, d, m, n
вход a, b, c, d
m: = a * d
n: = b * s
изход m, n
игра
Диаграмата на описания по-горе линеен алгоритъм изглежда така:
Командата за присвояване на стойност има следния формат:
Променлива: = израз.
Знакът „: =“ се чете като присвояване.
Assignment е команда, която е необходима на компютъра да извърши следните действия:
Горният алгоритъм съдържа две команди като задача. В блок-схемата командата за присвояване трябва да бъде написана в правоъгълник, наречен изчислителна единица.
Когато се описват линейни алгоритми, няма конкретеннеобходимостта от задължително спазване на строги правила при писане на изрази. Можете да ги напишете, като използвате обичайната математическа форма. В крайна сметка това не е строгият синтаксис на език за програмиране.
В дадения пример на алгоритъма има и команда за въвеждане:
Въведете a, b, c, d.
Вписва се командата за въвеждане в блок-схематапаралелограм, тоест във входно-изходния блок. Изпълнявайки тази команда, процесорът спира да работи, докато потребителят не извърши определени действия. А именно: потребителят трябва да напише входните променливи (техните стойности) на устройството за въвеждане (клавиатура) и да натисне Enter, което е клавиша за въвеждане. Важно е стойностите да се въвеждат в същия ред като съответните променливи в списъка за въвеждане.
Както бе споменато в началото на статията, линейните програми могат да включват следните оператори:
Тоест, с помощта на горните оператори се програмират линейни алгоритми.
И така, операторът за присвояване на език за програмиране се пише така:
LET A = B, където A е променлива, B е израз. Например, A = Y + 20.
Входният оператор е както следва:
INPUT, например: INPUT C
Операторът за извеждане на данни, стойности, се записва в следната форма:
Печат. Например, PRINT C.
Даваме прост пример. Трябва да напишем програма, която ще намери сумата от числата A и B, въведени от клавиатурата
На език за програмиране получаваме програма, чийто текст е показан по-долу.
Pascal не подчертава специални оператори,обозначаващи входни или изходни операции, които използват линейни алгоритми. В програмите информацията се обменя с помощта на вградени процедури. Тъй като не е необходимо предварително описание на стандартната процедура, тя е достъпна за всяка програма, съдържаща повикване към нея. Също така, името на споменатата процедура не е запазена дума.
При въвеждане на данни такива оператори се използват за препратка към стандартната процедура за въвеждане на данни, която вече е вградена в програмата.
Прочетете (A, B, C), където A, B, C са променливите, които трябва да бъдат въведени в RAM за запаметяване.
Readlnn (x1, y, x2) - когато приключи, курсорът отива в началото на нов ред.
Readlnn; - показва изчакване за натискане на "Enter". Обикновено това изявление се вмъква в текста преди последния „Край“, за да се запазят резултатите от програмата на екрана със съдържание.
Изходът към екрана на монитора на данни се извършва чрез следните оператори:
Write (A, B, C) - като посочвате стойностите на A, B, C в един ред, курсорът не напуска текущия ред.
Writeln (z, y, z2) - като приключи извеждането на стойности, курсорът в тази позиция ще се премести в нов ред.
writeln; - показва пропускане на една линия и преминаване към началото на нов.
Именно с помощта на такива прости оператори данните се въвеждат и извеждат в Pascal.