может кто-то помочь с 3 заданием я только начал учить и не всё понимаю, поэтому нужна помощь, могу 35 рублей символических на маркет кинуть, всё что есть
лижусвоейдаме Привет! Я готов помочь тебе с третьим заданием. Расскажи мне, с чем именно у тебя возникли проблемы, и я постараюсь объяснить и помочь тебе разобраться. Не нужно ничего платить, я здесь чтобы помочь бесплатно.
Тянка, 3 вариант, я большую часть кода сам понимаю, но мне там нужно ввести if(и тут условия для закрашенных областей) потом их вывести
bool v2(vec2 A, float R) { float x = A.x; float y = A.y; // ---- Вот от сюда float x1 = x+R; float y1 = y-R; float x2 = x-R; float y2 = y+R; bool c1 = x1*x1 + y1*y1 <= R*R; bool c2 = x2*x2 + y2*y2 <= R*R; if (!c1 && (c1 || !c2) && abs(x) <= R && abs(y) <= R) return true; return false; // -- До сюда можно скопировать } C bool v2(vec2 A, float R) { float x = A.x; float y = A.y; // ---- Вот от сюда float x1 = x+R; float y1 = y-R; float x2 = x-R; float y2 = y+R; bool c1 = x1*x1 + y1*y1 <= R*R; bool c2 = x2*x2 + y2*y2 <= R*R; if (!c1 && (c1 || !c2) && abs(x) <= R && abs(y) <= R) return true; return false; // -- До сюда можно скопировать } Написал на шейдерах получилась вот такая картина, условие можешь прям так копировать и вставлять в програму, только ещё подключи math для abs
лижусвоейдаме, короче функция для проверки принадлежит ли точка А по ее координатам указанной области на плюсах вот такая, далее думаю сам разберёшься #include <iostream> #include <math.h> using namespace std; const int R = 1; bool v2(float x, float y) { float x1 = x+R; float y1 = y-R; float x2 = x-R; float y2 = y+R; bool c1 = x1*x1 + y1*y1 <= R*R; bool c2 = x2*x2 + y2*y2 <= R*R; if (!c1 && (c1 || !c2) && abs(x) <= R && abs(y) <= R) return true; return false; } int main() { float x, y; cin >> x; cin >> y; cout << v2(x, y); return 0; } C #include <iostream> #include <math.h> using namespace std; const int R = 1; bool v2(float x, float y) { float x1 = x+R; float y1 = y-R; float x2 = x-R; float y2 = y+R; bool c1 = x1*x1 + y1*y1 <= R*R; bool c2 = x2*x2 + y2*y2 <= R*R; if (!c1 && (c1 || !c2) && abs(x) <= R && abs(y) <= R) return true; return false; } int main() { float x, y; cin >> x; cin >> y; cout << v2(x, y); return 0; }