Паскаль,калькулятор

Автор: Пользователь скрыл имя, 18 Ноября 2011 в 05:08, контрольная работа

Краткое описание

Pascal
Pascal – язык программирования высокого уровня, написанный Никлаусом Виртомом, является компилятором, преобразует программу для запуска и занимает больший объем, чем, например, Basic, который является интерпретатором и занимает меньший объем.
Калькулятор 1
Кодирование программных модулей начинается с управляющего программного модуля, в результате чего получаем оттестированный управляющий программный модуль «Калькулятор 1». Для тестирования и отладки программные модули второго уровня заменяются заглушками, за исключением программного модуля «ожидание» (Wait), который взят из библиотеки стандартных программных процедур, поэтому его можно подключать к программному комплексу без тестирования[1]. На рисунке 1 показан пример того, как выглядит сам Pascal, а так же написание программы «Калькулятор 1».

Файлы: 1 файл

ОТЧЕТ Кальк.doc

— 139.50 Кб (Скачать)

Федеральное государственное образовательное  учреждение 
высшего профессионального образования

«СИБИРСКИЙ  ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ»

ИГУРЭ

Информационные  технологии

ОТЧЕТ

Технология  нисходящего программирования

Программная реализация

Преподаватель Васина Г.И

Студент ПЭ-09-08 Кильмурзина К.В

Красноярск 2009 
Содержание

 

ВВЕДЕНИЕ

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

 

     Pascal

     Pascal – язык программирования высокого уровня, написанный Никлаусом Виртомом, является компилятором, преобразует программу для запуска и занимает больший объем, чем, например, Basic, который является интерпретатором и занимает меньший объем.

     Калькулятор 1

     Кодирование программных модулей начинается с управляющего программного модуля, в результате чего получаем оттестированный  управляющий программный модуль «Калькулятор 1». Для тестирования и  отладки программные модули второго  уровня заменяются заглушками, за исключением программного модуля «ожидание» (Wait), который взят из библиотеки стандартных программных процедур, поэтому его можно подключать к программному комплексу без тестирования[1]. На рисунке 1 показан пример того, как выглядит сам Pascal, а так же написание программы «Калькулятор 1».

 

     Рисунок 1 – Калькулятор 1

     На  рисунке видно, что Pascal имеет две панели инструментов, с помощью которых с легкостью возможна работа с программой. Полное написание программы можно рассмотреть в приложении А.

     Калькулятор 2

     После отладки управляющего программного модуля заглушки программных модулей  второго уровня кодируют и проверяют  одновременно с управляющей программой. При этом программные модули третьего уровня заменены заглушками, за исключением  программного модуля «Жди_время», который, как и программный модуль «Ожидание», взят из библиотеки стандартных программных процедур[1]. Листинг по «Калькулятор 2» можно рассмотреть в приложении Б.

     Калькулятор 3

     В «Калькулятор 3» существуют три программных модуля, то есть третий уровень отладки позволяет производить расчет данных. Листинг по данной работе проведен в приложении В.

 

ЗАКЛЮЧЕНИЕ

     Заключительным этапом разработки программного комплекса  является кодирование и отладка  программных модулей третьего уровня и программного комплекса целиком. Завершенным вариантом является «Калькулятор 3».

 

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Практикум по вычислительной технике и программированию.

 

ПРИЛОЖЕНИЕ А

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

program Calculator;

uses WinCRT, WinDOS;

var N :char; {выполняемое  арифметическое действие}

a,b ,             {числа}

rezult :real;{результат}

waittime :word;{число  секунд приостановки выполнения  программы}

{----------Меню----------}

procedure menu;

begin writeln ('                      Меню');

end ;

{----------Заставка---------}

procedure Zastavka;

begin ClrScr; writeln ('                    Калькулятор');end;

{----------Ввод a и b----------}

procedure input;

begin writeln ('                    Ввод a и b');

 end;

{-------Ввод требуемого арифметического действия------}

procedure operation;

begin writeln ('                    Ввод требуемого арифметического  действия');

end;

{------------Вычисления------------}

procedure calculation;

begin writeln ('                    Вычисления'); end;

{----Временная  остановка выполнения программы----}

procedure wait;

begin

gotoxy(1,23);write ('               Выход-Enter'); readln; end;

{-----Управляющая программа-----}

begin

    Menu;readln; Zastavka;

           Input;

                 Operation;

                          Calculation; Wait;

end.

ПРИЛОЖЕНИЕ Б

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

program Calculator;

uses WinCRT, WinDOS;

var N :char; {выполняемое  арифметическое действие}

a,b ,             {числа}

rezult :real;{результат}

waittime :word;{число  секунд приостановки выполнения  программы}

{---Приостановка  выполнения программы на заданное  время---}

procedure WaitDos (WaitTime:word);

var House, Minute, Second, Sec100, Second0:word;

begin

GetTime (House, Minute, Second, Sec100);

if WaitTime+Second >= 60 then Second0 :=WaitTime + Second-60

else Second0:=Second + WaitTime; repeat

GetTime (House, Minute, Second, Sec100); until

Second=second0; end;

{----------Меню----------}

procedure menu;

const stroka1='                            +сложение';

      stroka2='                            -вычитание';

      stroka3='                            *умножение';

      stroka4='                            /деление';

begin

ClrScr; gotoXY (20,3);

Продолжение приложения Б 

writeln ('Выполняемые действия'); gotoxy (1,6);

writeln (Stroka1);

writeln (stroka2);

writeln (stroka3);

writeln (stroka4); end ;

{----------Заставка---------}

procedure Zastavka;

begin ClrScr; gotoxy (15,1); writeln ('Федеральное государственное  образовательное учреждение');

gotoxy (23,2); writeln ('высшего  профессионального образования');

gotoxy (24,3); writeln ('"СИБИРСКИЙ  ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ"');

gotoxy (29,10); writeln ('Лабораторная работа №1');

gotoxy (22,11); writeln ('Технология  нисходящего программирования');

gotoxy (29,12); writeln ('Программная  реализация');

gotoxy (5,20); writeln ('Студент                                          Кильмурзина К.В');

gotoxy (5,21); writeln ('Преподаватель                                    Васина Г.И');

gotoxy (25,24); writeln ('        Красноярск, 2009');

WaitDos (3); end;

{---------Сложение----------}

procedure add;

begin writeln ('Сложение'); end;

{---------Вычитание---------}

procedure subtract;

begin writeln ('Вычитание'); end;

{---------Умножение----------}

procedure multiplay;

begin writeln ('Умножение'); end;

{---------Деление------------}

procedure devision;

begin writeln ('Деление'); end;

{----------Ввод a и b----------}

procedure input;

begin writeln ('Введите значение a'); readln (a);

      writeln ('Введите значение b'); readln (b); end;

{-------Ввод требуемого  арифметического действия------}

procedure operation;

var Flag: boolean;

begin writeln;

repeat gotoxy (1,17); ClrEol; gotoxy (1,17);

Write ('Введите требуемое действие '); readln (N);

Flag :=(N='+') or (N ='-') or (N='*') or (N='/');

        if not Flag then

        begin gotoxy(1,19);

Writeln ('Вы ошиблись, повторите ввод'); end;

until Flag;

gotoxy (1,19); ClrEol; Writeln;

end;

{------------Вычисления------------}

procedure calculation;

begin

Case N of

     '+':Add;

     '-':Subtract;

     '*':Multiplay;

     '/':Devision;

      end;

      end;

{----Временная  остановка выполнения программы----}

procedure wait;

begin

gotoxy(1,23);write ('Выход-Enter'); readln;

end;

{-----Управляющая программа-----}

begin

    Zastavka; Menu;

           Input;

                 Operation;

                          Calculation; Wait;   end.

 

ПРИЛОЖЕНИЕ В

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

program Calculator;

uses WinCRT, WinDOS;

var N :char; {выполняемое  арифметическое действие}

a,b ,             {числа}

rezult :real;{результат}

waittime :word;{число  секунд приостановки выполнения  программы}

{---Приостановка  выполнения программы на заданное время---}

procedure WaitDos (WaitTime:word);

var House, Minute, Second, Sec100, Second0:word;

begin

GetTime (House, Minute, Second, Sec100);

if WaitTime+Second >= 60 then Second0 :=WaitTime + Second-60

else Second0:=Second + WaitTime; repeat

GetTime (House, Minute, Second, Sec100); until

Second=second0; end;

{----------Меню----------}

procedure menu;

const stroka1='                            +сложение';

      stroka2='                            -вычитание';

      stroka3='                            *умножение';

      stroka4='                            /деление';

begin

ClrScr; gotoXY (20,3);

writeln ('Выполняемые действия'); gotoxy (1,6);

writeln (Stroka1);

writeln (stroka2);

writeln (stroka3);

writeln (stroka4); end ;

{----------Заставка---------}

procedure Zastavka;

begin ClrScr; gotoxy (15,1); writeln ('Федеральное государственное  образовательное учреждение');

gotoxy (23,2); writeln ('высшего  профессионального образования');

gotoxy (24,3); writeln ('"СИБИРСКИЙ  ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ"');

gotoxy (29,10); writeln ('Лабораторная работа №1');

gotoxy (22,11); writeln ('Технология  нисходящего программирования');

gotoxy (29,12); writeln ('Программная  реализация');

gotoxy (5,20); writeln ('Студент                                          Кильмурзина К.В');

gotoxy (5,21); writeln ('Преподаватель                                    Васина Г.И');

gotoxy (25,25); writeln ('        Красноярск, 2009');

Информация о работе Паскаль,калькулятор