Разработать программу для ввода последовательности из n <= 255 вещественных чисел - Free Pascal

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

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

Прошу помочь разобраться со следующей программой. Мне нужно разработать программу для ввода последовательности из n <= 255 вещественных чисел. Пользователь должен вводить значения в формате: номер_в_последовательности - значение. Если значение с таким номером уже введено, то необходимо выдавать соответствующий запрос на подтверждение операции перезаписи и изменять старое значение (записывать "поверх" его новое значение), если такое подтверждение получено. Вывести множество введенных новых элементов (их номера) и множество измененных элементов. Видел что-то подобное на C, но не совсем понимаю, как это переписать под Pascal.

Решение задачи: «Разработать программу для ввода последовательности из n <= 255 вещественных чисел»

textual
Листинг программы
var
  e, m: set of Byte;
  a: array [1..255] of Real;
  t: Real;
  n, p: Integer;
begin
  WriteLn('Вводите пары номер число, окончание - 0');
  repeat
    Read(n); if n=0 then Break;
    ReadLn(t);
    if n in e then begin
      Write('Переписать (1-да/иначе-нет): '); ReadLn(p);
      if p=1 then begin
        Include(m,n); a[n]:=t;
      end;
    end else Include(e,n);
  until False;
  Write('Введены:'); for n in e-m do Write(' ',n); WriteLn;
  Write('Изменены:'); for n in m do Write(' ',n); WriteLn;
end.

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

  1. В начале кода объявлены следующие переменные:
    • e, m: set of Byte;
    • a: array [1..255] of Real;
    • t: Real;
    • n, p: Integer;
  2. Далее выводится сообщение с просьбой вводить пары номер-число, заканчивая вводом 0.
  3. Затем начинается цикл, который продолжается до тех пор, пока не будет введено значение 0.
  4. Внутри цикла происходит чтение номера и числа. Если номер равен 0, то цикл прерывается.
  5. Если номер уже присутствует в переменной e, то пользователю предлагается переписать значение (1 - да, 0 - нет). Если пользователь выбирает переписать, то номер добавляется в переменную m, а число присваивается соответствующему элементу массива a.
  6. Если номер не найден в переменной e, то он добавляется в эту переменную.
  7. После окончания цикла выводится список введенных чисел и список измененных чисел.
  8. Для этого используется два вложенных цикла, в которых выводятся номера на экран. Первый цикл проходит по элементам переменной e, а второй - по элементам переменной m.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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