Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
1 / 1 / 2
Регистрация: 23.10.2011
Сообщений: 155
1

Движение надписи нажатием клавиш

23.10.2011, 20:13. Показов 2123. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
вот пробую
при нажатии на клавишу надпись должна сместиться
что тут не правильно
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Program graf;
uses crt;
 
label start; label conec;
var n,i: integer; x,y:real; k:char; Sym: Char
begin
     clrscr;
     start:
     if keypressed then
     case readkey of
 
           begin
          k:=readkey;
 
          if (k=#77) then x:=x+1;
 
 
     gotoxy (x,y);
     write ('nikotan');
         end;
     Sym:= readkey;
     if Sym = 'q' then goto conec;
     goto start;
     conec:
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.10.2011, 20:13
Ответы с готовыми решениями:

Управление анимацией нажатием клавиш
чтоб при нажатии на цифри 1..6 било какоето движение

Нажатием клавиши Enter осуществить движение строки по диагонали экрана, изменяя при этом цвет
Ввести произвольный строку с клавиатуры. нажатием клавиши Enter осуществить движение этой строки...

Движение точки по нажатию клавиш
Упростил программу, чтобы хотя бы при нажатии одной клавиши (w) точка двигалась. С текстом...

Движение квадрата по нажатию клавиш
Составьте программу по следующему сценарию: на экране нарисован квадратик. При нажатии клавиш...

12
135 / 135 / 29
Регистрация: 18.10.2011
Сообщений: 306
23.10.2011, 20:29 2
Ужас ) Во первых: незачем использовать keypressed. ReadKey и так будет ожидать нажатия клавиши.
Во вторых: что за хрень у вас с CASE ?
В третьих: Это не ассемблер что бы метки использовать ) Используйте цикл repeat-until.
Pascal
1
2
3
4
repeat
...
key:=readkey;
until key='q';
0
1 / 1 / 2
Регистрация: 23.10.2011
Сообщений: 155
23.10.2011, 20:39  [ТС] 3
да вот в институт поступил а там надо на турбо паскале задачи решать , корень вычислить и т.д. ,
но я когда-то на спектруме игры писал , на бейсике и ассамлблере(zeus), вот тут хотел попробовать чтоб от курсора по экрану двигалось хотя бы буква, не мог бы помочь как надо правильно в паскале делать( нэт уже 3 дня копаю вот откуда эти куски), надо просто чтоб от курсора двигалась буква по экрану, но есть загвоздка , помимо этого я хочу много туда запихать , вот и поэтому надо чтоб всё время надпись(в любом углу) переливалась разными цветами всегда, тоесть должна быть циркуляция в программе ( если я не нажимаю кнопку прога должна делать все остальные операции)
0
135 / 135 / 29
Регистрация: 18.10.2011
Сообщений: 306
23.10.2011, 20:52 4
Как-то так можно. Подумайте =/
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
..
repeat
    repeat
    {Тутможно что-нитьделать пока не нажата кнопка}
    until keypressed;
    key:=readkey;
    case key of
     'a': begin {тут еще че-нить} end;
     'b': begin {тут еще че-нить} end;
     'c': begin {тут еще че-нить} end;
      else begin {ничего не совпало} end;
    end;
until key='q';
end.
0
1 / 1 / 2
Регистрация: 23.10.2011
Сообщений: 155
23.10.2011, 21:05  [ТС] 5
спасибо, но я в турбо паскале несколько дней и что делать перед
..
repeat
я не знаю , может хоть как-то поможешь ? если чесно я "repeat" не знаю как работает, мне бы хоть начать ,чтоб я понял как правильно писать на ТБ7
0
135 / 135 / 29
Регистрация: 18.10.2011
Сообщений: 306
23.10.2011, 21:12 6
Структура программы на турбо паскаль
Там же можешь посмотреть что такое repeat-until цикл. Кратко могу сказать, что он выполняет все инструкции от репит до антил пока не выполнится условие идущее после него т.е. until <условие>
0
1 / 1 / 2
Регистрация: 23.10.2011
Сообщений: 155
23.10.2011, 21:23  [ТС] 7
Pascal
1
2
3
4
5
6
7
8
Repeat
  Ch:=GetChar
 Until Ch<>' ';
 
 Repeat
  Write('Введите значение : ');
  ReadLn(I);
 Until (I>=0) And (I<=9);
вот и всё что я там нашёл , если честно мне трудно понять пока, как это мне поможет
я вот и хочу тебя попросить, ты бы не смог написать полную прогу, чтоб по экрану от курсора двигалась буква и надпись меняла цвет?
0
135 / 135 / 29
Регистрация: 18.10.2011
Сообщений: 306
23.10.2011, 22:34 8
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Я не проверял. Может будет работать. Но принцип понятен. пока не нажата клавиша выводим текст по текущим координатам с рандомным цветом с задержкой в 1 сек. если нажата w то x++ , s то y++ q -bb/
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Program graf;
uses crt,Graph;
 
var n,i: integer; gd,gm,x,y:integer; key:char;
begin
     gd:=detect;
     initgraph(gd,gm,'');
     x:=GraphResult;
     if x<>0 then begin
      writeln(grapherrormsg(x));
      halt;
     end;
     x:=0;
     y:=x;
     randomize;
repeat
        repeat
          ClearViewPort;
           setColor(random(20));
           outtextXY(x,y,'bla-bla');
           delay(1000);        
        until keypressed;
        key:=readkey;
        case uppercase(key) of
         'W': begin if(x>=getmaxx) then x:=0 else inc(x); end;
         'S': begin if(y>=getmaxy) then y:=0 else inc(y); end;
        end;
until key='q';
closeGraph;
end.
Добавлено через 18 минут
fxd
Pascal
1
2
3
4
ClearViewPort;
           setColor(random(GetMaxColor));
           outtextXY(x,y,'bla-bla');
           delay(1000);
0
1 / 1 / 2
Регистрация: 23.10.2011
Сообщений: 155
23.10.2011, 22:49  [ТС] 9
огромное спасибо , буду пробовать и разбираться.

Добавлено через 9 минут
выдаёт ошибку
error 3:unknown identifier
uppercase(key) ----курсор под "u" стоит . может доведём до ума , могу до завтра подождать.
0
135 / 135 / 29
Регистрация: 18.10.2011
Сообщений: 306
23.10.2011, 23:00 10
Цитата Сообщение от nikotan Посмотреть сообщение
огромное спасибо , буду пробовать и разбираться.

Добавлено через 9 минут
выдаёт ошибку
error 3:unknown identifier
uppercase(key) ----курсор под "u" стоит . может доведём до ума , могу до завтра подождать.
на upcase надо заменить. Это мне чет js в голову дарил )

Добавлено через 6 минут
щя запустил ) сюда бы еще такое добавить
Pascal
1
2
3
4
5
           ClearViewPort;
           setColor(random(GetMaxColor));
           outtextXY(x,y,'bla-bla');
           if keypressed then break;
           delay(500);
0
1 / 1 / 2
Регистрация: 23.10.2011
Сообщений: 155
23.10.2011, 23:02  [ТС] 11
ошибок нет но выдаёт
16-разрядная подсистема S-DOS
Turbo Pascal
Процессор NTVDM обнаружил недопустимую инструкцию.
S:6c6c IP:4c97 ...
0
135 / 135 / 29
Регистрация: 18.10.2011
Сообщений: 306
23.10.2011, 23:09 12
Поставь school pak c tp. Может пройдет. У мня таких ошибок нет.
0
1 / 1 / 2
Регистрация: 23.10.2011
Сообщений: 155
24.10.2011, 09:49  [ТС] 13
у меня:

windows xp sp3
Turbo Pascal 7
K:\paskal\TP_7_RusLg\TP_7_RusLg\tp7\BIN

а подскажи что такое "school pak c tp" и куда его подставить ?

не думай что я не понимаю, просто для каждой проги своё
в 3ds max одно , в premere другое , в фотошоп третье , в винде и первое, и второе, и треть вместе взятое, я к чему везде свои тараканы, мне для учёбы надо знать турбо паскаль 7 , хотя бы что б здать курсовую ( покупать не хочу, не для того пошёл учиться) если можешь помоги, спасибо , до завтра!

Добавлено через 10 часов 22 минуты
вот всё исправил, ошибок нет, при запуске появляеться чёрный экран (на весь экран) ,и всё, ни работает ничего , выйти могу только при Ctrl+alt+del
может, что-то с Graph не в порядке ?
может ТР7 надо устанавливать? я его просто с нэта скачал и в папку скинул.
0
24.10.2011, 09:49
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.10.2011, 09:49
Помогаю со студенческими работами здесь

Движение треугольника по нажатию клавиш
Надо рисовать треугольник . при нажатие клавиш w треуголник должно двигатся вверх. s- вниз, a-в...

Движение фигуры по нажатию двух клавиш
Здравствуйте! Подскажите, как прописать код, чтобы фигура начинала двигать при нажатии Alt+любая...

Графика: движение машины по нажатию клавиш
Добрый день. Написал программу вывода рисунка через Graph. Сейчас надо чтобы двигалась машина а фон...

Движение Ромба Под Управлением Клавиш Стрелок
Program Pract16; Uses Crt, Graph; Const NMax = 20; Var X, Y, R1, R2, C, T1, T, X1, Y1,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru