Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.94/65: Рейтинг темы: голосов - 65, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17

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

15.05.2010, 21:49. Показов 13302. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написать программу, которая позволяет осуществить ввод матрицы произвольного размера и выполнить следующие операции:
- добавление к данной матрице любого количества столбцов;
- циклическую перестановку местами строк в полученной матрице;
- умножить полученную матрицу на число, введенное с клавиатуры.

Добавлено через 2 минуты
Пишу курсовик на языке Си) вроде начал, но чет не работает.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.05.2010, 21:49
Ответы с готовыми решениями:

Написать программу, которая позволяет осуществить ввод 2-х матриц одинакового размера
Помогите курсовик дали,помогите с началом программы: Написать программу, которая позволяет осуществить ввод 2-х матриц...

Написать программу транспонирования квадратной матрицы произвольного размера
Написать программу транспонирования квадратной матрицы произвольного размера. Значения элементов матрицы вводятся из файла. Результат...

Необходимо создать программу, которая позволяет осуществить графическое построение генеалогического древа
Необходимо создать программу, которая позволяет осуществить графическое построение генеалогического древа. В качестве исходной...

35
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 22:44  [ТС]
Студворк — интернет-сервис помощи студентам
т.е. теперь просто после матрицы добавляются столбцы?
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
05.06.2010, 22:45
Нет, теперь не просто после матрицы, а именно создаётся новая матрица с новым количеством столбцов. А вы на что рассчитывали?
0
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 22:59  [ТС]
спасибо огромное)
если не сложно, то у меня еще парочка вопросов:
можешь глянуть, где ошибка? мне нужно поменять первую и последнюю строчку местами
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;}
}
0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
05.06.2010, 23:02
а я думал, что cin и cout в Си не бывает
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
05.06.2010, 23:05
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;
}
2
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 23:22  [ТС]
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;
}
переделал, все норм, только теперь вместо первой строчки все нули пишет
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
05.06.2010, 23:24
a[0][j]=a[m-i][j];
Может всё-таки
a[0][j]=a[m-1][j];
1
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
05.06.2010, 23:42  [ТС]
ты прав. чет не внимательный я

Добавлено через 15 минут
спасибо тебе большое))
0
1130 / 789 / 232
Регистрация: 12.04.2010
Сообщений: 2,012
05.06.2010, 23:56
Цитата Сообщение от 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;
}
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.06.2010, 00:06
А вы знаете, да, что-то я не подумал, что массив динамический... Ведь со статическим так не выйдет, или я ошибаюсь?
0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
06.06.2010, 00:07
Цитата Сообщение от silent_1991 Посмотреть сообщение
Ведь со статическим так не выйдет, или я ошибаюсь?
ошибаешься, но запись все равно глупая
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
06.06.2010, 00:08
fasked,
0
1130 / 789 / 232
Регистрация: 12.04.2010
Сообщений: 2,012
06.06.2010, 00:23
Цитата Сообщение от 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
0
Max_21
07.06.2010, 20:17
Написать программу, которая позволяет осуществить ввод матрицы произвольного размера и выполнить следующие операции:
- добавление к данной матрице любого количества строк;
- транспонирование полученной матрицы;
- возведение полученной матрицы в произвольную степень, проверяя возможность выполнения данной операции.
**************************************** *************************
Помогите пожалуйста программу написать на С++.....=)))...заранее благодарен)
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
07.06.2010, 20:24
Что в вашем понимании означает фраза "помогите написать программу"? В понимании всех людей, исключая тех, кто создает темы на форуме, это означает "я начал писать, но есть вопросы, вот мои наработки и вот то, что у меня не получается". #include <iostream> в качестве наработок не принимается.
0
0 / 0 / 0
Регистрация: 15.05.2010
Сообщений: 17
07.06.2010, 21:34  [ТС]
Цитата Сообщение от Max_21 Посмотреть сообщение
Написать программу, которая позволяет осуществить ввод матрицы произвольного размера и выполнить следующие операции:
- добавление к данной матрице любого количества строк;
- транспонирование полученной матрицы;
- возведение полученной матрицы в произвольную степень, проверяя возможность выполнения данной операции.
**************************************** *************************
Помогите пожалуйста программу написать на С++.....=)))...заранее благодарен)
Max_21, а вам случайно еще вот этого не надо???
Использовать массивы динамической памяти, функции, указатели
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.06.2010, 21:34

Создать программу, которая позволяет осуществить все операции над элементами множеств: пересечение, объединение, разность, проверку эквивалентности и
Создать программу, которая позволяет осуществить все операции над элементами множеств: пересечение, объединение, разность, проверку...

Написать программу, которая позволяет нарисовать закрашенный треугольник
Задание 4. Написать программу, которая позволяет нарисовать закрашенный треугольник. Помогите, пожалуйста! Заранее...

Написать программу, которая позволяет вводить целочисленную матрицу
1) Написать программу, которая позволяет вводить одномерный целочис-ленный массив из 10 элементов и вычислять: а) сумму отрицательных...

Написать программу, которая позволяет получит следующую информацию
Написать программу, которая позволяет получит следующую информацию: - всю программу телепередач на день; - по введенному с клавиатуры...

Написать программу, которая позволяет просматривать текстовые файлы
Написать программу, которая позволяет просматривать текстовые файлы...


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

Или воспользуйтесь поиском по форуму:
36
Ответ Создать тему
Новые блоги и статьи
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru