Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по курсовой по программированию.DOC
Скачиваний:
42
Добавлен:
20.05.2014
Размер:
586.75 Кб
Скачать

5. Постановка задачи

Дано:

fname1

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

Требуется:

fname2

имя выходного файла, содержащего конвертированный текст программы на заданном языке;

koper1

число операторов в исходной программе;

koper2

число операторов в полученной программе;

ker

число ошибочных операторов в полученной программе;

Примечание:Длина строки входного файла не более 80 символов. Имена файлов fname1, fname2 должны удовлетворять требованиям системного программного обеспечения ЭВМ.

Связь

Для разработки алгоритма конвертирования необходимо иметь чёткое представление о возможном виде каждого допустимого оператора и результате его конвертирования. Для этого, на начальном этапе разработки определяется связьмежду исходными данными и результатом. Эта связь может быть представлена в виде таблицы, в первом столбце которой описан синтаксис оператора в исходном тексте, а во втором - синтаксис оператора, получаемого в результате конвертирования. Некоторые особенности результата конвертирования можно описать словами. Например:

п/п

Синтаксис оператора на языке Паскаль

Результат конвертирования на языке Си

1.

Оператор присваивания

v1 := ae1;

v1 = ae1;

2.

Оператор repeat..until:

repeat

оператор [оператор] ...

untille1;

do{

оператор [оператор] ...

} while (!le1);

3.

оператор if:

if le1 then

оператор

[ else

оператор ];

if(le1)

оператор

[ else

оператор ]

4.

операторные скобки begin...end

{...}

Если операторные скобки begin ... end определяют тело программы, то открывающая фигурная скобка вставляется после оператора void main (void), а закрывающая - в конец текста (при наличии точки после end).

5.

programMax;

void main (void)

6.

read(V1 [ , V2 ] ... );

где V1 ,V2 ... - идентификаторы переменных

scanf("%F1 [ %F2] ...", &V1 [,&V2] ...);

где F1,F2 ... – спецификаторы, выбираемые в зависимости от типа переменныхV1 ,V2 ...

В начало текста программы включается директива:

#include <stdio.h>

Примечание: Напомним, что в языке Си символ ' ; ' является принадлежностью оператора.

6. Внешняя спецификация программы

6.1. Вход

Исходный текст программы готовится заранее с помощью текстового редактора и

хранится в текстовом файле, имя которого вводится в ответ на запрос программы:

введите имя входного файла: <имя входного файла>