Título: Porque me sale error de "Function/definition is not allowed" Publicado por: Marendo05 en 17 Septiembre 2017, 20:25 pm #include<stdio.h>
#include<math.h> #include <conio.h> #include <stdlib.h> float ntermino(float dv, float h); int main() { char r, f; float a,b,c; double x1=0, x2=0; int x=0; int p=0; int n2=0; int n3=0; int n=0; int i, fact=1; float resultado; float xc; float xv1=-0.001, xv2=-3000; float Fx; float Fxr; float Errorx1, Errorx2; int q, t, w, k; float an[q], bn[q-1], cn[q-2], dn[q-3], av, bv, cv, dv, v, h, j, ve, ea, er; double taylor; for(f='R'; f=='R';) { system("cls"); printf("Menu 1\n"); printf("Presione 1 para Hoja de presentacion\n"); printf("Presione 2 para Error de Redondeo\n"); printf("Presione 3 para Calculo de error por Truncamiento(Serie de Taylor)\n"); scanf("%d",&p); switch(p) { case 1: system("cls"); printf("Universidad Tecnologica de Panama\n"); printf("Facultad de Electrica\n"); printf("Lic. en Ingenieria Electromecanica\n"); printf("Metodos numericos para Ingenieros\n"); printf("Proyecto\n"); printf("Facilitadora: Ing. Jacqueline S. De Ching\n"); printf("Integrantes:\n"); printf("Tommy Feng 3-742-2490\n"); printf("Mario Him 8-922-621\n"); printf("Grupo: 1IE-123\n"); break; case 2: system("cls"); printf("Menu 2 Error de Redondeo\n"); printf("Ingrese los valores para: a, b y c:\n\n"); scanf("%f%f%f",&a,&b,&c); x1=(-b+sqrt(b*b-4*a*c))/(2*a); x2=(-b-sqrt(b*b-4*a*c))/(2*a); printf("Presione 1 para el resultado de simple precision\n"); printf("Presione 2 para el resultado de doble precision\n"); printf("Presione 3 para el analisis de los resultados calculado contra las raices verdaderas\n"); scanf("%d",&n2); switch(n2) { case 1: printf("El Resultado en simple precision es: %f\n",x1); printf("El Reusltado en simple precision es: %f\n",x2); break; case 2: printf("El Resultado en doble precision es: %lf\n",x1); printf("El Resultado en doble precision es: %lf\n",x2); break; case 3: printf("Analisis de los resultados valor calculado contra las raices verdaderas\n"); Errorx1=x1-xv1; Errorx2=x2-xv2; Fx=(pow(a*x1,2))+b*x1+c; printf("Fx: %.3f\n",Fx); Fxr=(pow(a*xv1,2))+b*xv1+c; printf("Fxr: %.3f\n",Fxr); printf("El Error en el x1: %.f\n",fabs(Errorx1)); printf("El Error en el x2: %.f\n",fabs(Errorx2)); } break; case 3: { int q, t, w, k; float an[q], bn[q-1], cn[q-2], dn[q-3], av, bv, cv, dv, v, h, j, ve, ea, er; double taylor; do{ system("cls"); printf("Menu#4\nError por truncamiento\n"); printf("1. Error cometido en el n-esimo termino.\n2. Valor aproximado de la función.\n3. Valor exacto de la función.\n4. Error Absoluto.\n5. Error Relativo Porcentual.\n6. Regresar al Menú #1\n"); scanf("%d", &k); switch(k){ case 1: system("cls"); printf("Ingrese los coeficientes para una funcion tipo f(x)=d+cx+bx^2+ax^3\n"); getch(); system("cls"); q=4; for(t=0; t<q; t++) { w=t+1; printf("ingrese coeficientes #%d ", w); scanf ("%f", &an[t]); system("cls"); } //primera derivada for(t=1; t<q; t++) { bn[t-1]=an[t]*t ; } //segunda derivada for(t=1; t<q-1; t++) { cn[t-1]=bn[t]*t; } //tercera derivada for(t=1; t<q-2; t++) { dn[t-1]=cn[t]*t; } av=(an[0])+(v*an[1])+(pow(v,2)*an[2])+(pow(v,3)*an[3]); bv=(bn[0])+(v*bn[1])+(pow(v,2)*bn[2]) ; cv=(cn[0])+(cn[1]*v); dv=dn[0]; printf("Ingrese el valor de x inicial"); scanf("%f", &v); printf("ingrese el valor de la x final"); scanf("%f", &j); h=j-v; system("cls"); taylor=(av)+(bv*h)+ (pow(h, 2)*cv*0.5)+((pow(h, 3)*dv)/6); ve=(an[0])+(j*an[1])+(pow(j,2)*an[2])+(pow(j,3)*an[3]); ea=ve-taylor; er=(ea/ve)*100; printf("\n\n\tEl error en el n-ésimo termino es %f", ntermino(dv, h)); printf("\n\n\tPulse cualquier tecla para regresar al menú anterior"); getch(); break; case 2: system("cls"); printf("\n\n\tEl valor aproximado es %f", taylor); printf("\n\n\tPulse cualquier tecla para regresar al menú anterior"); getch(); break; case 3: system("cls"); printf("\n\n\tEl valor exacto de la funcion es %f",ve ); printf("\n\n\tPulse cualquier tecla para regresar al menú anterior"); getch(); break; case 4: system("cls"); printf("\n\n\tEl error absluto de la funcion es %f",ea ); printf("\n\n\tPulse cualquier tecla para regresar al menú anterior"); getch(); break; case 5: system("cls"); printf("\n\n\tEl error relativo de la funcion es %f",er ); printf("\n\n\tPulse cualquier tecla para regresar al menú anterior"); getch(); break; case 0: system("cls"); printf("Presione Enter para volver al MENU #1"); break; default: system("cls"); printf("La opcion que ingreso en incorrecta.\n\nPresione Enter para intentarlo de nuevo"); getch(); break; } }while(k); } float ntermino(float dv, float h) { float enesimo; enesimo=((pow(h, 3)*dv)/6); return enesimo; } break; } printf("Presione R para regresar al Menu 1\n"); printf("Sino presione cualquier boton y presione Enter para salir del programa\n"); fflush(stdin); scanf("%c", &f); } printf("Se acabo el programa presione Enter para salir\n"); } Título: Re: Porque me sale error de "Function/definition is not allowed" Publicado por: ivancea96 en 17 Septiembre 2017, 20:31 pm Código Las funciones no pueden estar dentro de otra función. |