La práctica dice así: 4.- Crear un algoritmo que pida al usuario 5 datos, luego le pida un valor con el que comparar, y finalmente diga cuales de esos 5 datos son mayores que el valor de comparación. Pero al hacerlo no sé que es lo que tengo mal que no me sale el programa, si me pudieran ayudar... Gracias de antemano! Os dejo lo que llevo:
Proceso practica
Dimension datosdeusuario[5]
datocomparado<-1
para x<- 1 hasta 5 Hacer
Escribir "Dime un dato"
leer datosdeusuario[x]
FinPara
Escribir "Escriba el valor con el que quiera comparar los datos"
leer datocomparado
Para x<- 1 hasta 5 Hacer
si datosdeusuario[x]>datosdeusuario[datocomparado] entonces
datocomparado=x
FinSi
finpara
Escribir "El número mayor al comparado es:", datosdeusuario[datocomparado];
FinProceso
El error está aquí:
Para x<- 1 hasta 5 Hacer
si datosdeusuario[x]>datosdeusuario[datocomparado] entonces
datocomparado=x
FinSi
No debes usar la variable "datocomparado" como índice que arreglo "datosdeusuario".
No entiendo para qué sirve la línea:
datocomparado=x, le estás asignando el índice "x" a la variable "datocomparado", lo cual no tiene sentido. En vez de eso deberías escribir en pantalla el "datocomparado".
Tampoco era necesario inicializar la variable "datocomparado" en 1, porque a fin de cuentas la vas a leer en el programa.
Trata de resolverlo para revisarlo.
Saludos.
muchas gracias!! ya lo tengo, creo que está bien!!
Proceso practica
Dimension datosdeusuario[5]
para x<- 1 hasta 5 Hacer
Escribir "Dime un dato"
leer datosdeusuario[x]
FinPara
Escribir "Escriba el valor con el que quiera comparar los datos"
leer datocomparado
Para x<- 1 hasta 5 Hacer
si datocomparado<datosdeusuario[x] entonces
Escribir "El número mayor al comparado es:", datosdeusuario[x];
FinSi
finpara
FinProceso
Sí, parece estar bien. El mensaje de respuesta resultará un tanto desconcertante si hay varios números mayores, porque dirás "el número mayor" como si se tratara de un único valor. Pero el resto parece correcto.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)