Guest - Grazielle - Postado Novembro 29, 2004 Denunciar Share Postado Novembro 29, 2004 Tenho que tirar a raiz cúbica e a função cbrt não funciona... ela não é reconhecida pela biblioteca math.h...Alguém sabe de alguma função que calcule a raiz cúbica? Ou porque cbrt() não funciona? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kandrade Postado Novembro 30, 2004 Denunciar Share Postado Novembro 30, 2004 (editado) oi Graziele........você pode usar a função pow que é definida na biblioteca math.ho primeiro parametro é o número a ser calculado e o segundo parametro é a potencia.Ex: raiz cubica de 5pow(5,1.0/3.0)te+............ Editado Abril 25, 2007 por kandrade Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Lordguedes Postado Abril 24, 2007 Denunciar Share Postado Abril 24, 2007 Nossa ou eu não entendo nada, ou simplesmente tem gente enrolando a pergunta, definida...ela foi bem clara na pergunta e nem uma das resposta anteriores atendeu.. nesse caso vou átras da resposta e quando achar posto aqui, porque eu também quero saber como faz isso de maneira fácil como a raiz quadarada e potência. :angry: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jonas de Abreu Postado Abril 24, 2007 Denunciar Share Postado Abril 24, 2007 Kandrade, acho que voce entendeu errado a pergunta. A pergunta é sobre raiz cubica e não exponenciacao. Bom, a funcao cbrt() faz parte da biblioteca math.h e é padrão ANSI. O problema deve estar no momento da linkagem. Grazielle, voce esta especificando que a math.h deve ser linkada? no compilador que eu uso (GCC) voce faz isso acrescentando -lm nas opcoes do compilador. Uma outra coisa que pode estar ocorrendo é a implementacao da sua math.h não possuir essa funcao. Em Linux ou MacOS X isso é bem raro, mas já vi bastante em windows (não especificamente com essa funcao, mas com outras funcoes mais obscuras para trabalhar com long double).Em todo caso, é um bom exercicio voce mesma tentar implementa-la. Procure pela expansao de Taylor da funcao raiz cubica, encontre a recorrencia dos termos e implemente. No google voce provavelmente encontra a expansao e não vai precisar ficar horas calculando derivadas e fatorias para desenvolve-la a partir do zero.Kandrade, desculpe. Acabei de fazer um teste e vi que com o pow da pra calcular a raiz tambem. Acho que voce so se confundiu no expoente.Parti do seguinte principio: A raiz cubica de X é igual a X^(1/3).Portanto, o seguinte codigo calcula a raiz cubica de X:pow(x, 1.0/3.0); Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Lordguedes Postado Abril 24, 2007 Denunciar Share Postado Abril 24, 2007 Nossa isso que foi resposta, bom amiga só prá agilizar eu consegui aqui no meu , eu uso o windows e instalei o DEV-C++ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Lordguedes Postado Abril 24, 2007 Denunciar Share Postado Abril 24, 2007 complementando ....Nossa isso que foi resposta, bom amiga só prá agilizar eu consegui aqui no meu , eu uso o windows e instalei o DEV-C++ como a função srqt aqui no meu funcionou o cbrt agora funcionou também eu que tava postando ele de forma errada mesmo.. mais o importante que deu certo...vou posta meu código font para que você possa ver e tentar no seu, porque talves sei lá você esteja colocando ele de forma errada...main ()// inicio do algoritimo e declaração de vareaveis{ float raizq,raizc,quadrado,cubo,numero; printf("Informe um numero que seja positivo e maior que zero.\n"); scanf("%f",&numero); if (numero > 0) { quadrado=pow (numero,2); cubo=pow (numero,3); raizq=sqrt(numero); raizc=cbrt(numero); printf("\nO numero digitado ao quadrado e %.2f\n",quadrado); printf("\nO numero digitado ao cubo e %.2f\n",cubo); printf("\nA raiz quadrada do numero digitado e %.2f",raizq ); printf("\nA raiz cubica do numero digitado e %.2f",raizc ); } else { if (numero < 0 ) { printf("\nFoi execultado uma operacao inlegal, esse programa sera fechado\n"); } } getch (); } bom de qualquer forma eu tentei ajudar...fui!!!! :rolleyes: :P Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kandrade Postado Abril 25, 2007 Denunciar Share Postado Abril 25, 2007 Kandrade, acho que voce entendeu errado a pergunta. A pergunta é sobre raiz cubica e não exponenciacao. isso ai, entendi errado mesmoressuscitaram o tópico nem lembrava mais dissouhauhahuauhahuauhKandrade, desculpe. Acabei de fazer um teste e vi que com o pow da pra calcular a raiz tambem. Acho que voce so se confundiu no expoente.a funcao pow funciona mesmo para calcular raíz, mas o script que deixei lá tá furradotem que apagar aquilouhauhahuauhauavaleu :lol: Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Lordguedes Postado Abril 25, 2007 Denunciar Share Postado Abril 25, 2007 Nossa bom saber que ressutaram o tópico mesmo só assim venho futuramente posta mais dúvidas aqui..mais de qualquer forma já fizemos amigos....hehehehe :) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 HudinskStock Postado Setembro 3, 2011 Denunciar Share Postado Setembro 3, 2011 Kandrade, acho que voce entendeu errado a pergunta. A pergunta é sobre raiz cubica e não exponenciacao. Bom, a funcao cbrt() faz parte da biblioteca math.h e é padrão ANSI. O problema deve estar no momento da linkagem. Grazielle, voce esta especificando que a math.h deve ser linkada? no compilador que eu uso (GCC) voce faz isso acrescentando -lm nas opcoes do compilador. Uma outra coisa que pode estar ocorrendo é a implementacao da sua math.h não possuir essa funcao. Em Linux ou MacOS X isso é bem raro, mas já vi bastante em windows (não especificamente com essa funcao, mas com outras funcoes mais obscuras para trabalhar com long double).Em todo caso, é um bom exercicio voce mesma tentar implementa-la. Procure pela expansao de Taylor da funcao raiz cubica, encontre a recorrencia dos termos e implemente. No google voce provavelmente encontra a expansao e não vai precisar ficar horas calculando derivadas e fatorias para desenvolve-la a partir do zero.Kandrade, desculpe. Acabei de fazer um teste e vi que com o pow da pra calcular a raiz tambem. Acho que voce so se confundiu no expoente.Parti do seguinte principio: A raiz cubica de X é igual a X^(1/3).Portanto, o seguinte codigo calcula a raiz cubica de X:pow(x, 1.0/3.0);___________________________________________eu usei o comando pow(x,1/3)e o resultado não deu certodai usei o que você postou pow(x, 1.0/3.0)e deu certo, sabe me dizer qual a deferença. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Mtls96 Postado Setembro 27, 2016 Denunciar Share Postado Setembro 27, 2016 porque em C os tipos de variável são fortemente tipadas logo se você quer trabalhar com Float ou Double (que são números que usam a parte fracionária) é necessário fazer o casting nas divisões, por isso o ".0" depois dos números, caso esse casting de tipo de variável não seja feito o valor retornado pela divisão é somente a parte inteira desta, que neste caso iria retornar 0 pois computacionalmente a divisão de 1 por 3 é 0,333...4 (numeros de 3 depende do ponto flutuante do seu pc) logo sempre que for fazer uma divisão onde a parte não inteira é necessária utilize o ".0" no final dos números.A outras maneiras de fazer casting mas essa é a menos complicada para divisão. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Lucas Eduardo Calgaro Postado Outubro 23, 2017 Denunciar Share Postado Outubro 23, 2017 A raiz é o "oposto" da potencia: Fazer x elevado a 1/2 é o mesmo que fazer raiz quadrada... Fazer x elevado a 1/3 é o mesmo que fazer raiz cubica... Por isso dá para resolver raiz com a função pow... Espero que fique claro para os próximos que vierem consultar o tópico, eu mesmo vim achar a resposta e me lembrei dessa propriedade algébrica graças boa resposta do kandrade... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest - Grazielle -
Tenho que tirar a raiz cúbica e a função cbrt não funciona... ela não é reconhecida pela biblioteca math.h...
Alguém sabe de alguma função que calcule a raiz cúbica? Ou porque cbrt() não funciona?
Link para o comentário
Compartilhar em outros sites
10 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.