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

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

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

> Калькулятор
Mnogosisa_pravda_ona
сообщение 24.01.2009 20:11
Сообщение #1


Новичок
*

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

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


Как так сделать, чтобы выбор цифры осуществлялся нажатием клавиши "Enter" столько раз сколько одинаковых цифр надо выбрать.Например, выбрал кнопку "1" и нажал "Enter" три раза, должно получится 111. Я думаю вы меня поняли, что я хочу узнать?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 24.01.2009 22:20
Сообщение #2


Гость






Mnogosisa_pravda_ona, все довольно просто, свой цикл while true do меняешь вот на этот:
count := 0;
while true do begin
ch := #1;
while (ch <> #13) and (ch <> #0) do ch := readkey;
if ch = #0 then ch := readkey;
case ch of
#72: kn:=kn-1;
#80: kn:=kn+1;
#75: kn:=kn-1;
#77: kn:=kn+1;
#13:
begin
case kn of
1: begin plus; textcolor(red); lett := '+'; end;
2: begin minus; textcolor(red); lett := '-'; end;
3: begin multiply; textcolor(red); lett := '*'; end;
4: begin separate; textcolor(red); lett := '/'; end;
5, 6, 7, 9, 10, 11, 12, 13, 15, 16:
begin
for i := 0 to 9 do
if digits[i] = kn then a := i;
textcolor(green);
lett := chr(a + ord('0'));
end;


18: exit;
end;
gotoxy(8+count,4); write(lett); inc(count);
end;

end;
if kn=0 then kn:=18;
if kn=19 then kn:=1;
buttoms(kn);
end;
, и добавляешь вот такие константы/переменные:
const
digits: array[0 .. 9] of integer = (
11, 5, 9, 12, 15, 6, 10, 13, 16, 7
);
var
count: integer;
lett: char;

Попробуй, посмотри что получится.

А вообще, твою программу можно сократить наполовину...
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Mnogosisa_pravda_ona   Калькулятор   24.01.2009 20:11
Unconnected   А как выбирается цифра?   24.01.2009 20:20
Mnogosisa_pravda_ona   с помощью стрелок. Вот так выглядит калькулятор   24.01.2009 20:36
Unconnected   Т.е. у тебя вообще только интерфейс пока что? Нажа...   24.01.2009 20:49
Mnogosisa_pravda_ona   ну операции "+","-","/...   24.01.2009 20:51
Unconnected   Ну, как вариант, можно завести двумерный массив, в...   24.01.2009 21:19
Mnogosisa_pravda_ona   Я кстате напутал не стрелками прибавлять а "E...   24.01.2009 21:21
Unconnected   Для начала покажи то, что ты уже сделал, а то я та...   24.01.2009 21:40
Mnogosisa_pravda_ona   Короче я хочу сделать калькулятор как windows...   24.01.2009 21:48
volvo   Mnogosisa_pravda_ona, все довольно просто, свой ци...   24.01.2009 22:20
Mnogosisa_pravda_ona   Не понимаю.Считает что неправильно вызвана процеду...   24.01.2009 22:46
volvo   Я тоже не понимаю, что там у тебя происходит. Вот ...   24.01.2009 23:17
Mnogosisa_pravda_ona   Спасибо,теперь итог буду делать.   24.01.2009 23:23
Mnogosisa_pravda_ona   А вот ещё вопрос появился.Совсем не подумал как вв...   25.01.2009 0:02
Mnogosisa_pravda_ona   Никто не поможет со вторым числом?   25.01.2009 16:15
volvo   А что со вторым числом? Точно так же, как и первое...   25.01.2009 17:11
Mnogosisa_pravda_ona   А т.е. надо ко второму числу присвоить другую пере...   25.01.2009 17:18
volvo   Я этого не говорил... Вот то, что касается ввода д...   25.01.2009 18:12
Mnogosisa_pravda_ona   Ну вот действительно сюрприз! :) Там же inc...   25.01.2009 21:40
TheDimaT   program Calkulytor; uses crt; var a, b, c, d: re...   19.01.2012 22:30


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

 



- Текстовая версия 20.07.2025 2:29
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"