Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Типы переменных, Console wizard 
V
    Опции темы
Mpak
Дата 14.12.2006, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: нет
Всего: 7



Есть вот такие строчки в программе:
Код

Rmin=(pow(exp,(2*Zmin-1)))/(pow(exp,(2*Zmin+1)));
Rmax=(pow(exp,(2*Zmax-1)))/(pow(exp,(2*Zmax+1)));


Переменные RminRmaxZmin и Zmax определены как float.

Си выдает ошибки на этих строках, вида:
Код

Cannot convert 'double (*)(double)' to 'double'
Type mismatch in parameter '__x' (wanted 'double', got 'double (*)(double)')


4 раза...
 smile 


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
INHazeR
Дата 14.12.2006, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 8.12.2006

Репутация: нет
Всего: нет



Код

Rmin = (float)(pow(exp,(2*Zmin-1)))/(pow(exp,(2*Zmin+1)));
Rmax = (float)(pow(exp,(2*Zmax-1)))/(pow(exp,(2*Zmax+1)));


Это сообщение отредактировал(а) INHazeR - 14.12.2006, 14:47
PM MAIL   Вверх
Mpak
Дата 14.12.2006, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: нет
Всего: 7



Тоже самое  smile 


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
INHazeR
Дата 14.12.2006, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 8.12.2006

Репутация: нет
Всего: нет



попробуй объяви свои переменные как double
PM MAIL   Вверх
TaNK
Дата 14.12.2006, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 669
Регистрация: 29.10.2006
Где: Краснодар

Репутация: нет
Всего: 1



Код

int main(int argc, char* argv[])
{
 double Rmin,Rmax,Zmin=1,Zmax=1,exp=1;
 Rmin = (float)(pow(exp,(2*Zmin-1)))/(pow(exp,(2*Zmin+1)));
Rmax = (float)(pow(exp,(2*Zmax-1)))/(pow(exp,(2*Zmax+1)));
cout<<Rmin<<" " << Rmax;
getch();
        return 0;

так все работает! 


--------------------

Oracle 11.2.0.3.0
FireBird 1.0-2.5


PM MAIL ICQ   Вверх
Romikgy
Дата 14.12.2006, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 8
Всего: 146



Цитата(Mpak @  14.12.2006,  13:42 Найти цитируемый пост)
Cannot convert 'double (*)(double)' to 'double'


Цитата(Mpak @  14.12.2006,  13:42 Найти цитируемый пост)
Rmin=(pow(exp,(2*Zmin-1)))/(pow(exp,(2*Zmin+1)));
Rmax=(pow(exp,(2*Zmax-1)))/(pow(exp,(2*Zmax+1)));

а ты уверен что матерится на эти строки , больше похоже что на какую то ф-цию матерится
с одним параметром типа double 
а pow вроде имеет 2 параметра


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Mpak
Дата 14.12.2006, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: нет
Всего: 7



Цитата(TaNK @ 14.12.2006,  18:09)
Код

 double Rmin,Rmax,Zmin=1,Zmax=1,exp=1;


Зачем задавать exp=1
Это же константа...(экспонента) smile 


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
INHazeR
Дата 14.12.2006, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 8.12.2006

Репутация: нет
Всего: нет



так она и вызывается с двумя параметрами:
Код

pow(exp,(2*Zmin-1))

степень и число, которое надо возвести в степень

TaNK

зачем выполнять приведение к типу float если мы объявили Rmin, Rmax как double? smile

Mpak

чтобы быть до конца уверенным, надо либо убедиться, что exp действительно объявлена где-то в math как экспонента, (go to definition), или самому написать
Код

#define exp 2.78


Это сообщение отредактировал(а) INHazeR - 14.12.2006, 15:20
PM MAIL   Вверх
Fazil6
Дата 14.12.2006, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 35
Всего: 60



exp
это переменная или функция експоненты? 
PM MAIL   Вверх
Mpak
Дата 14.12.2006, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: нет
Всего: 7



Romikgy, одна из них константа.
И показывает, что ошибка в этих строках, а место в строке не показывает...


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
Fazil6
Дата 14.12.2006, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 35
Всего: 60



компиллятор видит эту переменную как указатель на функцию
PM MAIL   Вверх
Mpak
Дата 14.12.2006, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 445
Регистрация: 12.11.2006

Репутация: нет
Всего: 7



Fazil6, упс smile ....
насчет функции понял.....smile
Извините, за глупую тему...


--------------------
В любой откомпилированной программе есть, по крайней мере, одна ошибка...
P.S. А у меня их минимум две...
PM MAIL ICQ   Вверх
TaNK
Дата 14.12.2006, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 669
Регистрация: 29.10.2006
Где: Краснодар

Репутация: нет
Всего: 1



извиняйте, забыл просто тут изменить, на компе проверял с double а exp задал просто для проверки...но у меня все работает..
Код

int main(int argc, char* argv[])
{
 double Rmin,Rmax,Zmin=1,Zmax=1,exp;
 Rmin = (double)(pow(exp,(2*Zmin-1)))/(pow(exp,(2*Zmin+1)));
Rmax = (double)(pow(exp,(2*Zmax-1)))/(pow(exp,(2*Zmax+1)));
cout<<Rmin<<" " << Rmax;
getch();
        return 0;



--------------------

Oracle 11.2.0.3.0
FireBird 1.0-2.5


PM MAIL ICQ   Вверх
TaNK
Дата 14.12.2006, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 669
Регистрация: 29.10.2006
Где: Краснодар

Репутация: нет
Всего: 1



посмотри может копил ругается на то что не подключен 
Код

#include <complex.h>

хотя думаю не из за этого


--------------------

Oracle 11.2.0.3.0
FireBird 1.0-2.5


PM MAIL ICQ   Вверх
Romikgy
Дата 14.12.2006, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 8
Всего: 146



Цитата(Mpak @  14.12.2006,  13:42 Найти цитируемый пост)
exp

поменяй имя этой переменой


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1489 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.