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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2008, 20:21   #11
theos
Форумчанин
 
Аватар для theos
 
Регистрация: 10.12.2007
Сообщений: 158
По умолчанию

Тьфу ))))
Замените на

Код:
if(m[i][j-1] != 0) continue;
И наверху, где наличие 0 проверяется - тоже.

Это проверка на то, что цикл предыдущий вышел не через break;, а сам по себе закончился. А лучше напишите так...


Код:
	for(i = 0;i < 5;i++)
	{
		for(j = 0;j < 5;j++) if(m[i][j] == 0) break;
		if(j == 5) continue; // если нашли хоть один 0 - условие неверно

		for(k = 1;k <= 5;k++) // число, которое ищем
		{
			for(j = 0;j < 5;j++)
			{
				if(m[i][j] == k)
				{
					m[i][j] = 0; // первое в строке совпадение заменим на 0
					break;
				}
			}
		}

		for(j = 0;j < 5;j++) if(m[i][j] != 0) break;


		if(j != 5) continue;
		// если в строке остались только 0 - всё верно
		res += 1;
	}

Должно работать.
theos вне форума Ответить с цитированием
Старый 25.11.2008, 20:22   #12
theos
Форумчанин
 
Аватар для theos
 
Регистрация: 10.12.2007
Сообщений: 158
По умолчанию

Код:
if(j != 5) continue;
Так даже лучше, так как мы не нарвёмся на -1й элемент массива )))
theos вне форума Ответить с цитированием
Старый 25.11.2008, 20:29   #13
raccooni
 
Регистрация: 25.11.2008
Сообщений: 9
По умолчанию

А еще мне для другой проги необходим знак или а как его набрать на клаве не знаю
raccooni вне форума Ответить с цитированием
Старый 25.11.2008, 20:39   #14
theos
Форумчанин
 
Аватар для theos
 
Регистрация: 10.12.2007
Сообщений: 158
По умолчанию

Ээээ, то есть "знак"? Не понял?

Иконка что ли?
theos вне форума Ответить с цитированием
Старый 25.11.2008, 20:52   #15
raccooni
 
Регистрация: 25.11.2008
Сообщений: 9
По умолчанию

не ну в с++ "или" это две вертикали а как на клаве набрать
raccooni вне форума Ответить с цитированием
Старый 25.11.2008, 23:55   #16
StarWorm
Форумчанин
 
Регистрация: 17.11.2008
Сообщений: 233
По умолчанию

рядом с "<-" backspace есть кнопочка такая "\" или "|", вот если на SHIFT нажмешь и кликнешь на ней 2 раза, то будет "ИЛИ" = ||
StarWorm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
2 программы,Visual C++,массивы-матрицы.Помогите пожалуйста ,кто может VirtuNomad Помощь студентам 1 04.06.2008 00:01
помогите кто может Тарон Паскаль, Turbo Pascal, PascalABC.NET 4 04.03.2008 08:41
Помогите кто может!!! Shatyn Помощь студентам 1 21.06.2007 20:29
помогите в QBasic'е 2-мерные массивы Sergmodern Помощь студентам 1 05.06.2007 08:39