Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая программирование.doc
Скачиваний:
15
Добавлен:
19.03.2016
Размер:
931.33 Кб
Скачать

Файл «sort.C»

#include "my.h"

unsigned char sorttag() { // Запрос выбора критерия сортировки

line = 4; // Количество критериев сортировки

pos = 1;

sortupdate(pos); // Обновление окна

do {

key = getch();

switch(key) {

case 72: { // Нажата стрелка вверх

/*

pos = pos - 1;

if(pos == 0)

pos = line;

*/

__asm {

mov al, pos;

mov bl, line;

sub al, 1; // pos = pos - 1

cmp al, 0;

je equally; // если al = 0, перейти по метке equally

jmp assignment; // безусловный переход по метке assignment

equally:

mov al, bl; // pos = line

assignment: // Значение из регистра al в переменную pos

mov pos, al;

}

sortupdate(pos);

break;

}

case 80: { // Нажата стрелка вниз

pos++;

if(pos == (line + 1))

pos = 1;

sortupdate(pos);

break;

}

case 13: { // Нажат ввод

key = 0;

break;

}

}

} while(key != 0);

return pos;

}

void sortupdate(unsigned char pos) { // Обновление запроса критерия сортировки

system("cls");

printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n%27c", 201);

for(i = 1; i <= 22; i++)

printf("%c", 205);

if(pos == 1) {

printf("%c\n%27c * product name %c\n%27c", 187, 186, 186, 204);

} else

printf("%c\n%27c product name %c\n%27c", 187, 186, 186, 204);

for(i = 1; i <= 22; i++)

printf("%c", 205);

if(pos == 2) {

printf("%c\n%27c * product code %c\n%27c", 185, 186, 186, 204);

} else

printf("%c\n%27c product code %c\n%27c", 185, 186, 186, 204);

for(i = 1; i <= 22; i++)

printf("%c", 205);

if(pos == 3) {

printf("%c\n%27c * number of products %c\n%27c", 185, 186, 186, 204);

} else

printf("%c\n%27c number of products %c\n%27c", 185, 186, 186, 204);

for(i = 1; i <= 22; i++)

printf("%c", 205);

if(pos == 4) {

printf("%c\n%27c * product cost %c\n%27c", 185, 186, 186, 200);

} else

printf("%c\n%27c product cost %c\n%27c", 185, 186, 186, 200);

for(i = 1; i <= 22; i++)

printf("%c", 205);

printf("%c\n", 188);

}

Приложение b

Снимки экрана

Заставка

Главное меню

Меню сортировки

Таблица товаров

Приложение С

Результат работы программы

Файлdata.txt:

13

Paper*00111*500*199

Pan*abccc*950*25

Battery "Panasonic"*192md*300*49

Notebook*01111*1200*2

Pan (Gel)*abddd*400*50

Chair*888abc*75*900

Notebook (18 pages)*01113*500*3

Clock "Fossil"*ch2564*33*4360

Toaster "Philips"*ff45hj*125*2190

Notebook (96 pages)*01112*87*45

Dishes*dufhhf*42*420

Clock "Casio"*110ts*13*7490

Whatman Paper*002222*140*20

8