IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Калькулятор матриц с текстовым интерфейсом, Помогите реализовать интерфейс. Посчитать и сам могу.
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 24
Пол: Мужской
Реальное имя: Алексей

Репутация: -  0  +


Всем доброго времени суток.

В институте задали написать такую программку. В принципе, ничего особо сложного, но я не имею никакого опыта создания псевдографических интерфейсов под консоль и поэтому прошу ваших советов по реализации. wacko.gif

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

Вообще интерфейс программы я представляю себе примерно так:
После запуска программы показываем пользователю меню:
  1. Калькулятор матриц
  2. Инструкция пользователю.
  3. Об авторе.
  4. Выход.

Далее пользователь выбирает пункт меню и открывается соответственно калькулятор, справка или выходим из проги.
Калькулятор запрашивает размерность новой матрицы. После ввода ширины и высоты программа выводит пустую табличку с заданной размерностью с нулями в её ячейках. Далее пользователь перемещает курсор по ячейкам и вводит туда нужные числа. После заполнения программа запрашивает вторую матрицу и выполняемое действие (сложение, вычитание, умножение)....
В любой момент времени пользователь может нажать для вызова справки F1. Должно открыться что то вроде окна с инструкцией. После нажатия на какую-нибудь клавишу окно должно закрыться и пользователь может продолжить заполнение матрицы.
Вот как раз с этим проблемы. С меню я разобрался частично сам, частично помог форум.
Но когда я выбираю пункт меню, то открывается по идее совершенно иная программа. И все нажатые клавиши будут выполнять уже совершенно иные действия (перемещение курсора по ячейкам таблицы, редактирование ячеек и т.п. вместо перемещения по пунктам меню). КАК вообще можно реализовать ТАКОЕ?? Я себе представляю только такое решение:
заводим что то вроде флага режима работы (чтобы определять, где мы находимся в данный момент и выполнять в зависимости от этого соотв. действия). Затем при перемещении по пунктам меню меняем флаг и в зависимости от флага и нажатой клавиши выполняем те или иные действия (рисуем табличку, запрашиваем данные и т.п...) Но что-то страшное решение получается.. даже толком не знаю в каком направлении копать... уже весь этот форум перерыл - ничего конкретного не нашел. Буду признателен, если кинетесь в меня ссылками на учебники/пособия/сайты в Инете по данной тематике или сами посоветуете, как проще и красивше можно реализовать подобное... blink.gif
P.S. знаю,что существует модуль F_Mouse... думаю, может его заюзать? подскажите, где в Инете его найти можно, а то я поискал немного и не смог найти... а времени совсем нет его искать...

Заранее спасибо и респект всем откликнувшимся. cool.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 19.04.2024 8:01
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name