Задача 9 Урок 15
Primary tabs
Заполните массив из 5 элементов случайными числами из любого диапазона.
Далее пользователь вводит в цикле значения от 1 до 5 -- удаляйте из массива очередной элемент с позиции очередного введенного пользователем числа, сдвигая оставшиеся элементы второго массива влево, заполняя то, что справа нулями. Распечатывайте промежуточной состояние массива, после каждого удаления.Цикл должен работать до тех пор, пока в массиве не останется ненулевых элементов или пока пользователь не введет число большее чем 5 или меньшее чем 1.
Например:
|1|3|7|5|4| // исходный массив 3 // ввод пользователя |1|3|5|4|0| // промежуточный результат 3 // ввод пользователя |1|3|4|0|0| // промежуточный результат 2 // ввод пользователя |1|4|0|0|0| // промежуточный результат 1 // ввод пользователя |4|0|0|0|0| // промежуточный результат 1 // ввод пользователя |0|0|0|0|0| // промежуточный результат // Cообщение о завершении, т.к. все элементы удалены-- в данном случае программа завершилась, так как удалены все элементы.
Если бы пользователь ввел число 10 или -5 - то это тоже была бы ситуация для завершения, но элементы в массиве ещё бы остались.
program U15Z9; var a: array [1..5] of integer; i,n,j: integer; begin randomize(); for i:=1 to 5 do begin a[i]:=random(11)+1; write(a[i],'|'); end;
writeln();
while a[1]0 do
begin
write('vvedite chislo: ');
readln(n);
if (1
begin
for i:=n to 5 do
a[i]:=a[i+1];
writeln(a[1],'|',a[2],'|',a[3],'|',a[4],'|',a[5]);
end
else break;
end;
writeln('programma zavershena');
readln();
end.
- Log in to post comments
- 895 reads