Форум программистов, компьютерный форум CyberForum.ru

Не выходит сделать вычисление - C++

Войти
Регистрация
Восстановить пароль
 
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 373
22.02.2013, 09:45     Не выходит сделать вычисление #1
C++
1
2
3
4
5
6
void UTIL_Calculate( const float *v1, const float *v2, float flDist )
{
    float flMultiplier = flDist / 48.0;
    
    float MulScalar = v1 * flMultiplier;
}
float MulScalar = v1 * flMultiplier;

const float *v1

Error: Выражение должно иметь арифметический или перечисляемый тип.

Мне нужно получить значение v1 * flMultiplier и сохранить в переменную MulScalar,что не так ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2013, 09:45     Не выходит сделать вычисление
Посмотрите здесь:

Вычисление непрерывных дробей и выражений. Вычисление полиномов и их производных. C++
не выходит решение на С++ C++
C++ Прочитать бинарный файл и сделать вычисление
Вот часть кода, в нем я должен сделать если я ничего не ввожу то чтоб вывело сообщение о том что пользователь не ввел данных, но у меня не выходит C++
Не выходит из функции C++
C++ Не выходит из цикла while
C++ Помоги сделать по информатике задачу, что-то у меня ничего не выходит
C++ Не выходит перегрузка << и >>
C++ Не выходит из цикла
C++ Вычисление интергала, но входные данные сначала считываются из файла, а выходные наоборот в него записываются. Подскажите пожалуйста как это сделать
C++ Вычисление функции - сделать многофайловое приложение
Не выходит из цикла C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mrmaster88
42 / 42 / 3
Регистрация: 13.04.2012
Сообщений: 112
22.02.2013, 10:33     Не выходит сделать вычисление #2
Цитата Сообщение от pEntity Посмотреть сообщение
float MulScalar = v1 * flMultiplier;
float MulScalar = *v1 * flMultiplier;
pEntity
10 / 5 / 1
Регистрация: 12.12.2012
Сообщений: 373
26.02.2013, 01:51  [ТС]     Не выходит сделать вычисление #3
C++
1
2
3
4
5
6
7
8
9
10
11
void UTIL_TraceLine( edict_t *pPlayer, TraceResult *ptr, const float *v1, const float *v2, float fDist, int fNoMonsters, bool fHull = false, int iHull = 0 )
{
    // v1 - vecStart 
    // v2 - vecEnd
 
    float fMultiplier = fDist / 48.0;
 
    *v2 = *v1 - *v2;
    *v2 = *v2 * fMultiplier;
    *v2 = *v2 + *v1;
}
А как сделать вычисления?

*v2 = *v1 - *v2;
*v2 = *v2 * fMultiplier;
*v2 = *v2 + *v1;

Выражение должно быть допустимым для изменения левосторонним выражением.


Если убрать const,все будет в порядке,но у меня в функции заложено так const,что можно сделать?
alsav22
5284 / 4803 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
26.02.2013, 02:58     Не выходит сделать вычисление #4
Цитата Сообщение от pEntity Посмотреть сообщение
Если убрать const,все будет в порядке,но у меня в функции заложено так const,что можно сделать?
C++
1
*(const_cast<float*>(v2)) = *(const_cast<float*>(v2)) - *(const_cast<float*>(v1));
Yandex
Объявления
26.02.2013, 02:58     Не выходит сделать вычисление
Ответ Создать тему
Опции темы

Текущее время: 18:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru