4 / 4 / 1
Регистрация: 23.10.2010
Сообщений: 161
|
|
1 | |
Процедура обмена столбца10.06.2011, 16:44. Показов 2396. Ответов 14
Метки нет (Все метки)
Написать процедуру обмена столбца и строки двухмерного массива. С ее помощью поменять местами те строки и столбцы первые элементы которых совпадают. Помогите пожалуйста решить данную задачу!!! Может у кого то какие мысли есть по этому поводу!!!
0
|
10.06.2011, 16:44 | |
Ответы с готовыми решениями:
14
Процедура обмена столбца и строки двухмерного массива процедура обмена столбца и строки Процедура: найти сумму для столбца матрицы и поделить ее на максимальный по модулю элемент столбца Процедура обмена значениями |
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
||||||
10.06.2011, 16:59 | 2 | |||||
не могу проверить. да и конец рабочего дня и меньше 3-х циклов тоже что то не догоняю как сделать. и можно ли вобще о_О вобщем, надеюсь что будет работать пробуйте!
2
|
Бродяга
314 / 268 / 56
Регистрация: 27.08.2010
Сообщений: 553
|
|
10.06.2011, 16:59 | 3 |
Т.е. нужно поменять столбец со строкой, первые элементы которых совпадают?
Добавлено через 20 секунд Хотя не... тогда будет всегда меняться первый столбец с первой строкой...
1
|
В вечном поиске...
275 / 235 / 30
Регистрация: 05.04.2011
Сообщений: 645
|
|
10.06.2011, 17:03 | 4 |
Вот тут посмотрите: Поменять местами строки и столбцы матрицы
1
|
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
|
10.06.2011, 17:07 | 5 |
первый столбец и будет меняться.
ну ведь далеко не факт что он будет единственный. если правильно написал - пробежаться по каждому началу столбца и сравнить его с каждым началом строки.
1
|
Бродяга
314 / 268 / 56
Регистрация: 27.08.2010
Сообщений: 553
|
|
10.06.2011, 17:12 | 6 |
Это да... Но после первого прохода исходная матрица всё равно испортится, т.к. все первые элементы столбцов поменяются (возможно тут правильнее будет использовать вспомогательную матрицу?).
К тому же на какой столбец нужно заменить строку, если таких столбцов несколько? На самый последний найденный? А может на первый? Задание какое-то...
0
|
4 / 4 / 1
Регистрация: 23.10.2010
Сообщений: 161
|
|
10.06.2011, 19:39 [ТС] | 7 |
0
|
В вечном поиске...
275 / 235 / 30
Регистрация: 05.04.2011
Сообщений: 645
|
|
10.06.2011, 19:46 | 8 |
Почему же? там написано что код не коего IrineK правильен, да и сам код написан в С++.
Добавлено через 55 секунд Да и организовано с функциями.
0
|
4 / 4 / 1
Регистрация: 23.10.2010
Сообщений: 161
|
|
10.06.2011, 19:48 [ТС] | 9 |
Вставляю не пашет вернее прога запускается но никаких действий кот она выполняет я не увидела
0
|
В вечном поиске...
275 / 235 / 30
Регистрация: 05.04.2011
Сообщений: 645
|
|
10.06.2011, 19:59 | 10 |
Там же вроде надо размер вручную вводить, вы ничего не пробовали вводить? Просто у меня компилятор турбо си и я не могу проверить.
0
|
4 / 4 / 1
Регистрация: 23.10.2010
Сообщений: 161
|
|
10.06.2011, 21:12 [ТС] | 11 |
Вот именно до этого иоиента и работает программа когда вводишь размер она тоже закрывается
0
|
В вечном поиске...
275 / 235 / 30
Регистрация: 05.04.2011
Сообщений: 645
|
|
10.06.2011, 21:45 | 12 |
Ну для задержки экрана существуют спец. функции. К примеру в си нужно прописать дополнительную библиотеку, называется conio.h (#include<conio.h>), после, в самом конце, перед закрытием тела основной функции нужно прописать getch();. У вас какой компилятор? Я не знаю какие в с++ есть функции для этого, вроде бы есть какая-то функция называется system pause, ну что-то вроде этого. По гуглите.
Добавлено через 3 минуты Вот тут посмотрите: Задержка экрана
0
|
4 / 4 / 1
Регистрация: 23.10.2010
Сообщений: 161
|
|
12.06.2011, 13:12 [ТС] | 13 |
Спасибо я и совсем забыла про это сейчас попробую!!
Добавлено через 21 час 49 минут Код
#include <iostream> #include <time.h> #include <conio.h> using namespace std; void inp(int** x,int n); void out(int** x,int n); void replace(int** x,int n); void main() { int n; cout<<"n="; cin>>n; int** x=new int*[n]; for(int i=0;i<n;i++) x[i]=new int[n]; inp(x,n); out(x,n); replace(x,n); cout<<endl<<endl; out(x,n); for(int i=0;i<n;i++) delete[] x[i]; delete[] x; } void inp(int** x,int n) { srand(time(0)); for(int i=0;i<n;i++) for(int j=0;j<n;j++) *(*(x+i)+j)=rand()%10; } void out(int** x,int n) { for(int i=0;i<n;i++) { for(int j=0;j<n;j++) cout<<*(*(x+i)+j)<<" "; cout<<endl; } } void replace(int** x,int n) { int buff; for(int i=0;i<n;i++) for(int j=0;j<i;j++) { buff=*(*(x+i)+j); *(*(x+i)+j)=*(*(x+j)+i); *(*(x+j)+i)=buff; } getch(); } Добавлено через 14 часов 55 минут [QUOTE=Елена Погодина;1748751]Спасибо я и совсем забыла про это сейчас попробую!! Добавлено через 21 час 49 минут Код
#include <iostream> #include <time.h> #include <conio.h> using namespace std; void inp(int** x,int n); void out(int** x,int n); void replace(int** x,int n); void main() { int n; cout<<"n="; cin>>n; int** x=new int*[n]; for(int i=0;i<n;i++) x[i]=new int[n]; inp(x,n); out(x,n); replace(x,n); cout<<endl<<endl; out(x,n); for(int i=0;i<n;i++) delete[] x[i]; delete[] x; } void inp(int** x,int n) { srand(time(0)); for(int i=0;i<n;i++) for(int j=0;j<n;j++) *(*(x+i)+j)=rand()%10; } void out(int** x,int n) { for(int i=0;i<n;i++) { for(int j=0;j<n;j++) cout<<*(*(x+i)+j)<<" "; cout<<endl; } } void replace(int** x,int n) { int buff; for(int i=0;i<n;i++) for(int j=0;j<i;j++) { buff=*(*(x+i)+j); *(*(x+i)+j)=*(*(x+j)+i); *(*(x+j)+i)=buff; } getch(); }
0
|
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
||||||
14.06.2011, 10:47 | 14 | |||||
у меня тут мысль появилась.если тема еще актуальна конечно.
надо проходить проверку массива с обратной стороны. т.е.
самым точным вариантом будет создание второй матрицы двумерной и уже в нее закидывать измененные/не измененные данные
1
|
0 / 0 / 0
Регистрация: 23.10.2018
Сообщений: 2
|
|
24.10.2018, 08:51 | 15 |
можешь сказать как все это получилось объясни пожалуйста
0
|
24.10.2018, 08:51 | |
24.10.2018, 08:51 | |
Помогаю со студенческими работами здесь
15
Процедура обмена значений двух переменных Процедура обмена колонки и ряда двумерного массива Существует ли в Лазарусе процедура Swap для обмена объектов местами? В матрице упорядочить элементы каждого столбца по возрастанию методом обмена Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |