Тема: Квадратна матриця
Доброго дня. Хтось може допомогти із завданням : "Задано квадратну матрицю, потрібно кожний непарний рядок заповнити одиницями, а кожний парний нулями.Розмір матриці вводиться з клавіатури"?
Ви не увійшли. Будь ласка, увійдіть або зареєструйтесь.
Ласкаво просимо вас на україномовний форум з програмування, веб-дизайну, SEO та всього пов'язаного з інтернетом та комп'ютерами.
Будемо вдячні, якщо ви поділитись посиланням на Replace.org.ua на інших ресурсах.
Для того щоб створювати теми та надсилати повідомлення вам потрібно Зареєструватись.
Український форум програмістів → C++ → Квадратна матриця
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися
Доброго дня. Хтось може допомогти із завданням : "Задано квадратну матрицю, потрібно кожний непарний рядок заповнити одиницями, а кожний парний нулями.Розмір матриці вводиться з клавіатури"?
Ну, зара Вам потикають правила форуму і т.п. Саменькі хоч пробували?
Ну, зара Вам потикають правила форуму і т.п. Саменькі хоч пробували?
так, але це неправильно чомусь
ось код
include <iostream>
void func(int** arr, int n)
{
int i=0, j=0;
if (i % 2 == 0)
{
for (i = 0; i < n; i++)
for (j = 0; j < n;j++)
{
arr[i][j] = 0;
}
}
else
{
for (i = 0; i < n; i++)
for (j = 0; j < n;j++)
{
arr[i][j] = 1;
}
}
}
int main()
{
setlocale(LC_ALL, "Russian");
using namespace std;
int i, j;
int **arr[20][20];
int M;
cout << "Введiть розмір матрицi" << endl;
cin >> M;
for (i = 0; i < M;i++)
for (j = 0; j < M; j++)
{
func(arr[i][j], M);
cout << arr[i][j];
}
system("pause");
return 0;
}
Щоб не були потрібні телепати з кодом, слід вказувати:
- завдання;
- код;
- опис проблеми.
Всі три пункти - максимально точно. "це неправильно чомусь" - не опис проблеми, на відміну від "компілятор повідомляє, що в рядку N помилка X".
А у вас:
- в функції відбувається щось дуже дивно, залиште там одну пару вкладених циклів і перенесіть if всередину;
- викликайте функцію не в циклі і для всього масиву: func(arr, M);
Це якийсь жах, а не код! Складіть спершу алгоритм. Ось так, прямо зараз, розкажіть словами ваш алгоритм розвязку.
Вже алгоритм розказали, залишилось скористатись порадами і написати програму..., и все набагато простіше чим той варіант, що Ви написали.
Спробуйте писати матрицю в файл,а потім по кожному рядку зчитуйте його для виводу.
При виводі перевіряйте на парність/непарність рядка та робіть певну заміну.
Але це мабуть костиль і має бути якесь правильніше рішення.
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int size;
cout << "Enter size = ";
cin >> size;
int **arr = new int *[size];
for (int i = 0; i < size; i++)
arr[i] = new int[size];
for (int i = 0; i < size; i++)
for (int j = 0; j < size; j++)
if (i % 2 == 0)
arr[i][j] = 1;
else
arr[i][j] = 0;
for (int i = 0; i < size; i++)
{ for (int j = 0; j < size; j++)
{
cout << arr[i][j] << " ";
}
cout << endl;
}
getch();
return 0;
}
Сторінки 1
Для відправлення відповіді ви повинні увійти або зареєструватися