Перевести код на С++ const n=3; m=4; var a:array[1..n,1..m] of integer; b:array[1..n*m] of integer; i,j,k:integer; sr:rea

Перевести код на С++ const n=3; m=4; var a:array[1..n,1..m] of integer; b:array[1..n*m] of integer; i,j,k:integer; sr:real; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=random(100); write(a[i,j]:4); end; writeln; end; sr:=0; for i:=1 to n do for j:=1 to m do sr:=sr+a[i,j]; sr:=sr/(n*m); writeln('sr = ',sr); k:=0; for i:=1 to n do for j:=1 to m do if a[i,j] writeln('Полученный массив:'); for i:=1 to k do write(b[i]:4); writeln; end.
Гость
Ответ(ы) на вопрос:
Гость
#include <stdlib.h> #include <iostream> #include <iomanip> using namespace std; int main() { const int n = 3; const int m = 4; int a[n][m]; int b[n*m]; int k; double sr; cout << "Исходный массив" <<endl; srand(time(0)); for (int i = 0; i < n; i++){  for (int j = 0; j < m; j++){ a[i][j]=10+(51.0 / RAND_MAX) * rand(); cout << fixed << setw (7) << a[i][j];  } cout <<endl; } sr=0; for (int i = 0; i < n; i++)  for (int j = 0; j < m; j++)   sr=sr+a[i][j]; sr = sr/(n*m);  k = -1; cout << "sr = " << sr << endl; for (int i = 0; i < n; i++)  for (int j = 0; j < m; j++)   if (a[i][j]<sr) { k++; b[k]=a[i][j]; } cout << "Полученный массив" <<endl; for (int i = 0; i <= k; i++){ cout << fixed << setw (7) << b[i]; } cout <<endl; } Пример: Исходный массив       31 60 58 40       41 46 29 46       53 38 47 42  sr = 44.250000  Полученный массив       31 40 41 29 38 42
Не нашли ответ?
Ответить на вопрос
Похожие вопросы