Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/26: Рейтинг темы: голосов - 26, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 16
1

Корень седьмой степени из числа?

21.09.2013, 16:02. Показов 5299. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <math.h>
#include <conio.h>
 
using namespace std;
void main ( )
{
                float a,b,y;
                cout<<"\n a=";
                cin>>a;
                cout<<"\n b=";
                cin>>b;
 
        if (a<0)            {y=pow(pow(a,3)-pow(b,3),1/7.0);
                            cout<<"\n y="<<y; }
        else    if (a>1)                if (b=0)
                                            cout<<"\nError!\n";
                                        else {y=a/b;
                                            cout<<"\n y="<<y; }
                else    if (pow(a,3)==pow(b,3))
                        cout<<"\nError!\n";
                        else {y=(a*a + b*b*b)/(a*a*a-b*b*b);
                        cout<<"\n y="<<y; }
                    
getch ();
}
C++
1
    y=pow(pow(a,3)-pow(b,3),1/7.0);
Проблема в этой строчке - в ответ всегда выдает единицу...
Заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.09.2013, 16:02
Ответы с готовыми решениями:

Взять корень из степени большого числа
Всем привет задачакая с помощью библиотеки math.h и функции pow() нужно взять корень степени числа....

Программа, вычисляющая корень четвертой степени от числа
Доброго времени суток. Народ, кому не сложно, создайте программу, вычисляющую корень четвертой...

Вычислить корень n-й степени из числа методом бинарного поиска
Дано действительное число a и натуральное n. Вычислите корень n-й степени из числа Для решения...

Корень произвольного степени из произвольного числа, введенного с клавиатуры
Не применяя встроенных функций, найти корень произвольного степени из произвольного числа,...

15
7 / 0 / 1
Регистрация: 20.09.2013
Сообщений: 18
21.09.2013, 16:14 2
Цитата Сообщение от 8lgm Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <math.h>
#include <conio.h>
 
using namespace std;
void main ( )
{
                float a,b,y;
                cout<<"\n a=";
                cin>>a;
                cout<<"\n b=";
                cin>>b;
 
        if (a<0)            {y=pow(pow(a,3)-pow(b,3),1/7.0);
                            cout<<"\n y="<<y; }
        else    if (a>1)                if (b=0)
                                            cout<<"\nError!\n";
                                        else {y=a/b;
                                            cout<<"\n y="<<y; }
                else    if (pow(a,3)==pow(b,3))
                        cout<<"\nError!\n";
                        else {y=(a*a + b*b*b)/(a*a*a-b*b*b);
                        cout<<"\n y="<<y; }
                    
getch ();
}
C++
1
    y=pow(pow(a,3)-pow(b,3),1/7.0);
Проблема в этой строчке - в ответ всегда выдает единицу...
Заранее спасибо.
задача? из разности кубов вычислить корень 7-ой степени?
0
179 / 24 / 7
Регистрация: 16.05.2013
Сообщений: 181
21.09.2013, 16:20 3
"один" не льзя разделить на "семь", получается производная из 0,(142857)
0
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 16
21.09.2013, 16:21  [ТС] 4
Цитата Сообщение от makashello Посмотреть сообщение
задача? из разности кубов вычислить корень 7-ой степени?
this
https://www.cyberforum.ru/atta... 1379766049

Задаем a и b, считаем и выводим y.
Миниатюры
Корень седьмой степени из числа?  
0
7 / 0 / 1
Регистрация: 20.09.2013
Сообщений: 18
21.09.2013, 16:21 5
Цитата Сообщение от Нету имени Посмотреть сообщение
"один" не льзя разделить на "семь", получается производная из 0,(142857)
да если вы хотите получить дробный тип, то надо 1.0/7.0. Правила возведения типов хромают, но задачу можно скинуть?
0
179 / 24 / 7
Регистрация: 16.05.2013
Сообщений: 181
21.09.2013, 16:29 6

Не по теме:

8lgm, прекращай украшать код


Цитата Сообщение от makashello Посмотреть сообщение
Правила возведения типов хромают, но задачу можно скинуть?
поподробнее
0
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 16
21.09.2013, 16:33  [ТС] 7
Цитата Сообщение от Нету имени Посмотреть сообщение

Не по теме:

8lgm, прекращай украшать код


Не по теме:

Что значит украшать? делать такие большие отступы?



И да, не работает именно вычисление корня 7 степени, все остальные ветви работают.
Btw 1.0/7.0 не работает. Ч.Я.Д.Н.Т.?
И да, нам в вузе уже дали задание, хотя язык с++ нам еще не читали... Считайте, что я занимаюсь самообучением.
0
Нету имени
21.09.2013, 16:41
  #8

Не по теме:

Цитата Сообщение от 8lgm Посмотреть сообщение
Что значит украшать? делать такие большие отступы?
вы меня правильно поняли, у вас код еле читабелен

0
7 / 0 / 1
Регистрация: 20.09.2013
Сообщений: 18
21.09.2013, 16:44 9
Если x отрицательное, а y не является целой, функция печатает сообщение об
ошибке DOMAIN в stderr, устанавливает errno в ERANGE и возвращает
либо положительное, либо отрицательное значение HUGE.
Описание функции pow. Оно такое значение тебе и вернет, потому что х является отрицательным, а y- дробным и результат "Отрицательная неопределённость" или -1.#IND. Может я не прав, но у меня такая версия. Сам написал и опробовал.

Добавлено через 1 минуту
Цитата Сообщение от makashello Посмотреть сообщение
да если вы хотите получить дробный тип, то надо 1.0/7.0. Правила возведения типов хромают, но задачу можно скинуть?
пример int и char складываем, то char будет возведен до int и т.д.
0
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 16
21.09.2013, 16:44  [ТС] 10
Цитата Сообщение от makashello Посмотреть сообщение
Если x отрицательное, а y не является целой, функция печатает сообщение об
ошибке DOMAIN в stderr, устанавливает errno в ERANGE и возвращает
либо положительное, либо отрицательное значение HUGE.
Описание функции pow. Оно такое значение тебе и вернет, потому что х является отрицательным, а y- дробным и результат "Отрицательная неопределённость" или -1.#IND
Через логарифм преобразовать как-нибудь тогда? Или как еще вывести корень нечетной степени из отрицательного числа?
0
7 / 0 / 1
Регистрация: 20.09.2013
Сообщений: 18
21.09.2013, 16:53 11
Цитата Сообщение от 8lgm Посмотреть сообщение
this
https://www.cyberforum.ru/atta... 1379766049

Задаем a и b, считаем и выводим y.
Ща может выход найду сек! проверю ток!

Добавлено через 4 минуты
Цитата Сообщение от 8lgm Посмотреть сообщение
Через логарифм преобразовать как-нибудь тогда? Или как еще вывести корень нечетной степени из отрицательного числа?
неее=( даже никак не проверишь=) даже калькулятор выдает бесконечность=)
0
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 16
21.09.2013, 17:24  [ТС] 12
Цитата Сообщение от makashello Посмотреть сообщение
Ща может выход найду сек! проверю ток!
Было бы неплохо...
0
179 / 24 / 7
Регистрация: 16.05.2013
Сообщений: 181
21.09.2013, 17:25 13
А как такой вариант?
C++
1
double y = -pow( abs( pow( a, 3 ) - pow( b, 3 )), 1.0/7.0 );
0
7 / 0 / 1
Регистрация: 20.09.2013
Сообщений: 18
21.09.2013, 17:27 14
Цитата Сообщение от Нету имени Посмотреть сообщение
А как такой вариант?
C++
1
double y = -pow( abs( pow( a, 3 ) - pow( b, 3 )), 1.0/7.0 );
я тоже так пробовал, но как ты проверишь результат вычислений?
0
179 / 24 / 7
Регистрация: 16.05.2013
Сообщений: 181
21.09.2013, 17:33 15
Цитата Сообщение от Нету имени Посмотреть сообщение
double y = -pow( abs( pow( a, 3 ) - pow( b, 3 )), 1.0/7.0 );
этот вариант комплементарен, при условии что а<0( по умолчанию ) и b>0
при a<0 и b<a, минус лишний

Добавлено через 1 минуту
Слипаются глаза, вот мой последний вариант на сегодня и я иду спать
C++
1
2
a<0 && b<a ? y = pow( abs( pow( a, 3 ) - pow( b, 3 )), 1.0/7.0 ): 
             y =-pow( abs( pow( a, 3 ) - pow( b, 3 )), 1.0/7.0 );
1
0 / 0 / 0
Регистрация: 21.09.2013
Сообщений: 16
22.09.2013, 18:06  [ТС] 16
Сделал вот так...
C++
1
2
3
4
5
6
7
8
9
10
    if (a<0) if ((a*a*a-b*b*b)<0) 
                {
            y=sqrt(pow(pow((pow(a,3)-pow(b,3)),2),1.0/7.0));
            cout<<"\n y=-"<<y;
                }
                else 
                {
            y=sqrt(pow(pow((pow(a,3)-pow(b,3)),2),1.0/7.0));
            cout<<"\n y="<<y;
                }
Добавлено через 11 минут
А-аа, abs - это модуль. Спасибо, я понял, сделал
0
22.09.2013, 18:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.09.2013, 18:06
Помогаю со студенческими работами здесь

Написать программу, которая делит числа в 5 степени на число в 14 степени и выводит ответ в 5 степени. Найти ошибку
Ребят, такая проблема, задание: Написать программу, которая делит числа в 5 степени на число в 14...

Корень n-й степени
Всем доброго времени суток. Как взять корень n-й степени? При использовании данного варианта:...

Как выразить в С корень n-степени.
Как выразить в С корень n-степени. Подскажите.

Не получается извлечь корень n-го степени
Не работает часть кода с корнем, по непонятным мне причинам всегда выводит 1, не важно какое...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru