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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2013, 00:43   #1
Лилитана
 
Регистрация: 19.12.2012
Сообщений: 2
Восклицание Двумерный массив(исправить ошибки)

На С++.
Пыталась написать программу, но выдает ошибки. И ввод-вывод кажись тоже неправильно. Помогите исправить.

В каждом столбце и строке содержится строго один нулевой элемент. Перестановкой строк добиться расположения нулевых элементов по главной диагонали.




//---------------------------------------------------------------------------

Код:
#include <vcl.h>
#include <conio.h>
#include <iostream.h>
#include <math.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
const int n=5;
float array[n][n];
float x=0;
int k;
 
cout<<"Input the array, where is only one zero element in each column and row: "<<endl;
for (int i=0; i<n; i++)
{
for (int j=0; i<n; j++)
{
cin>>array[i][j];
}
cout<<endl;
 }
 
cout<<"The original array: "<<endl;
for (int i=0; i<n; i++)
{
for (int j=0; i<n; j++)
{
cout<<array[i][j]<<' ';
}
cout<<endl;
}
 
for (int i=0;i<(n-1);i++)
{
for (int j=0;j<n;j++)
{
if ((array[j,i]==0)&&(!(j==i)))
{
k=j;
for (int l=0;l<n;l++)
{
x=array[i,l];
array[i,l]=array[k,l];
array[k,l]=x;
}
}
}
 
 
cout<<"The new array: "<<endl;
for (int i=0; i<n; i++)
{
for (int j=0; i<n; j++)
{
cout<<array[i][j]<<' ';
}
cout<<endl;
system("PAUSE");
        return 0;
 
}
//---------------------------------------------------------------------------



________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.



x=array[i,l];
array[i,l]=array[k,l];
array[k,l]=x;


Подскажите как исправить, пожалуйста.
Изображения
Тип файла: png 223к.PNG (5.7 Кб, 41 просмотров)

Последний раз редактировалось Serge_Bliznykov; 08.10.2013 в 07:03.
Лилитана вне форума Ответить с цитированием
Старый 08.10.2013, 06:06   #2
SaLoKiN
Форумчанин
 
Аватар для SaLoKiN
 
Регистрация: 19.09.2013
Сообщений: 597
По умолчанию

Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#include <conio.h>
#include <iostream.h>
#include <math.h>
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
int main(int argc, char* argv[])
{
const int n=5;
float Arr[n][n];
float x;
int k,i,j;

cout<<"Input the array, where is only one zero element in each column and row: "<<endl;
for (i=0; i<n; i++)
{
	for (j=0; j<n; j++)
		{
		cin>>Arr[i][j];
		}
cout<<endl;
}

cout<<"The original array: "<<endl;
for (i=0; i<n; i++)
{
	for (j=0; j<n; j++)
		{
			cout<<Arr[i][j]<<' ';
		}
cout<<endl;
}

for (i=0;i<(n-1);i++)
	{
	for (j=0;j<n;j++)
		{
		if ((Arr[j,i]==0)&&(!(j==i)))
			{
			k=j;
			for (int l=0;l<n;l++)
				{
				x=Arr[i,l];
				Arr[i,l]=Arr[k,l];
				Arr[k,l]=x;
				}
			}
		}
	}
	

//
cout<<"The new array: "<<endl;
for (i=0; i<n; i++)
{
	for (j=0; j<n; j++)
		{
		cout<<Arr[i][j]<<' ';
		}
	cout<<endl;
}
system("PAUSE");
return 0;

}
зациклило потому что у вас
Код:
for (int i=0; i<n; i++)
{
for (int j=0; i<n; j++)
так было
внутренний цикл по j,а вы условие оставили на i. Внутренний бесконечен)) ну и скобочки....

Смещайте табуляцией то что должно выполняться внутри Циклов,условий.Так и код легче читать и не запутаетесь в скобках. А еще notepad++ крутая вещь, язык программирования выбираешь- он подсвечивает синтаксис и по скобкам скрывает.

З.Ы. запустите, если будут ошибки. ждемс. а то у меня нет компилятора под рукой...
Сделал сам, помоги другому!
Что-то работает не так? Дебаггер в помощь!!!

Последний раз редактировалось SaLoKiN; 08.10.2013 в 06:15.
SaLoKiN вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
исправить ошибки sergey123 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 01.04.2012 16:35
нужно исправить ошибку,двумерный массив,удаления строки ленок-носок Помощь студентам 0 24.03.2012 22:57
исправить ошибку в программе на двумерный массив Катакомба Помощь студентам 4 20.10.2011 03:10
Нахождение ошибки в коде (форме) (Visual Basic{двумерный массив]) Bernuar Помощь студентам 0 11.05.2011 14:57