Hola, ya trate mucho de entender porque no me copila este programa, y no logro dar con la respuesta >:(, eh visto muchos ejemplos, y aun así no entiendo cual es el problema; agradezco de antemano a quien me ayude. Codifico con DevC++:
#include <stdio.h>
#include <conio.h>
#define n 1000
float leer(int dime);
void calcular(float vec1[], float vec2[], int dime);
int main()
{
float uno, dos, vec2[n];
float vec1[n];
int dime;
puts("Digite la dimension de los vectores:");
scanf("%i", &dime);
while(dime<0)
{
puts("eRROR VUELVA INTENTARLO");
scanf("%i", &dime);
}
puts("Digite el primer vector");
uno=leer(dime);
puts("Digite el segundo vector");
dos=leer(dime);
calcular(uno, dos, dime);
getch ();
return 0;
}
float leer(int dime)
{
int i;
float vector[n];
puts("Digete las correspondientes posiciones, dando Intro despues de cada elemento");
for(i=0; i=dime; i++)
{
scanf("%f", &vector);
}
return(vector[n]);
}
void calcular(float vec1[], float vec2[], int dime)
{
int u, i;
u=0;
for(i=0;i=dime; i++)
{
if(vec1==vec2)
u++;
}
if(u==dime)
printf("Los siguientes vectores son iguales:");
else
printf("Los vectores NO SON IGUALES");
for(i=0;i=dime; i++)
{
printf("\n\n %f",vec1);
}
for(i=0; i=dime; i++)
{
printf("\n\n %f",vec2);
}
getch();
}
Debe usar la tag "code" cuando vaya a escribir código..
No voy hablar la solucione, pero voy apuntar algunos erros.
void calcular(float vec1[], float vec2[], int dime)
{
int i;
int u=0; /////////////////////!!! Mejor, no?
for(i=0;i=dime; i++) /////////////////////!!! Debe usar == o <
{
if(vec1==vec2)
u++;
}
if(u==dime)
printf("Los siguientes vectores son iguales:");
else
printf("Los vectores NO SON IGUALES");
for(i=0;i=dime; i++) /////////////////////!!! No '='
{
printf("\n\n %f",vec1);
}
for(i=0; i=dime; i++) /////////////////////!!! No '='
{
printf("\n\n %f",vec2);
}
getch();
}
Estoy un poco cansado, tal vez mañana puedo ver esto con mas calma.
OK, ya modifique el programa tomando en cuenta las observaciones que el compañero me sugirió. Me dice este error:
cannot convert `float' to `float*' for argument `1' to `void calcular(float*, float*, int)' :-(
Tiene un error en esta declaración
float uno, dos, vec2[n];
Tu estas declarando dos floats llhamados 'uno' y 'dos', tambien declara uno arreglo llhamado vec2 com tamaño 'n'.