C++ двумерный статич. массив - Вопросы по С+

Вопрос C++ двумерный статич. массив

Регистрация
2 Июл 2013
Сообщения
91
Репутация
0
Спасибо
1
Монет
0
Двумерный статический массив: 4 на 4, запросить числа и вывести в виде матрицы, потом каждое число в 3 строчке умножить на 2, вывести измененную матрицу



Вот основа



#include <iostream>

using namespace std;

int main()

{

setlocale(LC_ALL, "Russian");

int arr_1[4][4], i, k;



cout << "введите числа\n";

for (i = 0; i < 4; i++) {



for (k = 0; k < 4; k++)

{

cin >> arr_1[k];

}

}



cout << "вот массив: \n";



for (i = 0; i < 4; i++) {

cout << "\n";

for (k = 0; k < 4; k++)

{

cout << " " << arr_1[k];

}

}

cout << "\n измененный массив: \n";

for (i = 0; i < 4; i++) {

cout << "\n";

for (k = 0; k < 4; k++)



{

cout << " " << arr_1[k];

}

}



}
 
Регистрация
5 Июн 2013
Сообщения
71
Репутация
0
Спасибо
0
Монет
0
Функция setlocale() придумана строго для использования типа wchar_t. Это стандарт Си.
Тогда вывод должен быть либо через wprintf(), либо через wcout.
Тупо не копируй исходный текст где попало, а читай умные книжки.
Пока это не изучишь и не поймёшь, нормально кодить не научишься.
 
Регистрация
14 Сен 2013
Сообщения
79
Репутация
0
Спасибо
0
Монет
0
for (int i = 0; i < 4; i++) arr_1[2]<<=1;
// <<=1 тоже самое что *=2 для интов
Вот такую строчку вставьте перед выводом измененного массива.
 
Регистрация
18 Дек 2013
Сообщения
94
Репутация
0
Спасибо
0
Монет
0
#include <iostream>

using namespace std;

template <class T>
void printMatrix(T *arr, int lines, int columns){
for(int i = 0; i < lines; i++){
for(int j = 0; j < columns; j++)
cout << *(*(arr + i) + j) << " ";
cout << "\n";
}
}

template <class T>
void modifyMatrix(T *arr, int lines, int columns, int changeLine, int multiplier){
for(auto &i: *(arr + changeLine))
i *= multiplier;
}

int main(){
const int N = 4;
int a[N][N];
cout << "Input elements in matrix:\n";
for(int i = 0; i < N; i++)
for(int j = 0; j < N; j++)
cin >> a[j];
cout << "Initial matrix:\n";
printMatrix(a, N, N);
modifyMatrix(a, N, N, 2, 2);
cout << "Altered matrix:\n";
printMatrix(a, N, N);
}
875a8375f91de049494d6073098e8a2f_d93d7338a243aa34ccfe6041db477df9.jpg

 
Регистрация
8 Сен 2013
Сообщения
75
Репутация
0
Спасибо
0
Монет
0
#include <iostream>
using namespace std;
int main(){
const size_t n=4; int a[n][n]; cout<<"Numbers:\n";
for(int(&i)[n]:a)for(int &j:i)cin>>j; cout<<'\n';
for(int(&i)[n]:a){for(int &j:i)cout<<j<<'\t'; cout<<endl;}cout<<'\n';
for(int &j:a[2])j*=2;
for(int(&i)[n]:a){for(int &j:i)cout<<j<<'\t'; cout<<endl;}cout<<'\n';}
192534725_52398a44e470e8fecc8e1c971e48e320_800.jpg

 
Сверху Снизу