Какво е блокова схема на това как да се напише един прост алгоритъм

Как да пишем цяло блок

Училищата са склонни да учат старт на Паскал с най-простите задачи по изготвянето на различни алгоритми или графиките, че много често игнорират, като се има предвид безполезна глупост. И има защо. Аз, подобно на всяко друго лице, малко акъл в програмирането (няма значение къде - в Pascal, C, Delphi), мога да ви уверя - възможност за бързо и правилно прилагане на схемата е основата, базата за програмиране.







Схема - графично представяне на алгоритъма. Тя се състои от функционални блокове, които изпълняват различни дестинация (I / O, начало / край извикване на функция и т.н.).

Има няколко основни типа блокове, което не е трудно да си спомня:

Как да пишем цяло блок

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

Задача №1: "Изчислете разстоянието и периметъра на правоъгълник от две познати лица".

Тази задача не би трябвало да представлява особени трудности, тъй като е построен на добре познатите ни всичките формули за изчисляване на площта и периметъра на правоъгълник, така че да зависи получаването на тези формули ние няма.

Ние създаваме алгоритъм за решаване на тези проблеми:

1) Прочетете задача.
2) Запишете известни и неизвестни променливи в нас "Като се има предвид." (В задача №1 известни променливи включват страна: а, Ь, с неизвестен - S P площ и периметър)
3) Не забравяйте, или да създадете необходимите формули. (Трябва: S = а * б; P = 2 * (А + В))
4) Създаване на блок-схема.
5) Запишете решението за езика за програмиране Pascal.

Пишем състоянието, в по-сбит вид.

Решение на проблема №1

Програма Структура решаването на този проблем, също е проста:

  • 1) Описание на променливи;
  • 2) въвеждане стойности страни на правоъгълника;
  • 3) се изчислява площта на правоъгълник;
  • 4) Изчисляване на периметъра на правоъгълник;
  • 5) Изходни стойности на площ и периметър;
  • 6) Край.

И тук е решението:

Проблем №2: първа скорост на превозното средство - V1 км / ч, а вторият - V2 km / h, разстояние между S км. Какво е разстоянието между тях се осъществява посредством Т часа, ако колите се движат в противоположни посоки? Стойностите V1, V2, Т и У са определени от клавиатурата.







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

Като се има предвид от: V1, V2, S, T
Да се ​​намери: S1

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

Използваната формула за решаване на проблема ни, е както следва:

Следващата точка на алгоритъма - на блок-схемата:

Как да пишем цяло блок
№2 Solution.

Но решението, написани на Паскал:

Може да изглежда, че тези две програми са верни, но това не е така. В крайна сметка, страната на триъгълник може да бъде 4.5 вместо 4, както и скоростта на машината не е задължително да е точно число! А Цяло число - това е само числа. Ето защо, когато се опитате да пишете на втора Програма други числа Аз получите съобщение за грешка:

Как да пишем цяло блок
Имайте предвид, че в Паскал, както във всеки друг език за програмиране, десетична запетая е въведен вместо запетая!

За да се реши този проблем, което трябва да се помни какъв тип в Паскал е отговорен за непушачи числа. В този урок разгледахме основните типове. Така че това е истински вид - Реал. Ето как изглежда коригираната програма:

Как да пишем цяло блок

>> скоростта на машината не е задължително да е точно число!

Не съществува такова нещо като "Кръг номер".

И двете си блок-схеми не отговарят на държавните стандарти (като предаване на курсов проект няма да работи). Стандарт определя началната и крайната блокове, като "Правоъгълник със заоблени ръбове" и не "Заоблени ъгли".

>> способността за правилно и бързо да се направи схемата е основата, базата за програмиране.

Повечето програмисти не мислят така. Също така, опитайте се да се обърнете към програмисти "Когато те са били за последен път блокова схема?" - Оказва се, че в гимназията (когато с тях по някаква причина, лишен ГОСТ знания).

>> тъй като рисуване графики са не само много прости и бързи, но и много забавно.

Много сложна, дълга и безполезни. За нещо подобно голяма програма (в хиляди линии поне толкова Kursakov) блок-схеми, ще бъдат огромни и ще са десетки. И какво да правим, ако те вече не отговарят на това? - че дори и в първата си задача, ще трябва да се покаже отметка, че потребителят не влиза страничен отрицателна стойност, какво да правя? - код на грешки ще се 1 минута и фиксират блок-схеми на 10 минути, а след това, защо го направи?

Схемата за блок на програмата може да не е необходимо. Това е тона хартия и много време. И да, те са остарели и актуализират своите трудоемко.
Но по време на обсъждането на нови възможности за решаване на проблема с други програмисти удобни за работа единици с изкривени боядисани ръбове и наклонени линии. Скицирано на хартия или картон и ясно.
На практика съм виждал снимки на дъската с графиките, прикрепени към задачите в Jira.
Не е в съответствие с ГОСТ 🙂

Благодаря ти, сега аз се напише програма, която прави за блок схема код, както и обратното