Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Паскаль / 1 семестр / лекции / Глава01-02.doc
Скачиваний:
58
Добавлен:
30.04.2013
Размер:
286.21 Кб
Скачать

Вопросы для самоконтроля

  1. Какова цель этапа постановки задачи?

  2. В какой форме может быть представлено описание метода решения задачи?

  3. Какой смысл отражает слово «внешняя» в названии этапа «Внешняя спецификация программы»?

  4. Каково назначение внешней спецификации программы?

  5. Что такое «тип данных»? Какую информацию о данных он несет?

  6. Поясните, что такое «аномалия входных данных», и что содержит описание аномалии.

  7. В чем основное отличие терминов «алгоритмический язык» и «язык программирования»?

  8. Какие виды языков применяются для записи алгоритмов?

  9. Что такое «псевдокод»?

  10. В чем отличие содержания тестирования и отладки программы?

2. Язык для записи алгоритмов

Содержательно алгоритм – это упорядоченная совокупность действий (операций) над некоторыми объектами. Для алгоритмов, выполняемых на ЭВМ, объектами действий служат данные, размещаемые в ее внутренней памяти.

Рассмотрим простой пример:

Вне компьютера

Алгоритм и внутренние переменные

SIN(<a>)=<b>

Входные данные:

a - вещественное число

Выходные данные:

где b – вещественное число,

и b = sin a

Алгоритм “Вычисление синуса”

Внутренние переменные:

x

вещ

y

вещ

начало

ввод (x)

y := sin (x)

вывод (“SIN(“,x , “) =”, y )

конец

Здесь:

Объекты действий:

  • вещественное число a , вводимое с устройства ввода (например, с клавиатуры)

  • внутренние переменные x и y , используемые для хранения аргумента и значения синуса во время исполнения программы

  • выходной текст, включающий эти величины (точнее, их представление в виде последовательности букв и цифр)

Совокупность действийнад этими объектами:

  • операция ввода значения аргумента во внутреннюю переменную x

  • операция присваивания переменной y значения синуса от аргумента x

  • операция вывода текста со значениями x и y в виде, описанном во внешней спецификации, элементы которой приведены в первом столбце таблицы.

Технология так называемого “надежного программирования”, которая поддерживается практически всеми современными языками программирования, требует, чтобы все переменныев алгоритме (и программе) были объявлены (иначе декларированы). Декларация переменной включает указание имени, типа, размерности (для массивов), и при необходимости – начальных значений (если они известны).

В первую очередь введем определение программной переменной:

Программная переменная обозначается символически (именем), размещается во внутренней памяти ЭВМ и всегда имеет какое-либо значение, иногда неизвестное (!)

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

Типпеременной определяет множество значений, которые она может принимать, и множество операций, которые разрешены над этими значениями.

В качестве примера приведем целые числа,которые принимают целочисленные значения в интервале -МаксЦелдо +МаксЦели для которых определены следующие арифметические операции: сложение, вычитание, умножение, целочисленное деление, и операции отношения: больше, меньше, больше или равно, меньше или равно, не равно и равно (эквивалентно).

В отличие от привычных действий в арифметике, результаты арифметических действий над целыми числами в ЭВМ имеют особенности. Так, результат операции сложения двух чисел, вычитания и умножения не могут выходить за пределы (-МаксЦел+МаксЦел), а результат деления целых – всегда является целым числом. При этом в качестве результата предъявляется целая часть от деления, а остаток от деления отбрасывается вне зависимости от его величины.

Отметим, что значения МаксЦел(максимальное целое) зависят от архитектуры ЭВМ и для разных ЭВМ различаются. Для компьютеров, совместимых с IBM PC, эта величина зависит от системы программирования, и, например, для языка Турбо Паскаль это число равно 32767.

Язык для записи алгоритмов, который будет использован в данном пособии, мы будем называть Русским Алгоритмическим Языком (РАЯ – версия псевдокода, использующая русскую лексику). Этот язык в качестве исполнителя предполагает исключительно человека, и поэтому правила записи алгоритма на нем должны быть удобны и понятны именно человеку. Самое важное отличие РАЯ от русского языка – ограниченный набор фраз (предложений) языка и строгие правила их построения для обеспечения строгой однозначности смысла текста алгоритма, чтобы результат его выполнения не зависел от того, кто будет исполнять алгоритм.

Приведем краткую характеристику средств языка РАЯ.

Соседние файлы в папке лекции