Чтобы приступить к решению задач, предложенных в этой статье, вам необходимо знать что такое двумерные (многомерные) массивы . Задачи расположены от простой к сложной. Так что, если вы новичок в программировании, начинайте с первой, чтобы лучше разобраться с остальными.
1. Объявить двумерный массив, заполнить целыми числами и показать на экран.
2) Объявить двумерный массив и заполнить его построчно с клавиатуры. После заполнения – показать заполненную матрицу на экран и посчитать сумму элементов отдельно в каждом столбце и каждой строке.
3) Заполнить двумерный массив случайными числами от 10 до 100. Посчитать сумму элементов отдельно в каждой строке и определить номер строки, в которой эта сумма максимальна.
Ваши вопросы, которые возникли при решении задач, оставляйте в комментариях к этой статье.
Можно код на такое же задание, але в JavaScript?
в джавасрипте разве есть двумерные массивы?)
почему вы выделили целый массив под сумму элементов строки массива почему, можно же обычную переменную?
#include
#include
using namespace std;
int main (){
srand(time(NULL));
const int COL = 7;
const int ROW = 5;
int arr[ROW][COL];
for (int i = 0; i < ROW; i++){
for (int k = 0; k < COL; k++){
arr[i][k] = rand() % 100;
cout << arr[i][k] << '\t';
}
cout << endl;
}
return 0;
}
#include
#include
using namespace std;
int main (){
srand(time(NULL));
const int COL = 7;
const int ROW = 5;
int arr[ROW][COL];
for (int i = 0; i < ROW; i++){
for (int k = 0; k < COL; k++){
arr[i][k] = 10 +rand() % 91;
cout << arr[i][k] << '\t';
}
cout << endl;
}
int Sum;
int arrSum[] ={};
for (int i = 0; i < ROW; i++){
Sum = 0;
for (int k = 0; k < COL; k++)
Sum += arr[i][k];
arrSum[i] = Sum;
cout <<"line" << i+1 <<'\t'<<Sum << endl;}
// max sum value all line
int max = arrSum[0];
for (int j = 1; j max)
max =arrSum[j];
}
cout << " max sum value all line: " << max;
return 0;
}
сын
что с кодом ???
решение 3-й задачи
#include
using namespace std;
int main()
{
srand(time(NULL));
int mas[5][5];
int su[5] = {0,0,0,0,0};
int ch, G, V;
/* с помощью G находим мах сумму
сh счетчик строки
V используем для поиска строки где самвя большая сумма */
ch = 0;
G = su[0];
for (int x = 0; x < 5; x++) {
for (int y = 0; y < 5; y++) {
mas[x][y] = 10 + rand() % 100;
}
}
for (int x = 0; x < 5; x++) {
for (int y = 0; y < 5; y++) {
cout << mas[x][y]<<"…";
}
cout <<" "<< endl;
}
for (int x = 0; x < 5; x++) {
for (int y = 0; y < 5; y++) {
su[x] = su[x] + mas[x][y];
}
cout << "summa stroki |" << x + 1 << "| = " << su[x] << endl;
}
for (int x = 0; x < 5; x++) {
if (G <= su[x]) {
G = su[x];
}
}
for (int x = 0; x < 5; x++) {
V = su[x];
ch++;
if (V == G) {
break;
}
}
cout << "max stroka |" << ch << "|= " << G;
return 0;
}
#include
#include
using namespace std;
int main()
{
setlocale(LC_ALL, “RU”);
srand(time(NULL));
const int COL = 3;
const int ROW = 3;
int arr[COL][ROW];
//Заполнение
for (int i = 0; i < COL; i++)
{
for (int j = 0; j < ROW; j++)
{
arr[i][j] = 10 + rand() % 91;
}
}
//Вывод
for (int i = 0; i < COL; i++)
{
for (int j = 0; j < ROW; j++)
{
cout << arr[i][j] << " | ";
}
cout << endl;
}
cout << endl;
int sum[3] = {0,0,0};
int summa = 0;
int temp = 0;
//Подсчет
for (int i = 0; i <ROW; i++)
{
summa =0 ;
for (int j = 0; j < COL; j++)
{
summa += arr[j][i];
}
cout << "строчка " << i + 1 << " = "
<< summa<<endl;
}
int i = 0;
for ( i = 0; i < ROW; i++)
{
sum[i];
for (int j = 0; j sum[1] and sum[0] > sum[2])
{
temp = sum[0];
}
if (sum[1] > sum[0] and sum[1] > sum[2])
{
temp = sum[1];
}
if (sum[2] > sum[0] and sum[2] > sum[1])
{
temp = sum[2];
}
}
cout << " max " << "summa " << temp;
return 0;
}
знаю код говно получилось как то так буду улучать свои знания