Практическая работа №1. Алгоритмический язык. Псевдокод. Блок-схемы. Линейные алгоритмы. Алгоритмический язык


Download 1.16 Mb.
bet2/2
Sana21.04.2023
Hajmi1.16 Mb.
#1369593
TuriПрактическая работа
1   2
Bog'liq
Практика 1

при

цел (целый)

все

выбор

вещ (вещественный)

пока

ввод

сим (символьный)

для

вывод

лог (логический)

от

утв

таб (таблица)

до

нц (начало цикла)

знач

кц (конец цикла)

и

Общий вид алгоритма:

алг название алгоритма (арг, рез)

дано условия применимости алгоритма

надо цель выполнения алгоритма

нач описание промежуточных величин

последовательность команд (тело алгоритма)

кон

Заголовок - часть алгоритма от слова алг до слова нач.

  • Заголовок - часть алгоритма от слова алг до слова нач.
  • Тело алгоритма - часть, заключенная между словами нач и кон.
  • В заголовке после названия алгоритма в круглых скобках указываются характеристики (арг, рез) и тип значения (цел, вещ, сим, лит или лог) всех входных (аргументы) и выходных (результаты) переменных.
  • При описании массивов (таблиц) используется служебное слово таб, дополненное граничными парами по каждому индексу элементов массива.

Пример вычисления площади трапеции по введенным значениям оснований (a и b) и высоты (h)

алг Трапеция (арг вещ a,b,h, S, рез вещ S)

нач

ввод а,b,h

S :=((a+b)/2)*h

вывод S

кон

Основные понятия в алгоритмическом языке

Имена (идентификаторы) — употpебляются для обозначения

объектов пpогpаммы (пеpеменных, массивов,

функций и дp.).


МОЖНО использовать
    • латинские буквы (A-Z), русские буквы (А-Я)
    • цифры
    • знак подчеркивания _

заглавные и строчные буквы различаются
имя не может начинаться с цифры
Операции : арифметические операции
+ сложение – вычитание
* умножение / деление
div деление нацело (остаток отбрасывается)
mod остаток от деления
цел a, b
a := 7*3 - 4 | 17
a := a * 5 | 85
b := div(a,10) | 8
a := mod(a,10) | 5
логические опеpации : и, или, не;
отношения < , > , <=, >= , = , <> .

Данные - величины, обpабатываемые пpогpаммой:

Данные - величины, обpабатываемые пpогpаммой:

Константы — это данные, которые зафиксированы в

тексте программы и не изменяются в процессе

ее выполнения:

- числовые 7,5 ; 12

- логические да (истина), нет (ложь);

- символьные "А", "+".

Пеpеменные обозначаются именами и могут изменять

свои значения в ходе выполнения пpогpаммы:

- целые,

- вещественные,

- логические,

- символьные.

Массив (таблица) — последовательность однотипных

элементов, число которых фиксировано

и которым присвоено одно имя.

Положение элемента в массиве

однозначно определяется его индексами.

Алгоритмизация и блок-схемы

Алгоритм можно описать разными способами: словами, на языке программирования, а также с помощью блок-схем.

На языке блок-схем каждый шаг алгоритма изображается геометрическими фигурами (блоками), связанными по управлению линиями (направлениями потока) со стрелками. В блоках записывается последовательность действий. Блок схемы читаются сверху вниз и слева направо.

Блок-схемы удобны в структурном программировании для описания только коротких алгоритмов.


Язык блок-схем прост (хотя существуют его расширенные варианты):

  • Прямоугольник – выполнение действия (например, c = a + b)
  • Ромб – проверка условия (например, a > b). Если условие выполняется, то алгоритм идет по линии «да», если не выполняется – то по линии «нет».
  • Скругленный прямоугольник – начало и конец алгоритма
  • Скошенный прямоугольник – ввод-вывод данных (например, получение значения переменной, вывод результата на экран монитора).


линейный – список команд (указаний), выполняемых последовательно друг за другом;
Различают следующие виды алгоритмов:

Линейная алгоритмическая конструкция

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

Блок-схема
 

Псевдокод

[действие 1]
 
[действие 2]
 
…………..
 
[действие N] 

Пример
Как убить Кощея?
Наверное, все помнят из детства сказку, в которой рассказывается о местонахождении смерти Кощея Бессмертного: «Смерть моя – на конце иглы, которая в яйце, яйцо – в утке, утка – в зайце, заяц в сундуке сидит, сундук на крепкий замок закрыт и закопан под самым большим дубом на острове Буяне, посреди моря-океяна …»
Предположим, вместо Ивана-царевича бороться с Кощеем был брошен Иван-дурак. Давайте поможем Василисе Премудрой составить такой алгоритм, чтобы даже Иван-дурак смог убить Кощея.
Шаги алгоритма
1. Cначала необходимо разыскать остров Буян.
2. Поскольку сундук закопан под самым большим дубом, то сначала необходимо найти самый большой дуб на острове.
3. Затем нужно выкопать сам сундук.
4. Прежде чем доставать зайца, необходимо сломать крепкий замок.
5. Теперь уже можно достать зайца.
6. Из зайца нужно достать утку.
7. Из утки достать яйцо.
8. Разбить яйцо и достать иголку.
9. Иголку поломать.

Запись решения задачи на алгоритмическом языке

Запись решения задачи на алгоритмическом языке


1. Пример линейного алгоритма: определить площадь трапеции по введенным значениям оснований (a и b) и высоты (h).

Блок-схема данного алгоритма

Псевдокод

Псевдокод


2. Пример линейного алгоритма: Составить алгоритм вычисления объема, массы и площади основания цилиндрического тела, если известны его плотность и геометрические размеры: радиус основания и высота.
Входные данные: R (радиус основания цилиндра), h (высота цилиндра), ρ (плотность материала);
Выходные данные: m (масса), V (объем), S (площадь основания).

Блок-схема

Задания к практической работе в файле Практическая работа_1.docx


Download 1.16 Mb.

Do'stlaringiz bilan baham:
1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling