Форум программистов, компьютерный форум CyberForum.ru

Заполнение двумерного массива - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 93, средняя оценка - 4.72
Heidel
 Аватар для Heidel
110 / 110 / 7
Регистрация: 11.10.2011
Сообщений: 647
15.10.2011, 19:17     Заполнение двумерного массива #1
Можно ли заполнить матрицу размером (6 х 6) вида С= http://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{bmatrix} 0  0  0  0  0  1 \\  0  0  0  0  2  0 \\  0  0  0  3  0  0 \\  0  0  4  0  0  0 \\  0  5  0  0  0  0 \\  6  0  0  0  0  0\end{bmatrix}
какой-нибудь еще программой, кроме

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream.h>
#include <math.h>
#include <stdlib.h>
 
int main ( )
{
double C [6][6];
int i, j;
int n=5;
int l=1;
 
cout <<"Matriza C\n\n" ;//Г‡Г*ïîëГ*ГҐГ*ГЁГҐ Г¬Г*òðèöû C
 
    for (i=0; i<6; i++)
        {
            for (j=0; j<6; j++)
            {
                if (j==n)
                    C [i][j] = l;
                else
                    C [i][j] = 0;
                cout << C [i][j] << "  ";
            }
            l++;
            n--;
            cout <<"\n" ;
        }
 
cout <<"\n" ;
 
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2011, 19:17     Заполнение двумерного массива
Посмотрите здесь:

Заполнение двумерного массива C++
Заполнение двумерного массива C++
C++ Заполнение двумерного массива
Заполнение двумерного массива C++
C++ Заполнение двумерного массива
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
svinka
1 / 1 / 0
Регистрация: 14.10.2011
Сообщений: 18
15.10.2011, 20:53     Заполнение двумерного массива #2
можно сначала задать нулевой массив а в цикле забивать только необходимые цифры 1,2,3...
впрочем у вас и так все работает

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <math.h>
#include <stdlib.h>
using namespace std;
 
int main ( )
{
int C [6][6]={{0},{0}};
int i, j;
int n=5;
int l=1;
 
cout <<"Matriza C\n\n" ;//Заполнение матрицы C
 
        for (i=0; i<6; i++)
                {
                        for (j=0; j<6; j++)
                        {
                                if (j==n)
                                        C [i][j] = l;
                                cout << C [i][j] << "  ";
                        }
                        l++;
                        n--;
                        cout <<"\n" ;
                }
 
cout <<"\n" ;
 
return 0;
}

массив то лучше int задать. так он будет обедать меньшим количеством памяти
greeezz
272 / 165 / 4
Регистрация: 10.07.2011
Сообщений: 441
15.10.2011, 20:54     Заполнение двумерного массива #3
Вот так например. Подставляйте любые значения для const int rows и const int columns
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int main(){
 
    const int rows = 6;
    const int columns = 6;
    int matrix [rows][columns];
 
    for(int row = 0; row < rows; row++){
        for(int column = 0; column < columns; column++){
            if((columns - column)==(row+1)){
                matrix[row][column] = (row+1);
            } else {
                matrix[row][column] = 0;
            }
            cout << matrix[row][column];
        }
        cout << endl;
    }
    system("pause");
    return 0;
}
svinka
1 / 1 / 0
Регистрация: 14.10.2011
Сообщений: 18
15.10.2011, 20:58     Заполнение двумерного массива #4
Цитата Сообщение от greeezz Посмотреть сообщение
Подставляйте любые значения для const int rows и const int columns
ну или вообще сделать динамический двумерный массив и задавать его размерность с клавиатуры
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
16.10.2011, 00:53     Заполнение двумерного массива #5
Счастливые обладатели моего класса "mymatrix.h" делают это так

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include "mymatrix.h"
int main () {
 
 //Сперва лепишь массив
 matrix<int> y (6, 6);
 
 //Инициализируесм нолями
 for (int i= 0; i< 6; i++) {
  for (int j= 0; j< 6; j++) {
   y[i][j]= 0;
  }
 }
 
 //Заполняем диагональ
 for (int i= 0; i< 6;  i++) 
  y.get_el_diagonali(5,i)= 6-i;   
 
 //Смотришь его
 y.vivod(1);
 
 getchar (); 
}
Yandex
Объявления
16.10.2011, 00:53     Заполнение двумерного массива
Ответ Создать тему
Опции темы

Текущее время: 15:28. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru