ТутРешу.Ру

Паскаль. Программа работает…

Задание:

Паскаль. Программа работает, но выдает не тот результат — вставляет заданное число на первое место изачем-то меняет другими числами оставшиеся элементы массива. Что надо исправить? Условие: Вставить перед первым четным элементом массива заданное число.program vstavka; var i,n,k,z: integer; a: array[1… 1000] of integer; beginassign (input,'input.txt'); assign (output,'output.txt'); reset (input); rewrite (output); readln (n,z); for i: =1 to n do read (a[i]); i: =a[1]; for i: =1 to n doif a[i] mod 2=0 thenbeginfor k: =n+1 downto k+1 doa[i]: =a[i-1]; a[k]: =z; n: =n+1; break; end; for i: =1 to n do write (a[i],'); close (input); close (output); end.

Решение:

Program vstavka; var i,n,k,z: integer; a: array[1… 1000] of integer; beginassign (input,'input.txt'); assign (output,'output.txt'); reset (input); rewrite (output); readln (n,z); for i: =1 to n do read (a[i]); i: =a[1]; // что это? Удаляемfor i: =1 to n doif a[i] mod 2=0 thenbegink: =i; for i: =n+1 downto k+1 doa[k]: =a[k-1]; // вместо i берем ka[k]: =z; break; end; for i: =1 to n do write (OutPut, a[i]: 4); close (input); close (output); end. Теперь должно работать




Знаете другой ответ?

Отправить свой ответ