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

Заполнить массив случайными числами в интервале и переставить элементы так, чтобы все положительные элементы стояли в начале массива, а все отрицательные и нули – в конце.
program p2;
var i,c:integer;
a:array[1..10] of integer;
b:array[1..10] of integer;
begin
for i:=1 to 10 do begin
a[i]:=random(1000)-10;
write(a[i],' ');
end;
c:=1;
for i:=1 to 10 do
begin
if a[i]>0 then
begin
b[c]:=a[i];
c:=c+1;
end;
end;
for i:=1 to 10 do
begin
if a[i]<=0 then
begin
b[c]:=b[i];
c:=c+1;
end;
end;
for i:=1 to 10 do
writeln(' ');
for i:=1 to 10 do
write(b[i]:4,' ');
writeln;
end.
Вот написала, не выводит. Какая ошибка

👇
Открыть все ответы
Ответ:
fdods2
fdods2
07.05.2021

//PascalABC.Net 3.1 сборка 1200

var

   number: integer;

   sum, sum_all, k: integer;

begin

   repeat

       write('Элемент последовательности => ');

       readln(number);

       

       if (number mod 10 = 2 ) and (number mod 4 = 0) then sum := sum + number;

       if (number <= 100) then k := k + 1;

       sum_all := sum_all + number;

   until number = 0;

   

   writeln('Сумма всех чисел, которые кратны 4 и заканчиваются на цифру 2 = ', sum);

   writeln('Сумма всех = ', sum_all);

   writeln('Кол-во чисел, которые не больше 100 = ', k);

end.

4,8(44 оценок)
Ответ:
ALEXANDER982
ALEXANDER982
07.05.2021

нумерация элементов, а соответственно и строк в массиве начинается с 0

программа не проверяет введенные данные на корректность, то есть если ввести номер строки выходящий за рамки массива то будет ошибка.

так как не было указано где брать элементы массива то он заполняется случайными числами в диапозоне 0..100

var

   n, k : integer;

   a : real;

   var d : array[,] of real;

begin

   write('введите размер матрицы n=');

   readln(n);

   d := new real[n,n];

   for var i := 0 to n-1 do begin

       for var j := 0 to n-1 do d[i,j] := random(101);

   end;

   write('введите номер строки k=');

   readln(k);

   a := d[k,k];

   for var i := 0 to n-1 do if d[k,k] <> 0 then d[k,i] := d[k,i]/a;

end.

4,5(20 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
Полный доступ к MOGZ
Живи умнее Безлимитный доступ к MOGZ Оформи подписку
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ