Алгоритмизация вычислительных процессов

ПРОГРАММИРОВАНИЕ

НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ

Часть 1. Основы языка Си

Методические указания

К выполнению лабораторных работ

Санкт-Петербург

Составитель: Л.А. Прокушев

Рецензент: канд. техн. наук В.П. Попов

Даются методические указания к выполнению лабораторных работ, которые предназначены для выработки навыков алгоритмизации и программирования на языке Си.

Рассмотрены основные понятия программирования: построения программы; описания типов и ввода-вывода данных; операций и операторов, реализующих последовательные, ветвящиеся и циклические алгоритмы; модульного принципа программирования по организации ветвящихся и циклических алгоритмов. Показаны способы решения типовых задач с целью выработки у студентов практических навыков по составлению и отладке Си-программ при выполнении лабораторных работ.

Методические указания предназначены для студентов всех специальностей, изучающих дисциплины «Программирование на языке высокого уровня», «Алгоритмические языки и программирование», «Информатика».

Подготовлены к публикации кафедрой компьютерных систем автоматизации по решению редакционно-издательского совета Санкт-Петербургского государственного университета аэрокосмического приборостроения.

ã Санкт-Петербургский государственный университет
аэрокосмического приборостроения, 2002

Подписано к печати Формат 60х84 1/16. Бумага тип. №3

Печать офсетная. Усл. печ. л. 5,01 Уч.-изд. л. 5,5

Тираж экз. Заказ №

Редакционно-издательский отдел

Отдел оперативной полиграфии СПбГУАП

190000, Санкт-Петербург, ул. Б. Морская, 67

Общие методические указания

Цель работы: а) освоение приемов алгоритмизации вычислительных процессов; б) ознакомление с операторами языка Си и вводом-выводом данных; в) практическое освоение правил составления и набора Си-программ; г) освоение приемов отладки программ в диалоговом режиме.

Содержание работы: Выполнение работы включает следующие этапы:
а) ознакомление с условиями задачи и разработка схемы алгоритма ее решения; б) составление программы согласно схеме алгоритма; в) ввод программы и ее отладка с использованием среды Си-компилятора; г) ввод исходных данных и получение результатов решения задачи; д) составление отчета по лабораторной работе.

Алгоритмизация вычислительных процессов

Алгоритмом называется совокупность правил, определяющих данный вычислительный процесс, которыйот исходных данных за конечное число шагов (этапов, действий, операций) приводит к искомому результату.

Все многообразие вычислительных алгоритмов включает в себя в виде фрагментов 3 типовых вычислительных процесса:

· Линейный – последовательность операций, выполняемых одна за другой.

· Ветвящийся – выполнение операций по одному из возможных направлений (ветвей алгоритма) в зависимости от некоторых условий.

· Циклический – многократное выполнение некоторых операций в соответствии с заданным условием окончания цикла.

Описание алгоритма задачи может быть задано разными способами:

· Словесный – запись инструкций по выполнению алгоритма на естественном языке.

· Графический – представление алгоритма с использованием геометрических символов в виде блок-схем, граф-схем.

· Формализованный – описание алгоритма на одном из искусственных языков высокого уровня (ЯВУ) в виде последовательности строго определенных инструкций по обработке данных.

· Программный – запись алгоритма на языкеЭВМ в виде последовательности ее команд.

С целью наглядного представления процесса решения задачи используются схемы алгоритмов, которые составляются в соответствии с требованиями ГОСТ «Единая система программной документации» (ЕСПД) – ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем». Символы в схеме алгоритма могут обозначаться идентификаторами (или номерами) слева над символом.

Рассмотрим основные графические символы (блоки), используемые для представления алгоритмов:

Символ Наименование Выполняемые функции
  Терминатор Начало или конец схемы алгоритма
  Данные Ввод данных или вывод результатов
  Процесс Обработка данных любого вида
  Решение Разветвление алгоритма после проверки условия, записанного внутри символа
  Границы цикла Начало и конец цикла, с условиями продолжения в начале для цикла с предусловием или в конце для цикла с постусловием, с указанием параметра цикла в обоих блоках
Предопределенный процесс Обращение к подпрограмме, описанной в другом месте
Линия Линии потока данных или управления (слева направо и сверху вниз без стрелок)
Соединитель Обрыв линии потока и продолжение ее в другом месте с общим обозначением
Комментарий Пояснительные записи (объяснения, примечания) к символу или группе символов, обведенных пунктирной линией

Приведем примеры построения схем алгоритмов ветвящихся процессов.

Пример. Вычислить значение величины

æ a × x2, если a £ b,

y = í

è b - 2 × x, если a > b.

Решение примера:

Схема алгоритма: Комментарии:

 
 


y=b – 2×x
y=a × x2
Начало алгоритма

Ввод исходных данных

Да Проверка условия (логического выражения) по типу: “Верно ли условие?”.

Нет Результаты проверки: ветви “Да” или “Нет”

алгоритма.

Объединение линий потока ветвей.

Вывод результатов

Конец алгоритма

Пример. Среди трех величин A, B, C найти максимальную и записать в рабочую ячейку max.

Решение примера:

Схема алгоритма: Комментарии:

 
 


Ввод исходных данных

max=C
max=B
max=A

Начальное значение max

Сравнение B и C c max

и изменение max, если

это необходимо

Вывод результата


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: