Raiz cúbica pelo método de bissecção
Publicado por Gabriel (última atualização em 15/05/2010)
[ Hits: 12.863 ]
Resolve numericamente a equação x³ - n = 0 utilizando o método de bissecção. O objetivo é calcular a raiz cúbica de n.
Obs.: Foi utilizada precisão dupla e como critério de parada foi utilizado o DBL_EPSILON (2.220446e-16).
Problema: para -1 <= n <= 1 não é possível calcular a raiz cúbica (com esse script)... Alguém sabe porquê?
#include <stdio.h> #include <float.h> #include <math.h> double cubica(double n); int main(){ double n = 0; printf("Entre com um número: "); scanf("%lf", &n); printf("%lf\n", cubica(n)); return 0; } // calcular raiz cúbica de n e para isso // encontrar x tal que x³ - n = 0 double cubica(double n) { double x1 = 0, x2 = 0, xm = 0; if (n > 0){ x1 = -n; x2 = n; } else { x1 = n; x2 = -n; } do { xm = (double) (x2 + x1) / 2; if (xm*xm*xm - n > 0) { if (x1*x1*x1 - n > 0) x1 = xm; else x2 = xm; } else { if (x1*x1*x1 - n < 0) x1 = xm; else x2 = xm; } } while (fabs(x2 - x1) > DBL_EPSILON); return xm; }
Calculadora em C separada por funções e com diretivas
Um parser para tratar opções passadas para um programa em C
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Falta pacotes de suporte ao sistema de arquivos (Gerenciador de discos... (6)
A area de trabalho ficou preta (16)
Agora temos uma assistente virtual no fórum!!! (244)
Servidor said: 530 5.7.0 Must issue a STARTTLS command first (in r... (0)