М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Iraa26
Iraa26
25.03.2022 01:56 •  Информатика

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 k< =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;

👇
Ответ:
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 k<=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; //выход из вложенного цикла
//нет выхода из основного цикла
//нет завершения программы
//Абсолютно нерабочий код
//Сожгите автора как ведьму
4,5(25 оценок)
Открыть все ответы
Ответ:
ппп278
ппп278
25.03.2022
 const nx = 20;
var x: array[1..nx, 1..nx] of integer;z:array[1..nx*2] of integer; 
i, j, k,n,r,t: integer; 
begin 
Writeln('Введите размер матрицы n');Read(n); 
 for i := 1 to n do begin   
for j := 1 to n do begin   
Read(k);x[i, j] := k;  end;end;   
Writeln('Исходный массив'); 
for i := 1 to n do begin   
for j := 1 to n do begin     
Write(x[i, j]:4);     
if x[i, j]>0 then begin t:=t+1; z[t]:=x[i, j];end;    
end;   
Writeln;  end; 
Writeln;Writeln('Одномерный массив'); 
for j := 1 to t do     
Write(z[j]:4); 
 end.
4,7(96 оценок)
Ответ:
annetalovecamar
annetalovecamar
25.03.2022
// PascalABC.NET 3.0, сборка 1139 от 10.01.2016
begin
  var n:=ReadInteger('Количество элементов в массиве: ');
  var a:=ArrRandom(n,-50,50);
  a.Println(',');
  Writeln('Четные элементы: ');
  var i:=1;
  while i<n do begin Write(a[i],' '); Inc(i,2) end;
  Writeln;
  Writeln('Нечетные элементы: ');
  i:=0;
  while i<n-1 do begin Write(a[i],' '); Inc(i,2) end;
  Writeln
end.

Тестовое решение:
Количество элементов в массиве:  10
15,-18,-29,-25,46,21,-8,-17,-9,15
Четные элементы:
-18 -25 21 -17 15
Нечетные элементы:
15 -29 46 -8 -9
4,8(11 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ