Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.09.2009, 13:13   #1
Zzzzzzzz.......
Новичок
Джуниор
 
Регистрация: 22.09.2009
Сообщений: 2
Восклицание С++ МАССИВ

Помогите найти ошибку в коде программы, в которой нужно написать функцию, которая меняет местами в квадратной матрице заданного размера диагонали, прилегающие к главной диагонали.

Код:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int **matr = new int *[size];
for (int i=0;i<size;i++)
{ matr [i]=new int [size];};
 int s;
for(int i=0;i<size;i++)
for(int j=0;j<size;j++)
matr[i][j]=StrToInt(StringGrid1->Cells[j][i]);

for(int i1=0;i1<size-1;i1++)
for(int i=0;i<=i1;i++)
for(int j=1;j<=i;j++)
{s=matr[i][j];
matr[i][j]=matr[j][i];
matr[j][i]=s;};
for(int i=0;i<size;i++)
for(int j=0;j<size;j++)
StringGrid1->Cells[j][i]=IntToStr(matr[i][j]);
}

Последний раз редактировалось Zzzzzzzz.......; 26.09.2009 в 16:09.
Zzzzzzzz....... вне форума Ответить с цитированием
Старый 27.09.2009, 10:12   #2
Skrip
Пользователь
 
Аватар для Skrip
 
Регистрация: 04.06.2009
Сообщений: 45
По умолчанию

пример одного из способов приведен в программе:

Код:
#include "stdafx.h"

int main(int argc, char* argv[])
{
	const int N=4;
	int a[N][N],i,j;

	//ввод
	for(i=0; i<N; i++)
		for(j=0; j<N; j++)
			scanf("%d", &a[i][j]);

	//вывод до...
	for(i=0; i<N; i++){
		printf("\n");
		for(j=0; j<N; j++)
			printf("%2d", a[i][j]);
	}

	printf("\n");
	printf("\n");

	/*алгоритм замены местами элементов прилигающих диагоналей*/
	for(i=1; i<N; i++){
		int temp = a[i][i-1];
		a[i][i-1]=a[i-1][i];
		a[i-1][i]=temp;
	}
    /**********************************************************/

	//вывод после
	for(i=0; i<N; i++){
		printf("\n");
		for(j=0; j<N; j++)
			printf("%2d", a[i][j]);
	}

	int k;
	scanf("%d", &k);
	
	return 0;
}
Я спокойный, вежливый и уравновешенный человек
Skrip вне форума Ответить с цитированием
Старый 28.09.2009, 17:00   #3
Zzzzzzzz.......
Новичок
Джуниор
 
Регистрация: 22.09.2009
Сообщений: 2
По умолчанию

Спасибо!!!!!
Zzzzzzzz....... вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Упорядочить массив в порядке возрастания и напечатать входной и исходный массив. TheVenny Помощь студентам 3 26.11.2008 15:06
Массив KpeHDeJIb Помощь студентам 2 27.09.2008 13:59
Массив Айвенго PHP 2 22.02.2008 16:34
Массив. С++ bloo[d] Помощь студентам 2 12.12.2007 23:30