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

Разработка программы, с помощью которой возможно возведение числа в квадрат, с меню и добавлением специальных кнопок "Свернуть, развернуть, закрыть". Идентификационная таблица переменных. Блок схема основного блока программы. Основной блок программы.

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 07.07.2012
Размер файла 22,9 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Введение

Сейчас, в ХХI веке, огромный выбор программ предназначенных для помощи человеку в различных сферах его деятельности.

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

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

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

1. Формулировка задачи

Создается окно приложений для возведения числа в квадрат, включающее следующие окна:

Заголовок окна, включающего текст «Возведение в степень» и кнопки: свернуть, раскрыть, закрыть;

Окно ввода числа с заголовком: «Введите значение:»;

Окно результата с заголовком «Квадрат числа равен:»;

Кнопки «Следующее» и «Выход».

Идентификационная таблица переменных

Имя переменной

Тип

Ret

byte

T

integer

T1

integer

a

integer

b

integer

X

byte

Y

byte

S

string

Run

boolean

sel

byte

2. Сценарий выполнения задания

Декомпозиция задачи

Целью задания является разработка программы, с помощью которой возможно возведение числа в квадрат, с удобным меню, и добавлением специальных кнопок «Свернуть, развернуть, закрыть»

Описание метода решения

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

Описание программы

Разработанная программа имеет название test.exe. Программа написана на алгоритмическом языке Тurbo Pascal., её исходный текст находится в файле test.pas. Для её нормального функционирования на персональном компьютере должна быть установлена операционная система MS-DOS версии 3.0 или выше.

Описание процедур и функций.

Procedure DrawMenu - процедура вывода меню на экран.

Var I: Byte;

Begin

For I:=0 To MaxMenuItem Do

Begin

GotoXY (Menu[I].X, Menu[I].Y);

Write (Menu[I].S);

End;

End;

Procedure Select (I: Byte) - процедура выделения нужного пункта меню.

Begin

TextBackground(green); TextColor(red);

GotoXY (Menu[I].X, Menu[I].Y);

Write (Menu[I].S);

TextBackground(green); TextColor(red);

End;

Procedure DeSelect (I: Byte) - процедура снятия выделения с пункта меню.

Begin

TextBackground(lightblue); TextColor(green);

GotoXY (Menu[I].X, Menu[I].Y);

Write (Menu[I].S);

TextBackground(lightblue); TextColor(green);

End;

Выбор пункта меню осуществляется через оператор Case.

Блок схема основного блока программы.

Размещено на http://www.allbest.ru/

3. Основной блок программы

программа квадрат число блок

Begin

ClrScr; - очистка экрана

TextBackground(lightblue); - цвет заливки экрана

TextColor(LightGreen); - цвет текста

Ret:= 0; - управляющя переменная, в выборе пункта меню

Repeat - начало цикла повторений

Ret:= MainMenu(Ret);

Case Ret Of - Выбор пункта меню

0: Begin

gotoxy (30,1); |

writeln ('Введите число:); |

gotoxy (21,2); |

writeln ('|________________________________|'); | => Подпрограмма Ввода числа

Readln(T); |

gotoxy (45,18); |

WriteLn ('Press Enter to continue..'); |

readln; |

End;

1: Begin

gotoxy (30,1); |

writeln (Возведение числа в квадрат); |

gotoxy (21,2); |

writeln ('|________________________________|'); |

writeln (' '); |

Write (Результат возведения числа: ') ;|

if t=0 then writeln ('Вы еще не вводили число!') else => Подпрограмма возведения числа в квадрат

T:=T*T; |

Write(T); |

gotoxy (45,18); |

WriteLn ('Press Enter to continue..'); |

ReadLn; |

End;

2: Begin

gotoxy (30,1); |

writeln (Вывод числа); |

gotoxy (16,2); |

writeln ('|________________________________|'); | => Подпрограмма вывода числа

Writeln(T); |

gotoxy (45,18); |

WriteLn ('Press Enter to continue..'); |

readln; |

End;

3: Begin

Exit;

End;

4: Begin

exec ('svernyt.exe', ''); - сворачивание окна

End;

Else Begin

WriteLn ('‚Выход');

WriteLn ('`Сеанс работы завершен!'); - Выход из программы

ReadLn;

End;

End;

Until Ret = MaxMenuItem;

TextBackground(Black);

TextColor(LightGray);

ClrScr;

End.

4. Инструкция по составу и использованию модуля

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

Программа запускается обычным образом с клавиатуры персонального компьютера. Запускаемый файл называется test.exe.

Программа test.exe запускается из операционной системы или из оболочки Norton Commander.

После запуска программы на экране появляется окно с блоком меню.

Диапазон пунктов меню равен четырем и содержит следующие пункты:

· Ввод числа

· Возведение числа в квадрат

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

· Выход

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

· [X] - Выход из программы

· [_] - Свернуть программу

· [0] - Развернуть программу

После выбора пункта меню при помощи клавиатуры необходимо нажать клавишу Enter.

Заключение

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

При выполнении данной курсовой работы я углубил знания в области изучаемого предмета «Программирование и основы алгоритмизации». В процессе выполнения программы я столкнулся с новыми методами разработки меню, а так же ознакомился с модулем Dos и закрепил полученные знания по курсу.

Список литературы

1) Иванова Г.С. Основы программирования: Учебник для вузов. - М.: Изд-во МГТУ им Баумана 2001. - 392.

2) Станевко Г.И., Колесникова Т.Г. Программирование и основы алгоритмизации. Лабораторный практикум. Кемерово 2010.

Приложение

Код программы:

Uses CRT, dos, mod_mas;

{$M 4096, 0, 0}

Const MaxMenuItem = 5;

Var Ret: Byte;

T, T1: integer;

a, b:integer;

Function MainMenu (R_Select: Byte):Byte;

Type TMenu = record

X, Y: Byte;

S: String[25];

End;

Var Menu: Array [0..MaxMenuItem] Of TMenu;

Run: Boolean;

Sel: Byte;

TC, TB: Byte;

Procedure DrawMenu;

Var I: Byte;

Begin

For I:=0 To MaxMenuItem Do

Begin

GotoXY (Menu[I].X, Menu[I].Y);

Write (Menu[I].S);

End;

End;

Procedure Select (I: Byte);

Begin

TextBackground(green); TextColor(red);

GotoXY (Menu[I].X, Menu[I].Y);

Write (Menu[I].S);

TextBackground(green); TextColor(red);

End;

Procedure DeSelect (I: Byte);

Begin

TextBackground(lightblue); TextColor(green);

GotoXY (Menu[I].X, Menu[I].Y);

Write (Menu[I].S);

TextBackground(lightblue); TextColor(green);

End;

Begin

Menu[0].S:= ' €б室­лҐ ¤ ­­лҐ '; Menu[0].X:= 30; Menu[0].Y:= 5;

Menu[1].S:= ' ‚®§ўҐ¤Ґ­ЁҐ ў Єў ¤а в '; Menu[1].X:= 30; Menu[1].Y:= 6;

Menu[2].S:= ' ‚лў®¤ १㠫мв в '; Menu[2].X:= 30; Menu[2].Y:= 7;

Menu[3].S:= ' ‚л室 '; Menu[3].X:= 30; Menu[3].Y:= 8;

Menu[4].S:= '[_]'; Menu[4].X:= 73; Menu[4].Y:= 1;

Menu[5].S:= '[е]'; Menu[5].X:= 77; Menu[5].Y:= 1;

ClrScr;

TC:= TextAttr mod 16;

TB:= TextAttr div 16;

DrawMenu;

Sel:= R_Select;

Select(Sel);

Run:= False;

While Not Run Do Begin

Case ReadKey Of

#13: Run:= True;

#27: Begin

Run:= True;

Sel:= MaxMenuItem;

End;

#0: Case ReadKey Of

#72: Begin

DeSelect(Sel);

If Sel = 0

Then Sel:= MaxMenuItem

Else Sel:= Sel - 1;

Select(Sel);

End;

#80: Begin

DeSelect(Sel);

If Sel = MaxMenuItem

Then Sel:= 0

Else Sel:= Sel + 1;

Select(Sel);

End;

End;

End;

End;

MainMenu:= Sel;

TextBackground(TB);

TextColor(TC);

ClrScr;

End;

Begin

ClrScr;

ramka;

TextBackground(lightblue);

TextColor(LightGreen);

Ret:= 0;

Repeat

Ret:= MainMenu(Ret);

Case Ret Of

0: Begin

gotoxy (30,1);

writeln ('€б室­лҐ ¤ ­­лҐ');

gotoxy (21,2);

writeln ('|________________________________|');

Write ('‚ўҐ¤ЁвҐ зЁб «®: ');

Readln(T);

gotoxy (45,18);

WriteLn ('Press Enter to continue..');

readln;

End;

1: Begin

gotoxy (30,1);

writeln ('‚®§ўҐ¤Ґ­ЁҐ ў Єў¤а в');

gotoxy (21,2);

writeln ('|________________________________|');

writeln (' ');

Write ('ђҐ§г «мв в ў®§ўҐ¤Ґ­Ёп зЁб» ', T, ' ў Єў ¤а в: ');

if t=0 then writeln ('ЋиЁЎЄ! ‚л ҐйҐ ­Ґ § ¤ ў «Ё §­ зҐ­Ё©!') else

T:=T*T;

Write(T);

gotoxy (45,18);

WriteLn ('Press Enter to continue..');

ReadLn;

End;

2: Begin

gotoxy (30,1);

writeln ('ђҐ§г «мв в');

gotoxy (16,2);

writeln ('|________________________________|');

Writeln(T);

gotoxy (45,18);

WriteLn ('Press Enter to continue..');

readln;

End;

3: Begin

Exit;

End;

4: Begin

exec ('svernyt.exe', '');

End;

Else Begin

WriteLn ('‚л室');

WriteLn ('`Ґ ­б а Ў®вл § ўҐа襭!');

ReadLn;

End;

End;

Until Ret = MaxMenuItem;

TextBackground(Black);

TextColor(LightGray);

ClrScr;

End.

Размещено на Allbest.ru


Подобные документы

  • Разработка игровой программы, моделирующей поведение мяча в закрытом безвоздушном пространстве. Изменение значения гравитации и трения о стены. Интерфейс программы, ее основная форма. Блок-схема программы и ее основной код. Добавление третьего измерения.

    контрольная работа [111,1 K], добавлен 27.08.2012

  • Основные аналитические соотношения. Блок схемы и алгоритм решения задачи. Проверка работоспособности алгоритма вручную. Таблица идентификации переменных. Формы входной и выходной печати. Разработка и отладка программы. Инструкция для работы с программой.

    курсовая работа [69,8 K], добавлен 13.02.2012

  • Разработка программы на языке Turbo Pascal, обеспечивающей работу пользователя в диалоговом режиме с возможностью выбора функций с помощью одноуровневого меню вертикального типа. Блок-схема и листинг программы, описание руководства пользователя.

    курсовая работа [1,5 M], добавлен 17.03.2014

  • Ознакомление с возможностями языка Си как средой программирования высокого уровня. Циклы программирования параметрического оператора for и функции форматированного ввода. Разработка программы средствами Си: блок-схема, текст и тестирование программы.

    контрольная работа [204,4 K], добавлен 26.01.2013

  • Математическая постановка задачи для алгоритмизации, рекуррентная зависимость. Алгоритм решения задачи, блок-схема программы. Тестовые данные для тестирования программы. Результаты, соответствующие для первых вводимых данных и листинг программы.

    контрольная работа [27,0 K], добавлен 09.05.2012

  • Описание работы элементов программы в виде блок-схем. Анализ структурной схемы модели домофона. Блок-схема работы открытия двери ключом. Моделирование в Proteus: принцип динамического опроса и индикации, внешний вид жидкокристаллического дисплея.

    курсовая работа [1,4 M], добавлен 12.04.2019

  • Блок-схема основной программы. Линейная и графическая схемы основной программы. Линейная и графическая схемы процедуры вычитания. Реализация ввода с клавиатуры числа, длиной не более 128 символов. Размещение числа в выделенной оперативной памяти.

    контрольная работа [73,4 K], добавлен 08.07.2012

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

    курсовая работа [106,6 K], добавлен 16.06.2014

  • Составление программы сортировки по возрастанию массив из 20 шестнадцатеричных чисел, просматривающей все исходные числа во внешней памяти и выбирающей самое большое число. Блок-схема алгоритма работы программы. Таблица команд и число их выполнения.

    курсовая работа [23,1 K], добавлен 24.05.2015

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

    курсовая работа [525,4 K], добавлен 13.02.2023

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.