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

Qt

Войти
Регистрация
Восстановить пароль
 
zontik24
9 / 9 / 4
Регистрация: 14.06.2013
Сообщений: 378
#1

Алгоритм триангуляции выводит одно и то же число - C++ Qt

26.10.2015, 16:41. Просмотров 210. Ответов 3
Метки нет (Все метки)

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
   QVector<double> x(polygon.size());
   QVector<double> y(polygon.size());
 
    for(int i=0; i<polygon.size(); i++)
    {
        x.push_back(polygon[i].x());
        y.push_back(polygon[i].y());
    }
 
     double s;
 
     for(int i=0; i<polygon.size(); i++)
     {
         s = s + ((x[i]*y[i+1])-(x[i+1]*y[i]));
     }
 
    qDebug() << "area = " << s/2.0;
polygon - вектор точек, добавляющихся динамически


Отладка показывает число: "area = 6.6015e-318", какие точки бы не взял
0
Миниатюры
Алгоритм триангуляции выводит одно и то же число  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2015, 16:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Алгоритм триангуляции выводит одно и то же число (C++ Qt):

Программа считывает с клавиатуры число N, L, K и выводит одно число. - Free Pascal
Задача Leopold Кот Леопольд пошел на рыбалку и наловил рыбы. Каждую рыбу он старательно взвесил. Первая рыба (самая маленькая),...

Random всегда выводит одно и то же число - C#
Всем пт! У меня следующая проблема: Данный код выводит всегда одно и то же число, хотя, по сути, внутри вложенного цикла (Random...

Рандом выводит всегда одно и тоже число - C++
mass=rand(); всегда выводит число ниже, что делать? -842150451

Алгоритм триангуляции Делоне - Алгоритмы
Здравствуйте! У меня возник вопрос касательно итеративного алгоритма триангуляции Делоне набора точек. Кратко опишу алгоритм. ...

.NET 4.x Выводит одно число, вместо массива чисел(данных) - Visual Basic .NET
Доброго времени суток, возникла такая проблема: я написал програмку, которая рассчитывает u1(j), v1(j), t1(j), alf(i), это массивы данных,...

Почему ответ не выводит матрицей, а выдает только одно число - MathCAD
Почему последние два ответа не выводит матрицей, а выдает только одно число? Помогите пожалуйста

3
zontik24
9 / 9 / 4
Регистрация: 14.06.2013
Сообщений: 378
26.10.2015, 16:57  [ТС] #2
Немного правил цикл, но все равно тоже самое
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
for(int i=0; i<polygon.size(); i++)
     {
         if(i == polygon.size()-1) {
             s = s + ((x[polygon.size()-1]*y[0])-(x[0]*y[polygon.size()-1]));
             qDebug() << "'" <<s;
         }
         else {
            s = s + ((x[i]*y[i+1])-(x[i+1]*y[i]));
            qDebug() << s;
         }
    }
Вывод:
1.3203e-317
1.3203e-317
' 1.3203e-317
area = 6.6015e-318

Подозреваю, что эти значения сидят изначально, но как от них избавиться - не знаю, так как чтобы были точки -их нужно нарисовать, а это число появляется даже если не рисую

Может у меня ошибка в основном выражении?
0
NoMasters
Псевдослучайный
1907 / 1118 / 77
Регистрация: 13.09.2011
Сообщений: 3,173
26.10.2015, 17:13 #3
Стоит инициализировать s нулём.
0
zontik24
9 / 9 / 4
Регистрация: 14.06.2013
Сообщений: 378
26.10.2015, 19:26  [ТС] #4
тогда площадь = 0

Добавлено через 2 часа 8 минут
Кто-нибудь может помочь?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2015, 19:26
Привет! Вот еще темы с ответами:

Почему то ввожу одно число и при этом выводит множества цифр? - C#
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication2 { ...

Множества. выводит в возрастающем порядке все цифры, которые не входят ни в одно число - Turbo Pascal
дана последовательность из n натуральных чисел.написать программу,которая выводит в возрастающем порядке все цифры,которые не входят ни в...

При подставлении матрицы в формулу в маткаде выводит одно число. векторизацию проводила - ничего не меняется - MathCAD
Здравствуйте. Считаю формулу, в ней есть ряд констант, которые я прописала, и собсно массив, который надо вставить. А в ответе выводит одно...

Ввод 5-ти чисел, если среди них есть хоть одно отрицательное число, то программа выводит YES - Visual C++
1. Пользователь вводит 5 чисел, если среди них есть хоть одно отрицательное число, то программа выводит YES, иначе она выводит NO.


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru