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

2

Ответы и объяснения

2012-11-04T00:46:33+04:00

На C++

 

#include <iostream>
using std::cout;

using std::cin;
using std::endl;
#include <cstdlib>
using std::rand;
using std::srand;
#include <ctime>
using std::time;

int main()
{
   int B[4][5];
   int sum[5] = { 0 };
   long product = 1;

   srand(time(0));

   //Инициализировать массива значениями от 0 до 9 и вывести таблицу на экран
   for(int i = 0; i < 4; i++)
   {
      for(int j = 0; j < 5; j++)
      {
         B[i][j] = rand() % 10;
         cout << B[i][j] << ' ';
      }
      cout << endl;
   }
   cout << endl;

   //Записать в одномерный массив сумму эллементов столбца
   for(int i = 0; i < 5; i++)
   {
      for(int j = 0; j < 4; j++)
      {
         sum[i] += B[j][i];
      }
   }


   //Вывести на экран значения одномерного массива
   for(int i = 0; i < 5; i++)
   {
      cout << sum[i] << ' ';
   }
   
   //Вычесление произведения(умножения)
   for(int i = 0; i < 5; i++)
   {
      product *= sum[i];
   }

   cout << "\n\nProduct = " << product << endl;

 

   cin.get();
   return 0;
}

2012-11-04T08:58:46+04:00

Program tables;

type vector=array[1..4,1..5] of real;
     vector2=array[1..4] of real;
var i,j:integer;s:real; a:vector; b:vector2;
begin

  for i:=1 to 4 do
   for j:=1 to 5 do
   a[i,j]:=j; {value of each celule}

  for i:=1 to 4 do
    for j:=1 to 5 do
     if j=5 then
       begin
         b[i]:=s; s:=0;
       end else s:=s+a[i,j];
  for i:=1 to 4 do write(b[i]:0:2,' '); readln;
end.