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

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

👇
Ответ:
fgrtyrrrrty
fgrtyrrrrty
12.11.2022
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: array of array of integer;
  i,j,x,y,m,p,pro,c:integer;  begin
Randomize;
pro:=1;
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);  
for  m:=0 to i-1 do begin  
writeln();
     for  p:=0 to j-1 do   begin                     
     random(c,x,y,a[m,p]);    {Заполнить матрицу случайными числами}         
 if (m<>p) then pro:=pro*a[m,p]; {Вычислить произведение элементов массива, лежащих вне главной диагонали.}
          write (a[m,p]:3,' ':3);
           end; 
         end;  

 writeln('pro=',pro);        
  a:=NIL;            
end.
// ABC Pascal
4,7(5 оценок)
Открыть все ответы
Ответ:
aydawgva
aydawgva
12.11.2022
#include <iostream>

using namespace std;

long Factorial(int num)
{
  long res = 1;
 
  for (int i = num; i > 1; i--)
    res *= i;
  return res;
}

int NumOfElements(int **matrix, int mSize, int nSize)
{
  int res = 0;

  for (int i = 0; i < mSize; i++)
  {
    for (int j = 0; j < nSize; j++)
      if (matrix[i][j] % 2 == 0 && matrix[i][j] < 0)
        res++;
  }
  return res;
}

int main()
{
  int
    num,
    **matrix,
    mSize,
    nSize;

  cout << "Input a number: ";
  cin >> num;

  cout << num << "! = " << Factorial(num) << endl;

  cout << "Input a matrix size: ";
  cin >> mSize >> nSize;

  matrix = new int*[mSize];
  for (int i = 0; i < mSize; i++)
    matrix[i] = new int[nSize];
  for (int i = 0; i < mSize; i++)
    for (int j = 0; j < nSize; j++)
      cin >> matrix[i][j];

  cout << "Num. of the elements = " << NumOfElements(matrix, mSize, nSize) << endl;
 
  system("pause");
  return 0;
} /* End of the 'main' function */
4,8(70 оценок)
Ответ:
Okean111
Okean111
12.11.2022
// PascalABC.NET 3.2, сборка 1363 от 17.12.2016
// Внимание! Если программа не работает, обновите версию!

begin
  var m:=ReadInteger('Количество строк в массиве:');
  var n:=ReadInteger('Количество столбцов в массиве:');
  Writeln('*** Исходный массив [',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-50,50);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var b:=a.Rows.Select(x->x.Where(y->(y<0) and y.IsOdd).Count);
  b.Println;
end.

Пример
Количество строк в массиве: 10
Количество столбцов в массиве: 13
*** Исходный массив [10,13] ***
  -7 -30 -31  26 -19   4 -26 -37 -17   2  -7 -20  20
  -6  33 -24 -14 -26  38 -11 -34 -40 -22  31   7  35
 -24  -9 -35  -7 -14  -3  25  38 -30 -50  42  26 -15
  45 -17   6 -18  27  25 -21 -21   1 -39  36 -27 -49
  32 -38  -9 -17  42 -11 -31  -4 -23  33  48  40 -34
  47   6  32 -26  33 -15  10  40  43 -44  11  28   1
 -45 -23   6  26 -20 -20 -30 -15  16  12  -3  38 -42
   3   6  39  17   0   8  -7  11  29  23  -2 -23 -21
   1  13 -39  39 -44  30   5  -9 -17  43  41   2   2
  17  19  32 -20  45 -16 -13  24  32 -46 -49 -25   6

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