Реализация библиотеки для работы с
Вид материала | Документы |
СодержаниеОсновной файл (реализация пользовательского интерфейса) |
- План работы библиотеки зав библиотекой Полещук Людмила Дмитриевна Анализ работы библиотеки, 363.46kb.
- Реализация комплексной программы автоматизации обслуживания пользователей в библиотеке, 81.9kb.
- План работы библиотеки Муниципального бюджетного общеобразовательного учреждения основной, 511.68kb.
- Годовой план работы библиотеки псош №46 имени В. П. Астафьева на 2008 2009 учебный, 536.46kb.
- В. М. Красильщикова Советник отдела библиотек, 110.39kb.
- Задачи конкурса -повысить престиж библиотеки как современного информационного и культурного, 108.49kb.
- Зональной научной библиотеки, 1482.03kb.
- План работы библиотеки моу «Миндерлинская сош» на 2010 -2011 учебный год Задачи библиотеки, 63.53kb.
- План работы школьной библиотеки мбоу краснокаменская сош №4 на 2011/2012 учебный год., 170.02kb.
- План работы Никольской сельской библиотеки на 2011, 33.87kb.
Основной файл (реализация пользовательского интерфейса)
program Search_and_Sor5;
{$APPTYPE CONSOLE}
uses
SysUtils,
listing5 in 'listing5.pas';
var
choice : shortint;
fQuit:boolean;
x:string;
myArrayStatic,myTwoDimenArray, myArrayDynamic:MyArr;
mySearchAndSort:SearchAndSort;
myTwoDimStr:TwoDimenStr;
myTwoDimCol:TwoDimenCol;
myTwoDimStrD:TwoDimenStrD;
begin
fQuit:=false;
choice:=-1;
while (true) do
begin
writeln(Rus('=====ГЛАВНОЕ МЕНЮ====='):48);
writeln(Rus('Выберите массив'):45);
writeln(Rus(' 1 - Одноменый статический массив'));
writeln(Rus(' 2 - Двумерный статический массив сортируемый по строкам'));
writeln(Rus(' 3 - Двумерный статический массив сортируемый по столбцам'));
writeln(Rus(' 4 - Одномерный динамический массив'));
writeln(Rus(' 5 - Двумерный динамический массив сортируемый по сторкам'));
writeln(Rus(' 0 - Завершить работу'));
while (true) do
begin
readln(x) ;
if (myArrayStatic.check(x)) then
begin
choice:=strToInt(x) ;
if ((choice>=0) and (choice<=5)) then Break else myArrayStatic.myError(2, x);
end;
writeLn(Rus('Выберите пункт меню'):45);
end;
if (choice=1) then
begin
myArrayStatic.createArrayStatic();
writeLn(Rus('Одноменый статический массив'):48);
mySearchAndSort:=SearchAndSort.Create();
mySearchAndSort.printArray();
mySearchAndSort.searchMax();
mySearchAndSort.searchMin();
writeLn(Rus('Максимальный элемент в массиве'):48);
writeLn(mySearchAndSort.GetMax():34);
writeLn(Rus('его номер'):38);
writeLn(mySearchAndSort.GetNumMax():34);
writeLn(Rus('Минимальный элемент в массиве'):48);
writeLn(mySearchAndSort.GetMin():34);
writeLn(Rus('его номер'):38);
writeLn(mySearchAndSort.GetNumMin():34);
mySearchAndSort.SortMin();
writeLn(Rus('Отсортированный массив по возрастанию'):48);
mySearchAndSort.printArray();
mySearchAndSort.SortMax();
writeLn(Rus('Отсортированный массив по убыванию'):48);
mySearchAndSort.printArray();
readln;
end
else if (choice=2) then
begin
myTwoDimenArray.createTwoDimenArray();
mySearchAndSort:=SearchAndSort.Create();
mySearchAndSort.TMax();
mySearchAndSort.TMin();
myTwoDimStr:=TwoDimenStr.Create();
myTwoDimStr.createNewArrayStatic();
myTwoDimStr.searchMax();
myTwoDimStr.searchMin();
writeLn(Rus('Двумерный статический массив'):48);
myTwoDimStr.printTwoDimArray();
writeLn(Rus('Максимальный элемент в массиве'):48);
writeLn(myTwoDimStr.GetMax():34);
writeLn(Rus('его номер'):38);
writeLn(myTwoDimStr.GetNumMax():34);
writeLn(Rus('Минимальный элемент в массиве'):48);
writeLn(myTwoDimStr.GetMin():34);
writeLn(Rus('его номер'):38);
writeLn(myTwoDimStr.GetNumMin():34);
myTwoDimStr.SortMin();
writeLn(Rus('Отсортированный массив по возрастанию'):48);
myTwoDimStr.printArray();
myTwoDimStr.SortMax();
writeLn(Rus('Отсортированный массив по убыванию'):48);
myTwoDimStr.printArray();
readln;
end
else if (choice=3) then
begin
myTwoDimenArray.createTwoDimenArray();
mySearchAndSort:=SearchAndSort.Create();
mySearchAndSort.TMax();
mySearchAndSort.TMin();
myTwoDimCol:=TwoDimenCol.Create();
myTwoDimCol.createNewArrayStatic();
myTwoDimCol.searchMax();
myTwoDimCol.searchMin();
writeLn(Rus('Двумерный статический массив'):48);
myTwoDimCol.printTwoDimArray();
writeLn(Rus('Максимальный элемент в массиве'):48);
writeLn(myTwoDimCol.GetMax():34);
writeLn(Rus('его номер'):38);
writeLn(myTwoDimCol.GetNumMax():34);
writeLn(Rus('Минимальный элемент в массиве'):48);
writeLn(myTwoDimCol.GetMin():34);
writeLn(Rus('его номер'):38);
writeLn(myTwoDimCol.GetNumMin():34);
myTwoDimCol.SortMin();
writeLn(Rus('Отсортированный массив по возрастанию'):48);
myTwoDimCol.printArray();
myTwoDimCol.SortMax();
writeLn(Rus('Отсортированный массив по убыванию'):48);
myTwoDimCol.printArray();
readln;
end
else if (choice=4) then
begin
myArrayDynamic.createDynArray();
writeLn(Rus('Исходный массив:'):48);
mySearchAndSort.printArrayD();
mySearchAndSort.SortBubbleMax();
writeLn(Rus('Отсортированный массив по возрастанию'):48);
mySearchAndSort.printArrayD();
mySearchAndSort.SortBubbleMin();
writeLn(Rus('Отсортированный массив по убыванию'):48);
mySearchAndSort.printArrayD();
myArrayDynamic.deleteDynArray();
end
else if (choice=5) then
begin
myArrayDynamic.createDynArrayT();
mySearchAndSort:=SearchAndSort.Create();
mySearchAndSort.DTMax();
mySearchAndSort.DTMin();
myTwoDimStrD:=TwoDimenStrD.Create();
myTwoDimStrD.createNewArrayDynamic();
myTwoDimStrD.searchMax();
myTwoDimStrD.searchMin();
writeLn(Rus('Двумерный статический массив'):48);
myTwoDimStrD.printArray();
writeLn(Rus('Максимальный элемент в массиве'):48);
writeLn(myTwoDimStrD.GetMax():34);
writeLn(Rus('его номер'):38);
writeLn(myTwoDimStrD.GetNumMax():34);
writeLn(Rus('Минимальный элемент в массиве'):48);
writeLn(myTwoDimStrD.GetMin():34);
writeLn(Rus('его номер'):38);
writeLn(myTwoDimStrD.GetNumMin():34);
myTwoDimStrD.SortMin();
writeLn(Rus('Отсортированный массив по возрастанию'):48);
myTwoDimStrD.printArray();
myTwoDimStrD.SortMax();
writeLn(Rus('Отсортированный массив по убыванию'):48);
myTwoDimStrD.printArray();
mySearchAndSort.SortBubbleMax();
writeLn(Rus('Отсортированный массив по возрастанию'):48);
myTwoDimStrD.printArray();
mySearchAndSort.SortBubbleMin();
writeLn(Rus('Отсортированный массив по убыванию'):48);
myTwoDimStrD.printArray();
myArrayDynamic.deleteDynArrayT();
end
else if (choice=0) then fQuit := true ;
if (fQuit) then break;
end;
end.
Вывод
Цель нашей работы – коллективная разработка программы с использованием принципов и методов объектно-ориентированного программирования была достигнута.
В ходе проделанной работы нами были написаны алгоритмически схожие программы на pascal и С++.
Это сходство видно из протоколов тестирования при одинаковых входных данных, что доказывает эквивалентность программ на pascal и С++.