C/Visual C - [Error] expected declaration or statement at end of input

 
Vista:
sin imagen de perfil

[Error] expected declaration or statement at end of input

Publicado por Miguel (1 intervención) el 13/10/2021 09:24:23
Hola comunidad, espero se encuentren bien!!!


Espero puedan ayudarme con el siguiente error se los agradecere mucho.

Les comparto mi codigo, el programa debe calcular el umbral de un numero para obtener su raiz.

El error me lo da en la ultima llave del main. Agradezco mucho su atencion.

Saludos y exito.





#include<stdio.h>
#include<stdlib.h>
#include<math.h>

#define UMBRAL 0.01
#define N 4

void calculaRaiz(int arreglo[], double raiz[], int nums){

int inicio,medio,fin,i;//declaracion de variables inicio medio fin i
double mediob,error;// mediob para calcular el cuadrado de medio y error para comparar el umbral
int el_num; //variable que adquiere el valor del primer elemento del arreglo
i=0;
el_num=arreglo[i];//se adquiere el primer numero del arreglo a evaluar
inicio=0; //primer punto para determinar punto medio
fin=el_num; //el primer numero del arreglo se asigna como ultimo valor para hacer los calculos

for (i=0;i<nums;){//ciclo FOR para calcular las raices y el umbral

do
{
fflush(stdin); //borrar el buffer despues de cada interacion
medio=(double)(inicio+fin)/2; //obtiene el valor medio entre el primer punto 0 y el num a evaluar
mediob=medio*medio; //medio al cuadrado
error=fabs(el_num-mediob); //se hace la resta de medio^2 con el numero entero

if(mediob>2){// se toma el valor de la izquierda
fin=medio;
}

if(mediob<2){//se toma el valor de la derecha
inicio=medio;
}
} while(error!=UMBRAL);

if(error<=UMBRAL){

raiz[i]=mediob; // se regresa el valor de la raiz que se obtuvo
inicio=0; //se inicializa el valor del inicio
i++; //i++; //se actualiza el contador del ciclo FOR
el_num=arreglo[i]; //se toma el siguiente valor del arreglo para hacer comparacion con el error
fin=el_num; //se actualiza el siguiente num del arreglo a evaluar

}


}


void imprimeRaiz(int *arreglo, double *raiz, int nums){


int i;

for(i=0;i<nums;i++){

printf("Numero %d Raiz %lf",arreglo+i,raiz+i);

}

}

int main(){

int Arreglo[N]={4,5,7,2};

double Raiz[N];


calculaRaiz(Arreglo,Raiz,N);

imprimeRaiz(Arreglo,Raiz,N);

return 0;

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder