Ejercicio resuelto: pseudocódigo usando arrays y la señal de “Fin de archivo” EOF (End Of File). (CU00176A)

Resumen: Entrega nº 75 del curso Bases de la programación Nivel I.
Codificación aprenderaprogramar.com: CU00176A

 

 

 

 

EJERCICIO

En un fichero tenemos las notas de un grupo de alumnos de una clase en un array Nota(1), Nota(2), …, Nota(n), establecidas entre 0 y 10. Se desea desarrollar el pseudocódigo y diagrama de flujo para un programa que determine la nota media basando la extracción de datos en la señal Fin de archivo.

 

 

Nota: variante de ejercicio ya resuelto para el caso de número de alumnos predefinido y para el caso de final de datos controlado por señalero.

 

 

SOLUCIÓN

Pseudocódigo y diagrama de flujo

1. Inicio [Media con Finarchivo aprenderaprogramar.com]

2. Mientras Finarchivo = Falso Hacer

i = i + 1

Leer Nota(i)

Suma = Suma + Nota(i)

Repetir

3. Media = Suma / i

4. Mostrar “La nota media de la clase es”, Media

5. Fin

 

 

 

Comentarios: Si lo comparamos con las versiones anteriores que habíamos hecho de este programa encontramos:

· El programa está enfocado a un caso general (n alumnos), siendo igual de potente que la versión en que usábamos señalero.

· Es la versión que menos pseudocódigo ha requerido.

· La ejecución del bucle basada en el valor de la variable nos obligaba a una lectura anticipada al final del bucle para proceder a procesarla “en diferido” en el siguiente bucle. Esta situación ha desaparecido de forma que ahora en la iteración número 1 se extrae la variable número 1, en la iteración 2 la segunda y así sucesivamente. Gráficamente:

 

 

El anterior esquema ha sido sustituido por este otro:

 

 

Se considera que si el archivo está vacío (no existen datos) no se llega a entrar en el bucle, al resultar FinArchivo verdadero en la primera evaluación.

Como se comprobará más adelante, la gestión de archivos es bastante más complicada de lo que estamos viendo. Pero eso, al menos de momento, no debe preocuparnos.

 




 

 

Para acceder a la información general sobre este curso y al listado completo de entregas pulsa en este link:  Ver curso completo.

Para  hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.

Donar o colaborar

Este sitio se mantiene abierto gracias al apoyo de muchas personas. Si crees que merece la pena apoyar económicamente este sitio web puedes realizar una donación o colaborar. Contacta con nosotros.

¿Puedo yo aprender?

Seas o no del área informática, si quieres aprender a programar te ofrecemos una solución guiada y personalizada: realizar un curso tutorizado on-line. Con este tipo de curso, podrás aprender a programar de forma ágil y amena.

Acceder a detalles y precios de los cursos tutorizados on-line

Política sobre cookies

Utilizamos cookies propias y de terceros para ofrecerte una mejor experiencia y servicio, de acuerdo a tus hábitos de navegación.

Si continúas navegando, consideramos que aceptas su uso. Puedes obtener más información en nuestra Política de Cookies.

En Facebook!

Ahora puedes seguirnos en Facebook. Noticias, novedades y mucho más ¡Te esperamos!

RANKING APR2+

Ranking de lenguajes y entornos de programación aprenderaprogramar.com
 

JULIO - AGOSTO 2017

1. Java / J2EE
2. Entornos Oracle
3. Entornos SQL Server
4. JavaScript, jQuery
5. .NET, C#
6. HTML, CSS
7. Android, iOS
8. Php, MySql


Acceder a detalles sobre el ranking de programación aprenderaprogramar.com

FOROS APR2+

Pregunta, responde, consulta, lee, intercambia...

Participa!!! Entra en los foros aprenderaprogramar.com.

             Copyright 2006-2017 aprenderaprogramar.com                La web abierta a cualquier persona interesada en la programación