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

Заполнить двумерный массив случайными числами. размерность массива и диапазон генерации вводятся с клавиатуры. составить программу, которая вычисляет сумму всех элементов массива. затем организовать новый массив в, в котором заменить отрицательные элементы исходного массива на 1, а значения остальных элементов оставить без изменения. подсчитать количество замен.

👇
Ответ:
sdoleg2011
sdoleg2011
24.12.2021
Program primer;
procedure random(c,x,y:integer; var r:integer);
    begin
        case c of
                1 : r:=Random(ABS(Y)+ABS(x)+1)+x;
                2 : r:=Random(ABS(Y)+ABS(x)+1)+y;
                3 : r:=Random(Y-x+1)+x;
                4 : r:=Random(x-y+1)+y;
                5 : r:=Random(x+y);
                6 : r:=Random(ABS(x+y))-ABS(x+y);
                7 : r:=x;
                8 : r:=Random(ABS(ABS(x)-ABS(y)))-ABS(x);
                9 : r:=Random(ABS(ABS(x)-ABS(y)))-ABS(y);
        end;
   end;
var
  a,b: array of array of integer;
  i,j,x,y,c,m,p,sum:integer;  begin
Randomize;
sum:=0;
writeln('Кол-во строк и столбцов массива? //X,Y\\  ');
read(i,j); //Размерность массива
writeln('Диапазон чисел //от X,до Y\\ '); 
read(x,y); //и диапазон генерации вводятся с клавиатуры.
if (x=y) then
c:=7
else
if(x<0) and (y<0) then 
if (x<y) then 
c:=8
else
c:=9
else
if (x=0) or (y=0) then 
if(x<0) or (y<0) then 
c:=6
else
c:=5
else
if(x<0) or (y<0) then 
if (x<y) then 
c:=1
else 
c:=2
else
if (x<y) then 
c:=3
else 
c:=4;
SetLength(a,i);
for  m:=0 to i-1 do
  SetLength(a[m],j);
  SetLength(b,i);
  for  m:=0 to i-1 do
  SetLength(b[m],j);    
for  m:=0 to i-1 do begin  
writeln();
     for  p:=0 to j-1 do   begin                     
     random(c,x,y,a[m,p]);    {Заполнить двумерный массив случайными числами.}         
 sum:=sum+a[m,p];  {вычисляет сумму всех элементов массива}
          write (a[m,p]:3,' ':3);
           end; 
         end;  
        c:=0;   
        writeln('summa=',sum);  
 for  m:=0 to i-1 do begin {Затем организовать новый массив В  }
writeln();
     for  p:=0 to j-1 do  begin            
 if (a[m,p] <0) then          begin  
       b[m,p]:=1; {в котором заменить отрицательные элементы исходного массива на 1}        inc(c);  {Подсчитать количество замен.   }
   end       
   else         
  b[m,p]:=a[m,p]; {а значения остальных элементов оставить без изменения }
   write(b[m, p]:3, ' ':3);      
  end;         
 end;         
 writeln('kol=',c);        
  a:=NIL;          
b:=NIL;     
end.
// ABC Pascal
4,6(62 оценок)
Открыть все ответы
Ответ:
sashkoefymets
sashkoefymets
24.12.2021
Данный  фрамент программы прибавляет к с значение последней цифры числа а, если она нечетна, после чего отбрасывает эту цифру. Таким образом, значение с будет равно сумме всех нечетных цифр числа 1257, т.е. 13. Это, судя по всему, так задумывалось. А на самом деле трудно сказать, попадет ли "c:=c+b" в условие, или будет выполняться всегда. Если второе, то вместо каждой четной цифры к с будет прибавляться значение предыдущей(т.е. ближайшей справа) нечетной, и результат будет 18. При проверке у меня получилось 18
ответ: 4 или 2.
4,6(9 оценок)
Ответ:
lyba228337ggg
lyba228337ggg
24.12.2021
16. 4 числа:
1915 – не могло: в порядке неубывания число делится на 1 и 915, 915 – не сумма двух цифр
20 – не могло: не делится на два числа в порядке неубывания, только 2 и 0
101 – не могло: не делится на два числа в порядке неубывания, только 10 и 1
1213 – могло, например, для числа 6667
1312 – не могло: в порядке неубывания число делится на 1 и 312, 312 – не сумма двух цифр
312 – могло, например, для числа 1266
1519 – не могло: в порядке неубывания число делится на 1 и 519 или 15 и 19, 519 и 19 – не сумма двух цифр
112 – могло, например, для числа 1066
1212 – могло, например, для числа 6666
 
10. Дан массив [1, 5, 3, 6, 7, 12, 1, 3, 3, 1]. 
Изначально m = 0, при обходе массива если элемент Lose[t] больше 3, то к m прибавляется Lose[t].
Значит, после выполнения программы на экране будет напечатана сумма элементов массива, больших трёх. Эта сумма равна 5 + 6 + 7 + 12 = 30.
 
9. Изначально u = 30. Затем для каждого i от 1 до 6 из u вычитается значение i, после цикла u равно 30 - 1 - 2 - 3 - 4 - 5 - 6 = 9. Это значение будет выведено на экран.
 
7. Путь Димы: С:\Музыка\Хиты – С:\Музыка\Хиты\Ретро – С:\Музыка\Хиты – С:\Музыка\Хиты\Лучшие 
В последней папке он запустил Белые_розы.mp3. Полное имя файла состоит из пути к папке и имени файла: 
С:\Музыка\Хиты\Лучшие\Белые_розы.mp3
4,7(20 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ