Buscar

Sem Título1

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

#include <conio.h>//getch()
#include <math.h>//exp
#include <stdio.h>//printf e scanf
#define deltax 0.0001 // Precisao desejada
double funcao(double x, int opt); //Prototipo da funcao
double derivada(double x, int opt); //Prototipo da derivada
void main(){
 double x1,fx,deriv;
 int n,i,opt=0;
 while (opt!=4){
 printf("Funcoes:\n");
 printf("1. F(x) = xü - xý + 1\n");
 printf("2. G(x) = e^(2x)-5x\n");
 printf("3. H(x) = e^(2x)-5x-3\n");
 printf("4. SAIR\nESCOLHA UMA OPCAO: \b");
 scanf("%d",&opt);
 if (opt == 4)
 break; // sai do programa
 else
 if ((opt<1)||(opt>3)){
printf("\nOPCAO INVALIDA!");
getch();
continue;
}
 printf("ENTRE COM UM VALOR PARA X1: \b");
 scanf("%lf",&x1);
 printf("NUMERO MAXIMO DE INTERACOES: \b");
 scanf ("%d",&n);
 if ((x1!=0)&&(n>=1)){
 for (i=1;i<=n;i++) {
fx=funcao(x1,opt);
deriv=derivada(x1,opt);
x1 = x1-(fx/deriv);
printf("\nF(X%d) VALE: %.20lf\n",i,fx);
printf("F'(X%d) APROXIMADA VALE: %.20lf\n",n,deriv);
printf("X%d VALE: %.20lf\n",i+1,x1);
getch();
}
 }
 else {
 printf("\nDADOS INVALIDOS");
 getch();
 continue;
 }
 printf("\nFIM DAS INTERACOES.");
 getch();
 }
 }
double funcao (double x, int opt){
 double y;
 switch (opt){
 case 1: y=x*x*x-x*x+1.0;
 break;
 case 2: y=exp(2*x)-5*x;
 break;
 case 3: y=exp(2*x)-5*x-3;
 }
 return y;
 }
double derivada(double x, int opt){
 double deriv;
 deriv = (funcao(x+deltax,opt)-funcao(x,opt))/deltax;
 return deriv;
 }

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando