Форум программистов, компьютерный форум, киберфорум
Наши страницы

Задача "Салфетки" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ повторный прогон программы http://www.cyberforum.ru/cpp-beginners/thread1004987.html
Подскажите, пожалуйста, как сделать повторный прогон алгоритмов без запуска программы (хотите начать заново? (y/n)). На примере простейшей программы "Hello, world". #include <iostream> int main()...
C++ программа не работает задание: Определить входит ли введённая цифра в заданное натурально число. код выдаёт ошибки и я не могу понять как их исправить т.к. нуб. помогите пожалуйста.... код программы: #include... http://www.cyberforum.ru/cpp-beginners/thread1004980.html
Помогите найти ошибку в коде C++
Проблема вот в чём, есть программа, довольно большая по кол-ву строк и поэтому весь код показать не смогу, впринципе вопрос такой: -после завершения работы функции с объектом в меню есть пункт...
Ошибка в алгоритме Рунге-Кутты C++
Здравствуйте! При выполнении курсовой работы по вычислению координат положения спутника ГЛОНАСС столкнулся с ошибкой, что неправильно вычисляются координаты. Числа похожие, но не те. Есть рабочая...
C++ Как в файле перейти на новую строчку? http://www.cyberforum.ru/cpp-beginners/thread1004953.html
Как в файле перейти на новую строчку? Пробовал так fstream sc("Save\\1.txt");//Открыл файл sc.getline(infscore,'endl'); //Считал инфу до конца строки ......... lenscore=strlen(infscore)+1;...
C++ Вызов функции проверки Доброго времени суток! 2-ой день мучаюсь с задачей. Есть массив прямоугольников, вершины которых я считал с файла. Задача состоит в том, чтобы проверить пересекаются ли они. Сделал соответствующую... подробнее

Показать сообщение отдельно
RQdan
65 / 65 / 17
Регистрация: 26.10.2013
Сообщений: 198
11.11.2013, 23:05
Цитата Сообщение от triadec_96 Посмотреть сообщение
C++
1
2
f>>n; 
f>>n;
Во второй раз наверно надо писать пресловутое K.

Цитата Сообщение от triadec_96 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
while(!f.eof()) 
{
f>>l[id];
 f>>t[id];
 f>>r[id];
 f>>b[id];
 f>>ch[id];
}
id в цикле не меняется, равняясь постоянно 0. Поэтому все данные записываются только в первую ячейку каждого масива.

Проверку же на попадание салфетки на стол решить довольно просто - необходимо, чтобы координаты хотя бы одной вершины салфетки находились в поле стола.
Функция проверки на попадание на стол:
C++
1
2
3
4
5
6
7
8
bool Check(int x,int y,int x1,int y1)
{
 if(((x>0)&&(x<N))&&((y>0)&&(y<N))) return true;
 if(((x>0)&&(x<N))&&((y1>0)&&(y1<N))) return true;
 if(((x1>0)&&(x1<N))&&((y>0)&&(y<N))) return true;
 if(((x1>0)&&(x1<N))&&((y1>0)&&(y1<N))) return true;
 return false;
}
Вызов функции в программе:
C++
1
2
for(int i=0,i<K;i++)
 if(Check(l[i],t[i],r[i],b[i])) {салфетка на столе - записываем ее цвет в файл}
Как то так - куда проще и меньше кода. Если же надо еще учитывать и наложение салфеток друг на друга, то задача станет куда сложнее .
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru