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

Написать программу, которая позволяет осуществить ввод матрицы произвольного размера - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 30, средняя оценка - 4.97
FerMen
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
15.05.2010, 21:49     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #1
Написать программу, которая позволяет осуществить ввод матрицы произвольного размера и выполнить следующие операции:
- добавление к данной матрице любого количества столбцов;
- циклическую перестановку местами строк в полученной матрице;
- умножить полученную матрицу на число, введенное с клавиатуры.

Добавлено через 2 минуты
Пишу курсовик на языке Си) вроде начал, но чет не работает.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2010, 21:49     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера
Посмотрите здесь:

Матрицы произвольного размера. C++
C++ Написать программу, которая позволяет осуществить ввод 2-х матриц одинакового размера
C++ Составить описание класса, обеспечивающего представление матрицы произвольного размера
Класс, обеспечивающий представление матрицы произвольного размера C++
C++ Разработать алгоритм и написать по нему программу умножения матрицы А размера m × n на матрицу В размера n × p. Значение величин m, n, р выбрать из та
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FerMen
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 22:44  [ТС]     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #21
т.е. теперь просто после матрицы добавляются столбцы?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.06.2010, 22:45     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #22
Нет, теперь не просто после матрицы, а именно создаётся новая матрица с новым количеством столбцов. А вы на что рассчитывали?
FerMen
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 22:59  [ТС]     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #23
спасибо огромное)
если не сложно, то у меня еще парочка вопросов:
можешь глянуть, где ошибка? мне нужно поменять первую и последнюю строчку местами
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
42
43
44
45
#include<iostream.h>
#include<conio.h>
 
void main ()
{
 int m,n,i,j,temp;
 cout << "Enter M, N: ";
 cin >> m >> n;
 cout << endl << "Enter " << m*n << " elements of array: ";
 int **a = new int *[m];
 for (i=0; i<m; i++)
  {
   a[i] = new int [n];
   for (j=0; j<n; j++)
   cin >> a[i][j];
  }
 
 
        //vbIvod isxodnogo massiva
        for (i=0; i<m; i++){
                for (j=0; j<n; j++){
                      cout<<a[n][m]<<" ";
                      
                                    }
                                cout<<endl;}
 
        for(i=0; i<1; i++)
                {
                        for (j=0; j<4; j++)
                        {
                temp=a[i][j];
                                a[i][j]=a[m-i][j];
                a[i-m][j]=temp;
                              //  cout<<temp;
                        }
                }
                //vbIvod poluchennogo massiva
                cout<<endl;
        for (i=0; i<m; i++){
                for (j=0; j<n; j++){
                      cout<<a[i][j]<<" ";
                      
                                    }
                                cout<<endl;}
}
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
05.06.2010, 23:02     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #24
а я думал, что cin и cout в Си не бывает
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.06.2010, 23:05     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #25
fasked, вы правы, как и new и delete
Но мне-то на обозрение предоставили код на Си++, вот я и ответил той же монетой))

Добавлено через 1 минуту
FerMen,
Ошибки нет, просто вы меняете элементы одной-единственной первой строки сами с собой. Чтобы поменять элементы первой и последней строки, нужно сделать следующее:
C++
1
2
3
4
5
6
for (j = 0; j < cols; j++)
{
    temp = matrix[0][j];
    matrix[0][j] = matrix[rows - 1][j];
    matrix[rows - 1][j] = temp;
}
FerMen
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 23:22  [ТС]     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #26
C
1
2
3
4
5
6
7
for (j=0; j<4; j++)
{
temp=a[0][j];
a[0][j]=a[m-i][j];
a[m-1][j]=temp;
//  cout<<temp;
}
переделал, все норм, только теперь вместо первой строчки все нули пишет
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
05.06.2010, 23:24     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #27
a[0][j]=a[m-i][j];
Может всё-таки
a[0][j]=a[m-1][j];
FerMen
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 23:42  [ТС]     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #28
ты прав. чет не внимательный я

Добавлено через 15 минут
спасибо тебе большое))
Alex5
883 / 618 / 81
Регистрация: 12.04.2010
Сообщений: 1,552
05.06.2010, 23:56     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #29
Цитата Сообщение от silent_1991 Посмотреть сообщение
Чтобы поменять элементы первой и последней строки, нужно сделать следующее:
C++
1
2
3
4
5
6
for (j = 0; j < cols; j++)
{
    temp = matrix[0][j];
    matrix[0][j] = matrix[rows - 1][j];
    matrix[rows - 1][j] = temp;
}
Можно сделать короче (так как matrix[i] - это указатель на i-ю строку)
C++
1
2
3
4
void* t;
t = matrix[0];
matrix[0] = matrix[rows-1];
matrix[rows-1] =  ( int* )t;
Поменять i-ю и j-ю строки
C++
1
2
3
4
5
6
if ( i>=0 && i<rows  && j >=0 && j<rows )
{
    void *t = matrix[i];
    matrix[i] = matrix[j];
    matrix[j] = (int*)t;
}
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
06.06.2010, 00:06     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #30
А вы знаете, да, что-то я не подумал, что массив динамический... Ведь со статическим так не выйдет, или я ошибаюсь?
fasked
Эксперт C++
 Аватар для fasked
4924 / 2504 / 180
Регистрация: 07.10.2009
Сообщений: 4,306
Записей в блоге: 1
06.06.2010, 00:07     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #31
Цитата Сообщение от silent_1991 Посмотреть сообщение
Ведь со статическим так не выйдет, или я ошибаюсь?
ошибаешься, но запись все равно глупая
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
06.06.2010, 00:08     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #32
fasked,
Alex5
883 / 618 / 81
Регистрация: 12.04.2010
Сообщений: 1,552
06.06.2010, 00:23     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #33
Цитата Сообщение от silent_1991 Посмотреть сообщение
Ведь со статическим так не выйдет, или я ошибаюсь?
C++
1
2
    int ar[2][4] = {1, 2, 3, 4, 5, 6, 7, 8};
    ar[0] = ar[1]; //  error C2106: '=' : left operand must be l-value
Max_21
Сообщений: n/a
07.06.2010, 20:17     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #34
Написать программу, которая позволяет осуществить ввод матрицы произвольного размера и выполнить следующие операции:
- добавление к данной матрице любого количества строк;
- транспонирование полученной матрицы;
- возведение полученной матрицы в произвольную степень, проверяя возможность выполнения данной операции.
*****************************************************************
Помогите пожалуйста программу написать на С++.....=)))...заранее благодарен)
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
07.06.2010, 20:24     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #35
Что в вашем понимании означает фраза "помогите написать программу"? В понимании всех людей, исключая тех, кто создает темы на форуме, это означает "я начал писать, но есть вопросы, вот мои наработки и вот то, что у меня не получается". #include <iostream> в качестве наработок не принимается.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2010, 21:34     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера
Еще ссылки по теме:

C++ Написать программу, которая по последней цифре числа позволяет определить последнюю цифру его квадрата
Написать программу, которая позволяет во введенной строке поменять первые буквы каждого слова на прописные C++
Написать программу, которая вычерчивает на экране узор из 50 прямоугольников случайного размера и цвета C++

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

Или воспользуйтесь поиском по форуму:
FerMen
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
07.06.2010, 21:34  [ТС]     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера #36
Цитата Сообщение от Max_21 Посмотреть сообщение
Написать программу, которая позволяет осуществить ввод матрицы произвольного размера и выполнить следующие операции:
- добавление к данной матрице любого количества строк;
- транспонирование полученной матрицы;
- возведение полученной матрицы в произвольную степень, проверяя возможность выполнения данной операции.
*****************************************************************
Помогите пожалуйста программу написать на С++.....=)))...заранее благодарен)
Max_21, а вам случайно еще вот этого не надо???
Использовать массивы динамической памяти, функции, указатели
Yandex
Объявления
07.06.2010, 21:34     Написать программу, которая позволяет осуществить ввод матрицы произвольного размера
Ответ Создать тему
Опции темы

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