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

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

15.05.2010, 21:49. Показов 13692. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки. Добавлено: - Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы. Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru