ДАЮ 90 баллов. Распишите каждый шаг пожалуйста(учителю разъяснить надобно)var a:array[1..100]

ДАЮ 90 баллов.
Распишите каждый шаг пожалуйста(учителю разъяснить надобно)

var a:array[1..100] of integer;
i,j,c,k,n:integer;
f:boolean;
begin
writeln('vvedite razmer massiva');
readln(n);
writeln('vvedite el-ty massiva');
for i:=1 to n do
begin write('a[',i,'] = ');readln(a[i]);end;
writeln('massiv');
for i:=1 to n do write(a[i]:4);
writeln;
k:=2;
while klt;=n do
begin
c:=a[k];
i:=1;
if c while f do
begin
a[k-i+1]:=a[k-i];
i:=i+1;
f:=false;
if i if c end;
a[k-i+1]:=c;
k:=k+1;

for i:=1 to n do write(a[i]:4);
writeln;

end;

Задать свой вопрос
1 ответ
Var a:array[1..100] of integer; //объявляем целочис. массив из 100 элементов
i,j,c,k,n:integer; //целочислительные переменные
f:boolean;// логические переменные
begin // начало программы
writeln('vvedite razmer massiva'); //выводим текст
readln(n); //вводим переменную n
writeln('vvedite el-ty massiva'); //выводим текст
for i:=1 to n do  //повторить n раз
begin write('a[',i,'] = ');readln(a[i]);end;
отвратительный кодстайл. В данном цикле заполняем массив n количеством частей. Как словно нельзя было объявить динамический массив
writeln('massiv');       //вывод текста
for i:=1 to n do write(a[i]:4);  //выводим n частей массива
writeln; //сносим строку
k:=2; //k=2
while klt;=n do //пока k меньше либо одинаково n исполнять
begin //начало тела цикла
c:=a[k]; //с=a[k]
i:=1;     //i=1
if c while f do //ОШИБКА, странноватое сочетание логического оператора и цикла с предусловием
begin //начало тела вложенного цикла, объявленного ложно
a[k-i+1]:=a[k-i];
элементу массива a, индекс которого равен k-i+1 присваивается элемент массива a, индекс которого равен k-i, по сущности, это просто сдвих массива на один элемент
i:=i+1; //увеличение i на 1
f:=false; //f=ересь
if i if c end; //ОШИБКА, совершенно упоротое сочетание условных операторов
a[k-i+1]:=c;
элементу массива a, индекс которого равен k-i+1 присваивается c
k:=k+1; //k возрастает на 1
                 //комментарий как у меня
for i:=1 to n do write(a[i]:4); //снова вывод от 1 до n частей массива
writeln; //сноска строки

end; //выход из вложенного цикла
//нет выхода из главного цикла
//нет окончания программки
//Безусловно нерабочий код
//Сожгите творца как колдунью
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт