Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.09.2011, 18:13   #1
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию тип возвращаемого значения функции sqrt

я читал - функция sqrt(x); ,библиотека math.h, -принимает и возвращает тип double. Однако я передал ей в качестве аргумента тип float, компилится без ошибок. может она перегруженная? но как я понимаю она все равно должна возвращать тип double.
конкретно вопрос:
Код:
double a = 5.0;
float b = 5.0;

y = sqrt(a);//принимает double. какой тип возвращает?
x = sqrt(b);//принимает float. какой тип возвращает?
даже если функция перегружена, она всеравно, должна возвращать один тип данных -какой имненно?
или тут что-то по другому и мне не известное
SAMOUCHKA вне форума Ответить с цитированием
Старый 20.09.2011, 18:17   #2
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

возвращает в обоих случаях double.
Тип данных......Байты......Биты........ Min..........Max
float..................4........... .32.......3.4E-38....3.4E+38
double...............8............6 4......1.7E-308....1.7E+308
Как видно из таблицы float меньше double и поэтому float является подмножеством double. Следовательно float можно передавать без изменения типа в функцию sqrt.
Если помог, проси поставить минус. Будь оригинален!

Последний раз редактировалось Rin; 20.09.2011 в 18:28.
Rin вне форума Ответить с цитированием
Старый 20.09.2011, 19:00   #3
SAMOUCHKA
Форумчанин
 
Регистрация: 07.08.2011
Сообщений: 576
По умолчанию

СПАСИБО! понял.
если я передаю ей double -ошибок не будет.
в программе которую я пишу все переменные типа float. значит чтобы присвоить переменной результат работы sqrt, надо сначала преобразовать тип double в float. В принципе особых проблем с этим нет, но не очень удобно. Может есть аналогичная функция, но работающая с типом float?
SAMOUCHKA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
тип функции the_deer_one Общие вопросы C/C++ 4 17.06.2011 16:19
тип функции с++ Эндрю Помощь студентам 1 10.05.2011 14:41
указать возвращаемый тип функции )) vedro-compota Общие вопросы Delphi 4 23.04.2010 09:17
С++sqrt: неоднозначный вызов перегруженной функции Crazy_caramel Помощь студентам 10 13.11.2009 19:13
Помогите определить тип функции RNT Помощь студентам 10 14.06.2009 23:22