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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 135, средняя оценка - 4.90
php_coder
Сообщений: n/a
#1

Функция pow. Преобразование типов - C++

26.10.2008, 09:57. Просмотров 17520. Ответов 5
Метки нет (Все метки)

Есть два вопроса:

1) в докуметации нашёл описание, что pow(x,y) возводит x в степень y и притом входные параметры должны быть или double или float. Как поступить если x && y = int? а также интересует может ли в этой ф-ции y принимать дробные значения и x отрицательные?

2) есть код
C++
1
2
3
4
5
6
float pogresh(float kStd, float sumK)
{
    int n = 3;
    float pogr =(float)( kStd * pow(sumK,0.5)) / (n*(n-1));
    return pogr;
}
возвращает при любых значениях sumK, и одном и том же значении коэфф. Стьюдента, тобишь KStd, одно и тоже значение.

буду благодарен людям, скинувшим хорошую документацию про функции math (желательно на русском), т.к. в самоучители про это меньше страницы написано.

Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2008, 09:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция pow. Преобразование типов (C++):

Функция с переменным числом параметров. Преобразование типов - C++
Добрый день. Проходил недавно тест на собеседовании, довольно странный, на мой взгляд, был вопрос: Есть функция void f(const char*...

Преобразование pow(a,b) - C++
Как заменить функцию pow на примере двойки? Вводиться число с клавиатуры, это число - будет ограничитель результата возведения 2-ки в какую...

Функция pow - C++
#include <iostream> #include <cmath> using namespace::std; double pow(double x, double y) { cin >> x >> y; if...

Функция pow() - C++
Здравствуйте!Хотелось спросить у опытных программистов - скажите пожалуйста, как функция pow() считает число в степень?Она же не в лоб, как...

Срочно функция pow(a,n) - C++
По первому условию если идти то всегда будет '1' почему не пойму. #include <stdafx.h> #include <iostream> #include <windows.h> ...

Рекурсивная функция pow(x, n) - C++
Описать рекурсивную функцию pow (x, n) от действительного х (х != 0) и целого n, которая вычисляет величину x n по формуле: формулу я...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
XuTPbIu_MuHTAu
Эксперт С++
2225 / 740 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
26.10.2008, 10:29 #2
1.
Произойдет преобразование типов int->double.Это,Кстати,не вопрос к документации math,просто знание основ.
Дробные и отрицательные значения принимает,кажется.Возьми и проверь,это две минуты.
2. у меня код работает как надо.
Код
pogresh(1,4)  0.333333
pogresh(1,8)  0.471405
pogresh(2,5)  0.745356
pogresh(2,10) 1.054093
pogresh(2,36) 2.000000
p.s документация ищется на яндексе и гугле.

Добавлено через 8 минут 20 секунд
Прогнал pow для отрицательных,дробных и дробных отрицательных значений.Работает.
0
php_coder
Сообщений: n/a
26.10.2008, 10:34 #3
>> Возьми и проверь,это две минуты.
если бы не проверял то и вопроса бы не было

could be 'long double pow(long double,int)' при использовании :
Код
float pogr =(float)( kStd * pow(sumK,[B]0.5[/B])) / (n*(n-1));
если использовать :
Код
float pogr =(float)( kStd * pow(sumK,[B]1/2[/B])) / (n*(n-1));
ошибки нету но и резултат получается не верным.

п.с: одно дело искать в google, другое пользоваться мануалами, которые посоветовал специалист по данному вопросу


>> Прогнал pow для отрицательных,дробных и дробных отрицательных значений.Работает.
юзаю MW C++ 2008 Express, не работает )



>>>>>>>>>>>>>>>Всё Работает, я Ошибся =) , спс за помошь
XuTPbIu_MuHTAu
Эксперт С++
2225 / 740 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
26.10.2008, 10:38 #4
Ну,в наше время сложно отыскать специалистов по функции pow.
Код с 1/2 работать,конечно,не будет.
Попробуй
Код
printf("%f",(float)(1/2));
Увидишь ноль. Почему?Потому что делишь целое на целое. Результат получается целого типа,и только после этого преобразуется в тип float.
При делении целочисленных типов дробная часть отбрасывается. Это поправимо. Пиши 1.0/2.0,или 1/2.0 или 1.0/2. Советую почитать что-нибудь про преобразование типов.

P.S документацию,которую посоветуют профессионалы,они скорее всего сами когда-то нашли в яндексе или гугле)
1
amatorIP
3 / 3 / 0
Регистрация: 22.07.2010
Сообщений: 141
26.11.2010, 15:51 #5
А как контролировать количество знаков после точки?
Например получил ответ 56.1232, а хочу получить 56.1231854... и дальше.
0
Quetalse
Сообщений: n/a
03.12.2013, 00:29 #6
Цитата Сообщение от amatorIP Посмотреть сообщение
А как контролировать количество знаков после точки?
Например получил ответ 56.1232, а хочу получить 56.1231854... и дальше.
C++
1
printf("f", w, p, number); // w p ширина и точность
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.12.2013, 00:29
Привет! Вот еще темы с ответами:

Функция pow и график - C++
Всем привет! Пишу программу, которая аппроксимирует функцию разной степенью полинома и по полученному графику делает прогноз. Так вот, в...

Функция Floor и Pow - C++
Народ,два дня в C++ только я... Задание: Создать функцию floorQubicRoot, находящую наибольшее целое число, которое не превышает...

Функция pow() перегрузки - C++
нужно найти расстояние между двумя точками L=((x2-x1)^2+(y2-y1)^2)^0.5 Написал 3 раза pow() - ругается. Сделал функцией - ругается на...

функция pow для int - C++
собственно говоря проблема такая - мне нужно возвести целое число в целую степень. Например я пишу так double f(int x,int y) { ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.12.2013, 00:29
Ответ Создать тему
Опции темы

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