Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АиП лекции часть 1.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.63 Mб
Скачать

А лгоритм поиска нод Псевдоязык

Псевдоязык (псевдокод) – промежуточное место между естественным и формальными языками.

  • Формальные конструкции

  • Математическая символика

  • Нет строгих синтаксических норм

  • Единого определения псевдокода не существует

Алгоритм поиска НОД на псевдоязыке:

Программа поиск_НОД

переменные

a,b,x,y,r: целый;

начало

ввод(a,b);

повторять

если a>=b то начало

x:=a;

y:=b;

конец

иначе начало

x:=b;

y:=a;

конец;

r:=x-y;

a:=y;

b:=r;

до r=0;

вывод(y);

конец.

Разновидности структур алгоритмов

Теорема Бёма-Якопини:

Любой исполняемый алгоритм может быть преобразован к структурированному виду, т.е. такому виду, когда ход его выполнения определяется при помощи трёх упрощенных структур:

  • следований

  • ветвлений

  • повторов, циклов

Линейные структуры алгоритмов

Л инейные структуры алгоритмов используют структуру следования один за одним однократно.

действие 1;

действие 2;

действие n;

Пример 1. Пусть требуется вычислить высоту снаряда для момента времени t.

Ввод:(Voy,t,g);

y:=Voy*t;

z:=g*t*t/2;

y:=y-z;

вывод:(у);

ЛЕКЦИЯ №5

Разветвляющиеся структуры алгоритмов

Алгоритмическая структура, которая позволяет выбрать сценарий последующих действий в зависимости от истинности/ложности утверждения называется ветвлением. Существует два типа ветвлений:

  • альтернативное (две ветви) (если, то, иначе);

  • множественные (n ветвей);

Альтернативное ветвление

если условие С то

действие А

иначе действие В

если условие С то действие А

Множественное ветвление

Выбор

условие 1: действие 1;

условие 2: действие 2;

условие n: действие n;

конец.

Пример 1.

ввод(х);

если x>0 то

y:=1+cos(x)

иначе

y:=1-sin(x);

вывод(у);

Пример 2.

Алгоритм 1.

ввод(a,b,c);

d:=b^2-4*a*c;

x1:=(-b+ )/(2*a);

x2:=(-b- )/(2*a);

вывод(x1,x2);

Алгоритм 2.

Только для поиска вещественных корней

  1. если a,b,c=0, то х – любое.

  2. если a,b=0, а с 0, то корней нет

  3. если a=0 b 0, то x=-c/b

  4. если а 0, d 0, то уравнение имеет два вещественных корня.

  5. если а 0, d 0, то уравнение не имеет корней.

в вод (а,b,c);

если а=0 то

если b=0 то

если с=0 вывод(‘х - любое’)

иначе вывод(‘решений нет’);

иначе начало

x=-c/b;

вывод(х);

конец

иначе начало

d=…;

если d<0 то вывод (‘Действительных корней нет’);

иначе начало

x1=…;

x2=…;

вывод(x1,x2);

конец;

конец.

В случае неполных ложных альтернатив слово «иначе» всегда относится к ближайшему вышестоящему «если».

Пример 3. В зависимости от переменной вывести день недели.

выбор

x=1: вывод(‘Понедельник’);

x=2: вывод(‘Вторник’);

x=7: вывод(‘Воскресенье’);