Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 15.05.2020
Сообщений: 6

Задача по геометрии на с++

15.05.2020, 12:45. Показов 2465. Ответов 2

Студворк — интернет-сервис помощи студентам
Всем привет! Столкнулся с такой проблемой: после выхода из процедуры программа обнуляет значения q и z.
Если добавить строчки вывода q и z в саму процедуру, то будет видно, что подсчёт идёт. Всё остальное считает правильно.
Задача: "Среди точек плоскости получить три точки, для которых треугольник с вершинами в данных точках содержит такое же количество внутренних точек множества, что и окружность, проходящая через данные точки". Для удобства беру точки (0;2), (2;0) и (-2;0). Надеюсь на вашу поддержку) Который день не получается решить.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <cmath>
#include <iostream>
#include <ctime>
#include <stdio.h>
 
using namespace std;
 
int okr(int x1,int y1,int x2,int y2,int x3,int y3, int x4, int y4, int n, int z, int q)
{
    int E=0, F=0, G=0, a=0, b=0, c=0, r, h, x_center, y_center;
    E = (x2 - x1)* (x1 + x2) + (y2 - y1)*(y1 + y2);
    F = (x3 - x1) * (x1 + x3) + (y3 - y1) * (y1 + y3);
    G = 2 * ((x2-x1) * (y3 - y2) - (y2 - y1) * (x3 - x2));
    x_center = ((y3 - y1) * E - (y2 - y1) * F) / G; cout<<"x = "<<x_center;
    y_center = ((x2 - x1) * F - (x3 - x1) * E) / G; cout<<" y = "<<y_center;
    r= (x1-x_center)*(x1-x_center) + (y1-y_center)*(y1-y_center); cout<<" r = "<<r<<endl;
    a = (x1 - x4) * (y2 - y1) - (x2 - x1) * (y1 - y4);
    b = (x2 - x4) * (y3 - y2) - (x3 - x2) * (y2 - y4);
    c = (x3 - x4) * (y1 - y3) - (x1 - x3) * (y3 - y4);
    h= (x4-x_center)*(x4-x_center) + (y4-y_center)*(y4-y_center); cout<<" h = "<<h<<endl;
    if ((a >= 0 && b >= 0 && c >= 0) || (a <= 0 && b <= 0 && c <= 0))
    {
        z=z+1;
    }
    if (h<=r)
    {
        q=q+1;
    }
   return (z,q);
}
 
int main()
{
    int n=3, i, j, k, e, q=0, z=0;
    int* x = new int[n]; int* y = new int[n];
    srand( time(0));
    cout<<"Точки:"<<endl;
    for (i=0;i<n;i++)
    {
        //x[i]= rand()%8-4;
        //y[i]= rand()%8-4;
        cin>>x[i]>>y[i];
        cout <<"("<< x[i] <<" , "<< y[i] <<")"<< endl;
    }
    cout<<""<<endl;
    for (i=0;i<n-2;i++)
        for (j=i+1;j<n-1;j++)
            for (k=j+1;k<n;k++)
            {
                if (sqrt((x[i]*y[j] + x[j]*y[k] + x[k]*y[i]) - (x[j]*y[i] + x[k]*y[j] + x[i]*y[k]))!=0) //если точки НЕ лежат на одной прямой, то...
                {
                for (e=0;e<n;e++)
                {
                    okr(x[i],y[i],x[j],y[j],x[k],y[k],x[e],y[e],n,z,q);
                }
                cout<<" q = "<<q<<endl;
                cout<<" z = "<<z<<endl;
                q=0; z=0;
                }
            }
return 0;
}
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.05.2020, 12:45
Ответы с готовыми решениями:

задача по геометрии
с точки К к площади а проведено наклонные КА и КВ,которые создают с плоскостью углы 45 и 30 (градусов) соответсвенно угол между наклонными...

Задача по геометрии
Ребят помогите пожалуйста с задачей 18 по геометрии текстовые задания перепечатывайте на форум. читайте правила. Добавлено через 16...

Задача по геометрии
Зову на помощь: Мише исполнилось n лет. Праздничный торт, испеченный по этому случаю, имеет форму круга радиуса r с центром в начале...

2
365 / 321 / 219
Регистрация: 21.02.2013
Сообщений: 756
15.05.2020, 13:06
Лучший ответ Сообщение было отмечено nodi27 как решение

Решение

а вы их в функцию по ссылке или указателю передавайте
C++
1
int okr(int x1,int y1,int........ int& z, int& q)
int&z, int &q -обратите внимание
иначе они просто копируются при вызове функции и над копиями уже происходят изменения, а в мейн функции значения так и не изменятся
1
0 / 0 / 0
Регистрация: 15.05.2020
Сообщений: 6
15.05.2020, 13:08  [ТС]
Спасибо! Ты просто лучший
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.05.2020, 13:08
Помогаю со студенческими работами здесь

Задача по геометрии
402. Точка Н (—2, 5) является основанием перпендикуляра, опущенного из начала координат на прямую /. Написать уравнение прямой /. ...

задача по геометрии
каково геометрическое место точек пространства, равноудалённых от всех трёх вершин заданного треугольника

Задача по геометрии
Вроде написал программу, работает, компилиться, но ответы выводит странные #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; ...

Задача по аналитической геометрии
Здравствуйте, уважаемые форумчане! Помогите, пожалуйста, решить задачу по геометрии. &quot;Через точку Р(0;1) провели прямую так, чтобы...

задача по геометрии 7 класс
Помогите пожалуйста решить задачу, Дан треугольник ABC угол BHC =90 градусов угол HCM =20 градусов найти угол B и угол A


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru