Дан фрагмент программы:
read(a); read(b); c := a + b; write(a); write(b); write(c)
Сделайте его запись короче, сократив количество операторов ввода и вывода.
Два последовательных оператора read(a) и read(b) считывают два значения в порядке a, затем b. Один оператор со списком ввода read(a, b) делает то же самое: первое значение помещает в a, второе — в b.
Присваивание c := a + b оставляем: оно вычисляет сумму уже считанных чисел и записывает её в c.
Три оператора write можно объединить в один со списком вывода. Порядок элементов a, b, c сохраняем, чтобы результат работы фрагмента остался тем же: значения печатаются подряд без разделителей. Получаем:
read(a, b);
c := a + b;
write(a, b, c);
Например, если введены c := , а вывод без разделителей будет , как в исходном фрагменте. Число операторов ввода уменьшилось с двух до одного, вывода — с трёх до одного.
read(a, b);
c := a + b;
write(a, b, c);
