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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.02.2011, 14:45   #1
dmitryigitov
Новичок
Джуниор
 
Регистрация: 02.02.2011
Сообщений: 2
По умолчанию Надо переделать программу(модульная декомпозиция)

Здравствуйте! Препод дал мне задание сделать программу в C++ на основе модульной декомпозиции. Т.к. я на лекции не хожу и вообще не представляю что это такое, я написал обычную программу без использования этой штуки. Так вот:
Условие задачи:
Расположить на шахматной доске 8х8 максимальное количество дамок таким образом, чтобы каждую дамку могла бить одну из остальных. Результат оформить в виде таблицы.
Моя программа:
Код:
int _tmain()
{
	setlocale(LC_ALL,"russian_russia");//подключение Русского интерфейса

int i, j;
	double **doska= new double *[8];;//матрица-шахматная доска
	int damki=0;
	 
	for (i =0; i<=7; i ++) 
		doska[i] = new double [8];

	for(i=0;i<=7;i++)//первоначально все клетки пусты
		{
			for(j=0;j<=7;j++)
			doska[i][j]=0;

		}
	for(i=6;i>=1;i--)//заполнение клеток, кроме первых крайних рядов
	{
		for(j=1;j<=6;j++)
		if ((j+i)%2!=0)
		doska[i][j]=1;
	}

	for(i=6;i>=1;i--)//проверка нахождения элементов на соседних диагоналях
	{
		for(j=1;j<=6;j++)
			{

				if (doska[i][j]==1) 
					{
					if (doska[i-1][j-1]==1 & doska[i-1][j+1]==1) 
							{
					if (doska[i+1][j-1]==1 & doska[i+1][j+1]==1)
									{
										if (j>2)

										doska[i-1][j-1]=0;

										else 
										doska[i-1][j+1]=0;
									}
							}
					}

			}
	}

		cout << "Возможный вариант расстановки фигур: " << endl;
		cout << endl;

	for(i=0;i<=7;i++)
	{
		for(j=0;j<=7;j++)
		{
			if (doska[i][j]==1)
			{
				damki=damki+1;
			}

		cout << "|" << doska[i][j]<<"";

	
		}
		cout<<"|" << endl;
	}
	cout << endl;
	cout <<"Максимальное количество дамок: "<<damki<<endl;
	return 0;
}
Огромная просьба переделайте программку используя модульную декомпозицию=)
dmitryigitov вне форума Ответить с цитированием
Старый 03.02.2011, 10:51   #2
dmitryigitov
Новичок
Джуниор
 
Регистрация: 02.02.2011
Сообщений: 2
По умолчанию

Неужели никто не может помочь? Походу придёться самому разбираться...
dmitryigitov вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SOS Надо написать код в С++ ( есть образец, надо переделать просто!) Беата Общие вопросы C/C++ 9 08.12.2010 22:13
переделать программу с C# на С++ Loka Помощь студентам 4 03.12.2010 23:25
Надо переделать в ООП Авторитет Общие вопросы .NET 8 28.09.2010 19:26
Помогите переделать программу на VS C++ Many man Помощь студентам 1 16.10.2009 19:26
Помогите переделать программу. Valentin49 Помощь студентам 1 26.03.2009 13:58