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

C++ создание матрицы - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 44, средняя оценка - 4.91
__proto__
4 / 4 / 0
Регистрация: 19.08.2012
Сообщений: 79
04.09.2012, 21:37     C++ создание матрицы #1
только начал учить С++ и возникла проблема при попытке создать матрицу.
Нужно создать матрицу с динамическими размерами , но я пошел от простого.
Подскажите почему вы не хочет в массив primary добавлять другие массивы?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void createMatrix() {
int first[3], second[3], third[3];
 
cout<<"first Line \n";
cin>> first[0]>>first[1]>>first[2];
cout<<"second Line \n";
cin>> second[0]>>second[1]>>second[2];
cout<<"third Line \n";
cin>> third[0]>>third[1]>>third[2];
 
int primary[3][3] = {first,second,third} ;// тут выдает ошибку
cout<<primary[1][0];
 
}
Добавлено через 26 минут
сделал так
C++
1
2
3
4
5
6
7
8
int primary[3][3];
 
cout<<"first Line \n";
cin>> primary[0][0]>>primary[0][1]>>primary[0][2];
cout<<"second Line \n";
cin>> primary[1][0]>>primary[1][1]>>primary[1][2];
cout<<"third Line \n";
cin>> primary[2][0]>>primary[2][1]>>primary[2][2];
но возник вопрос, как сложить строку с числом?
C++
1
string result = primary[0][0]+" "+primary[0][1]+" "+primary[0][2];
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
 Аватар для Avazart
6896 / 5136 / 251
Регистрация: 10.12.2010
Сообщений: 22,568
Записей в блоге: 17
04.09.2012, 22:08     C++ создание матрицы #2
Цитата Сообщение от __proto__ Посмотреть сообщение
int primary[3][3] = {first,second,third} ;// тут выдает ошибку
По тому что рахмер массива 3х3, а нумерация массивов начинается с нуля.
Цитата Сообщение от __proto__ Посмотреть сообщение
Нужно создать матрицу с динамическими размерами
Массив с изменяемыми размерами реализовывается не так...
igorrr37
 Аватар для igorrr37
1593 / 1221 / 118
Регистрация: 21.12.2010
Сообщений: 1,868
Записей в блоге: 7
04.09.2012, 22:57     C++ создание матрицы #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <sstream>
#include <iostream>
#include <string>
 
int main()
{
    int arr1[]{1,2,3}, arr2[]{4,5,6};
    int* matrix[]{arr1, arr2};
    std::stringstream ss;
    ss << matrix[0][0] << "  " << matrix[0][1] << "  " << matrix[0][2];
    std::string s(ss.str());
    std::cout << s << std::endl;
    return 0;
}
__proto__
4 / 4 / 0
Регистрация: 19.08.2012
Сообщений: 79
05.09.2012, 04:23  [ТС]     C++ создание матрицы #4
вроде сделал, но когда выношу цикл в отдельную функцию что бы его 2 раза не писать начинает выдавать ошибки.
вот код
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
33
34
35
36
37
38
39
40
41
#include<iostream.h>
#include<conio.h>
#pragma argsused
 
int Show(int line, int columns,bool show, int primary[]) {
 
for (int i = 0; i < 2;i++) {
 
for (int j = 0; j< 4;j++) {
 
if (!show){
cin>>primary[i][j]; // выдает тут ошибку
} else {
cout<< primary[i][j];
}
 
}
 cout<<"\n";
}
return  primary;
}
 
 
void createMatrix() {
 
int line = 2;
int columns = 4;
int primary[line][columns];
 
 primary = Show(line, columns, false,primary);
 Show(line, columns, true,primary);
 
}
 
int main(int argc, char* argv[])
{
 
 createMatrix();
 getch();
        return 0;
}
вот ошибки
C++
1
2
3
4
5
6
7
8
[C++ Error] Unit1.cpp(18): E2062 Invalid indirection
[C++ Error] Unit1.cpp(20): E2062 Invalid indirection
[C++ Error] Unit1.cpp(26): E2034 Cannot convert 'int *' to 'int'
[C++ Error] Unit1.cpp(36): E2034 Cannot convert 'int ( *)[4]' to 'int *'
[C++ Error] Unit1.cpp(36): E2342 Type mismatch in parameter 'primary' (wanted 'int *', got 'int ( *)[4]')
[C++ Error] Unit1.cpp(36): E2277 Lvalue required
[C++ Error] Unit1.cpp(37): E2034 Cannot convert 'int ( *)[4]' to 'int *'
[C++ Error] Unit1.cpp(37): E2342 Type mismatch in parameter 'primary' (wanted 'int *', got 'int ( *)[4]')
плиз подскажите в чем ошибка
Avazart
 Аватар для Avazart
6896 / 5136 / 251
Регистрация: 10.12.2010
Сообщений: 22,568
Записей в блоге: 17
05.09.2012, 04:27     C++ создание матрицы #5
__proto__, Советую взять книгу по с++ и учить... учить... как завещал дядя Ленин
По тому как другие советы вам думаю не помогут... вы пытаетесь сделать весьма не адекватные вещи для языка с++.
__proto__
4 / 4 / 0
Регистрация: 19.08.2012
Сообщений: 79
05.09.2012, 09:35  [ТС]     C++ создание матрицы #6
Цитата Сообщение от igorrr37 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <sstream>
#include <iostream>
#include <string>
 
int main()
{
    int arr1[]{1,2,3}, arr2[]{4,5,6};
    int* matrix[]{arr1, arr2};
    std::stringstream ss;
    ss << matrix[0][0] << "  " << matrix[0][1] << "  " << matrix[0][2];
    std::string s(ss.str());
    std::cout << s << std::endl;
    return 0;
}
этот пример не работает

Добавлено через 8 минут
Цитата Сообщение от Avazart Посмотреть сообщение
__proto__, Советую взять книгу по с++ и учить... учить... как завещал дядя Ленин
По тому как другие советы вам думаю не помогут... вы пытаетесь сделать весьма не адекватные вещи для языка с++.
Ну да прочитать ученик за ночь что бы написать пару скриптов еще на С++, гениальный совет *сарказм*!

П.с всем "спасибо" , пришлось писать полнейший говно код , потому что в падлу ответить норм!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.09.2012, 20:00     C++ создание матрицы
Еще ссылки по теме:

C++ Создание матрицы
C++ Создание и обработка матрицы
Создание динамической матрицы C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Avazart
 Аватар для Avazart
6896 / 5136 / 251
Регистрация: 10.12.2010
Сообщений: 22,568
Записей в блоге: 17
05.09.2012, 20:00     C++ создание матрицы #7
На с++ не пишут скрипты.

Ну да прочитать ученик за ночь что бы написать пару скриптов еще на С++
Не хотите тратить время на изучение С++, тратьте деньги - заказывайте во фриланс.
Yandex
Объявления
05.09.2012, 20:00     C++ создание матрицы
Ответ Создать тему
Опции темы

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