Ввод без перехода на следующую строку - Pascal

Узнай цену своей работы

Формулировка задачи:

Ещё раз здравствуйте! Можно ли в pascal-е организовать ввод значений нескольких операндов без перехода на след. строку (не пробелами). После нажатия на клавишу "Enter" хотелось бы организовать ввод на той же строке Пример:
For i:=1 to n do 
begin
Write(i,': '); 
Read(a[i]);
Write('  ');
end;

Решение задачи: «Ввод без перехода на следующую строку»

textual
Листинг программы
uses
  crt;
const
  n=10;
var
  a:array[1..n]of string;
  i,pos:integer;
begin
  for i:=1 to n do
  begin
    write(i,':');
    readln(a[i]);
    inc(pos,length(a[i])+4);
    GotoXY(pos,1);
  end;
end.

Объяснение кода листинга программы

  1. В начале объявляются необходимые переменные: n, a, i, pos.
  2. Затем используется функция crt для ввода без перехода на следующую строку.
  3. Далее идет цикл for, который выполняется n раз (от 1 до 10).
  4. Внутри цикла выводится значение переменной i, за которым следует двоеточие, и затем происходит чтение значения переменной a[i] с помощью функции readln.
  5. После этого значение переменной pos увеличивается на длину прочитанного значения плюс 4.
  6. И, наконец, с помощью функции GotoXY выводится позиция, где должно быть напечатано значение переменной a[i].
  7. Конец программы.

Оцени полезность:

9   голосов , оценка 4.444 из 5
Похожие ответы