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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

ОДЕССКИЙ НАЦИОНАЛЬНЫЙ МОРСКОЙ УНИВЕРСИТЕТ

Кафедра “Техническая кибернетика”

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

Методические указания и задания к лабораторным работам

для всех специальностей ОНМУ

Одесса – 2004

Методические указания и задания разработаны к. т. н. Бугаевой Ириной Григорьевной – ассистентом кафедры “Техническая кибернетика” Одесского национального морского университета, Кунгурцевой Еленой Николаевной и Новиковой Натальей Алексеевной – ст. преподавателями той же кафедры в соответствии с рабочей программой дисциплины “Информатика и компьютерная техника”.

Методические указания и задания одобрены на заседании кафедры “Техническая кибернетика” ОНМУ 29 сентября 2003 г. (протокол № 2).

Оглавление

[0.1] Оглавление

[1] Предисловие

[2] Введение

[2.1] 1. Разветвляющиеся вычислительные процессы

[2.2] 2. Циклические вычислительные процессы

[2.2.1] 2.1. Циклы с заданным числом повторений

[2.2.1.1] 2.1.1. Вычисление массива значений функции

[2.2.1.2] 2.1.2. Обработка одномерных массивов

[2.2.2] 2.2. Циклы с неизвестным числом повторений

[2.2.2.1] 2.2.1. Табулирование функции

[2.2.2.2] 2.2.2 Итерационные вычислительные процессы

[2.2.2.3] 2.2.3. Вычисление суммы членов бесконечного ряда

[2.2.3] 2.3. Сложные циклы

[2.2.3.1] 2.3.1. Пример алгоритма, содержащего вложенный цикл

[2.2.4]         где i=1,2,…,n.

[3]     

[3.0.0.1] 2.3.2. Обработка двумерных массивов (матриц)

[3.1] 3. Работа с текстовыми файлами

[3.2] 4. Функции в языке Pascal

[3.3] 5. Процедуры в языке Pascal

[4] Программа

[4.1] 6. Модули в языке Pascal

[5] Литература

Предисловие

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

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

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

Без ограничения общности рассматриваемых вопросов для изучения основ программирования будем использовать систему программирования Borland Pascal, включающую язык программирования Pascal.

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

В разделах “Алгоритмизация вычислительных процессов” и “Программирование на языке Pascal” дисциплины “Информатика и компьютерная техника” предусмотрено выполнение лабораторных работ в системе Borland Pascal (Turbo Pascal), целью которых является получение практических навыков разработки схем алгоритмов для типовых задач, написания соответствующих им программ на языке Pascal, и, выполнения этих программ на компьютере, при заданных вариантах исходных данных.

В данном пособии приведены примеры схем алгоритмов и соответствующих им программ в качестве образцов для выполнения во время лабораторных работ индивидуальных заданий, выдаваемых преподавателем каждому студенту из сборника задач [Л2].

Для понимания этих примеров нужно систематически, в соответствии с лекционным материалом, изучать материал, изложенный в [Л1], и только после этого можно приступать к разбору и выполнению образцов программ на компьютере, используя указанные в примерах исходные данные и сравнивая полученные результаты вычислений с приведенными в пособии.

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

Введение

Подготовка задачи к решению на компьютере – трудоёмкая и кропотливая работа, содержащая целый ряд различных этапов [Л1, стр. 5-7], три из которых рассматриваются в данном пособии:

  •  разработка алгоритма;
  •  написание программы на языке программирования;
  •  выполнение программы на компьютере.

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

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

Первоначально алгоритм записывается на общепринятом языке математических описаний и словесных пояснений, а затем представляется в наглядной форме в виде схемы алгоритма, в которой алгоритм представляется в виде отдельных участков (блоков). Каждый блок предназначен для выполнения одного или группы действий, таких как ввод данных, вычисление по формулам, вывод результатов вычислений, проверка выполнения заданных условий и пр.

Программа реализует разработанный алгоритм и, в соответствии с ним, состоит из последовательности инструкций (операторов), каждая из которых определяет одно или группу действий.

Программа на языке Pascal [Л1, стр. 58-61] состоит из трёх частей:

  •  заголовок;
  •  раздел описаний;
  •  тело программы.

В языке Pascal можно создавать следующие программные единицы:

  •  рабочая программа (программа пользователя);
  •  функция (подпрограмма – функция);
  •  процедура (подпрограмма – процедура);
  •  модуль (библиотека программ).

Каждая программная единица должна начинаться с соответствующего ей заголовка.

Пример заголовка рабочей программы:

рrogram primer1;

где primer1 – имя программы, выбранное пользователем.

В разделе описаний [Л1, стр. 59-61] должны указываться все модули, метки, константы, типы данных, переменные, процедуры и функции, которые используются в данной программе.

Пример описания констант:

const

       n=50;

       k=25.5;

Пример описания переменных и массивов:

var

     a, b: real;

     i, k: integer;

        X: array [1..20] of real;

        Y: array [1..10,1..10] of integer;

В этом описании содержится информация о том, что значениями переменных a и b должны быть вещественные числа, значениями переменных i и k должны быть целые числа, переменная X является одномерным массивом, состоящим из 20-ти вещественных чисел, а переменная Y является двумерным массивом  (матрицей 10*10), состоящим из целых чисел.

Тело программы состоит из операторов [Л1, стр.46] и должно начинаться с ключевого слова begin и заканчиваться словом end, после которого должна стоять точка в программах пользователя и модулях, а в процедурах и функциях после слова end ставится точка с запятой.

Операторы отделяются друг от друга точкой с запятой.

Для выполнения вычислений по формулам используется оператор присваивания.

Примеры записи операторов присваивания:

a:=1;

b:=5;

x:=a+b;

y:=1-3.4*c;

z:=d*x+2.5*y-1.53;

Оператор присваивания – это указание о необходимости вычисления значения выражения, записанного справа, и присваивания этого значения переменной, записанной слева.

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

sin(x), cos(x), ln(x), exp(x), sqrt(x) и др. для вычисления значений математических функций sinx, cosx, lnx, ex, x соответственно.

Для ввода данных с клавиатуры и вывода результатов на экран используются процедуры read, readln, write, writeln.

Примеры записи процедур ввода - вывода:

readln(b1,b2,…,bn); (ввод с клавиатуры)

writeln(b1,b2,…,bn); (вывод на экран)

где b1,b2,…,bn  - имена переменных, подлежащих вводу или выводу.

В теле программы могут использоваться операторные скобки begin – end для объединения нескольких операторов в группу, которую можно использовать в случае необходимости в качестве одного оператора.

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

1.

Разветвляющиеся вычислительные процессы

2.

Циклические вычислительные процессы

2.1.

Циклы с заданным числом повторений

2.1.1.

Вычисление массива значений функции

2.1.2.

Обработка одномерных массивов

2.2. Циклы с неизвестным числом повторений

В циклах с неизвестным числом повторений используются, как правило, операторы repeat-until и while-do.

2.2.1.

Циклы с неизвестным числом повторений. Табулирование функции

2.2.2

Итерационные вычислительные процессы

2.2.3.

Вычисление суммы членов бесконечного ряда

2.3.

Сложные циклы

2.3.1.

Пример алгоритма, содержащего вложенный цикл

                                             

2.3.2.

Обработка двумерных массивов (матриц)

3.

Работа с текстовыми файлами

4.

Функции в языке Pascal

5.

Процедуры в языке Pascal

6.

Модули в языке Pascal

  1.  
← Предыдущая
Страница 1
Следующая →

Методические указания и задания к лабораторным работам для всех специальностей ОНМУ. Кафедра “Техническая кибернетика”

У нас самая большая информационная база в рунете, поэтому Вы всегда можете найти походите запросы

Искать ещё по теме...

Сохранить?

Пропустить...

Введите код

Ok