Форум программистов, компьютерный форум, киберфорум
Наши страницы

Turbo Pascal

Войти
Регистрация
Восстановить пароль
 
007imran007
1 / 1 / 0
Регистрация: 08.07.2012
Сообщений: 83
#1

Как осуществить бесконечный ввод - Turbo Pascal

30.12.2013, 15:14. Просмотров 1201. Ответов 8
Метки нет (Все метки)

Написал программу которая узнает внутренний код элемента и наоборот.
Смысл программы:
вводишь число/символ он показывает код/символ, типа 16 = ►
Так вот, она все выполняет, но после ввода->показа ждет нажатия любой клавиши и закрывается. Из-за этого приходится запускать ее заново, чтобы посмотреть еще.
Вопрос:
Как сделать чтобы можно было проверять много символов? (он также в названии темы)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.12.2013, 15:14
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как осуществить бесконечный ввод (Turbo Pascal):

Ошибка в коде, идет бесконечный ввод данных - Turbo Pascal
program Project1; uses crt; const zodiak:array of string = ('Vodoley (21.01-19.02)','Ribi (20.02-20.03)','Oven (21.03-20.04)','Telec...

Осуществить ввод данных в массив - Pascal
Ввести массив A и число P . Для каждого элемента массива вычислить функцию B= e в степени Аi разделить на Р . Найти сумму целых ...

Осуществить ввод элементов заданного множества с клавиатуры - Pascal
Осуществить ввод элементов заданного множества с клавиатуры.Определить является ли множество {'T' , 'h' , 'j' , 'к'} его подмножеством. ...

Множества. Осуществить ввод элементов двух множеств и проверить, принадлежат ли элементы их пересечению - Turbo Pascal
осуществить ввод элементов двух заданных множеств с клавиатуры и проверить принадлежат ли элементы(так же вводимые с клавиатуры) их...

Найти стороны треугольника. Ввод данных и вывод результата осуществить с помощью файлов - Pascal
Треугольник задан величинами своих углов и радиусом описанной окружности. Найти стороны треугольника. Ввод данных и вывод результата...

Как остановить бесконечный цикл?! - Pascal
Написал программу, ошибся, и она запустила бесконечный цикл. На что нажать (на клавиатуре) что бы его остоновить? :(

8
Joker_vad
Эксперт 1С
468 / 408 / 52
Регистрация: 26.09.2012
Сообщений: 1,794
30.12.2013, 15:19 #2
делай в цикле , выход из цикла по нажатию клавиши ESC

Добавлено через 1 минуту
Pascal
1
2
3
4
5
6
var c:char;
begin
repeat
.....сам код....
c:=readkey;
until c<>#27
1
007imran007
1 / 1 / 0
Регистрация: 08.07.2012
Сообщений: 83
30.12.2013, 15:24  [ТС] #3
Цитата Сообщение от Joker_vad Посмотреть сообщение
делай в цикле , выход из цикла по нажатию клавиши ESC

Добавлено через 1 минуту
Pascal
1
2
3
4
5
6
var c:char;
begin
repeat
.....сам код....
c:=readkey;
until c<>#27
спс помогло!
0
Puporev
Модератор
54019 / 41652 / 14730
Регистрация: 18.05.2008
Сообщений: 97,916
30.12.2013, 15:24 #4
Например так.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
uses crt;
var k:integer;
begin
clrscr;
repeat
writeln('Вводите коды символов от 0 до 255, окончание ввода 0');
repeat
readln(k);
until k in [0..255];
if k>0 then writeln(chr(k));
until k=0;
end.
1
007imran007
1 / 1 / 0
Регистрация: 08.07.2012
Сообщений: 83
30.12.2013, 15:39  [ТС] #5
действительно, ваш вариант логичнее и удобнее, но в книге я пока не дошел до этого, поэтому использую то что есть. Пробую то что написали выше пишет, выдает ошибку "unknown identifer" хотя я описываю в начале. Вот код:
я про ответ от Joker_vad - он не пашет
0
Миниатюры
Как осуществить бесконечный ввод  
Puporev
Модератор
54019 / 41652 / 14730
Регистрация: 18.05.2008
Сообщений: 97,916
30.12.2013, 15:46 #6
После else часть кода тоже нужно заключить в операторные скобки begin... end;

Добавлено через 2 минуты
Кстати код не нужно выкладывать скрином, его нельзя копировать и редактировать. Нужно выкладывать просто копию файла .pas из текстового редактора.
1
007imran007
1 / 1 / 0
Регистрация: 08.07.2012
Сообщений: 83
30.12.2013, 16:10  [ТС] #7
Цитата Сообщение от Puporev Посмотреть сообщение
После else часть кода тоже нужно заключить в операторные скобки begin... end;

Добавлено через 2 минуты
Кстати код не нужно выкладывать скрином, его нельзя копировать и редактировать. Нужно выкладывать просто копию файла .pas из текстового редактора.
смысл понял, но на практике все равно выдает ту же ошибку. Вот код:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
program fgdsgf;
 var
a:integer;
b,c,d:char;
 begin
d:=readkey;
writeln('4islo v simvol?  y/n');
readln(c);
 if c = 'y' then begin
writeln('Vvedi 4islo:');
readln(a);
writeln(a, ' = ',chr(a));
end
else
begin
writeln('Vvedi simvol:');
readln(b);
writeln(b, ' = ',ord(b));
end;
repeat
until d<>#27
 end.
Наверно нужно изменить расстановку этих команд, но попытки ни к чему не приводят. Операторные скобки добавил.
0
Puporev
Модератор
54019 / 41652 / 14730
Регистрация: 18.05.2008
Сообщений: 97,916
30.12.2013, 17:20 #8
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
program fgdsgf;
uses crt;
var a:integer;
    b,c,d:char;
begin
clrscr;
repeat
writeln('4islo v simvol? Vyhod Esc.  y/n');
repeat
c:=readkey;
if c<>#27 then writeln(c);
until c in ['y','n',#27];
if c = 'y' then
 begin
  repeat
  writeln('Vvedi 4islo:');
  readln(a);
  until a in [0..255];
  writeln(a, ' = ',chr(a));
 end
else if c='n' then
 begin
  writeln('Vvedi simvol:');
  readln(b);
  writeln(b, ' = ',ord(b));
 end
else if c=#27 then exit
until c=#27
end.
1
007imran007
1 / 1 / 0
Регистрация: 08.07.2012
Сообщений: 83
30.12.2013, 18:15  [ТС] #9
огромное спасибо, принцип понятен
0
30.12.2013, 18:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.12.2013, 18:15
Привет! Вот еще темы с ответами:

Подскажите как сюда впарить бесконечный цикл? - Turbo Pascal
program Caesar; const n=3; function asc2(toCode:string):string; var x,y:integer; begin for x:=1 to length(toCode) do begin ...

Как осуществить дозапись элементов в массив - Turbo Pascal
Добрый вечер. Ребят, помогите мне с задачей. Мне в задании сказано, чтобы я составил процедуру, образующую из 2ух целочисленных...

Как осуществить оценку прошедшего времени? - Turbo Pascal
То есть имеется ли процедура, аналогичная Delay, только без остановки программы на это время, или каким еще образом можно запустить...

интеграл от 0 до П/4 tg в кубе*xdx непойму как это осуществить ??? - Turbo Pascal
интеграл от 0 до П/4 tg в кубе*xdx непойму как это осуществить ???


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru