[Pedido] Programa que lee puntuaciones y te dice la mas alta.

Iniciado por copinsa, 18 Noviembre 2013, 10:11 AM

0 Miembros y 1 Visitante están viendo este tema.

copinsa

Hola tengo una practica de la uni que no soy capaz de hacer. Consiste en leer las puntuaciones de un videojuego en un archivo .txt estilo asi:   (el nombre es espacios es arbitrario)

Destroyer666 1000
PinkBear        154
Rookie            0
...
LastWarrior     33333


El programa tiene que dar el best player con su puntuación. Best Player: Nickname Puntuación

Como restricciones solo se puede incluir las librerias # include <stdio .h>
# include <stdlib .h>


y las funciones getchar(),  atoi(),   printf()

xaps

Si quieres también te podemos traer un café.

¿Te has mirado las reglas? Cito textualmente:
CitarEste no es un subforo donde se soliciten tareas, sino un lugar donde resolver dudas.

Saludos
"The programmers of tomorrow are the wizards of the future" - Gave Newel

copinsa

En ese caso, me podriais dar algun consejo por donde empezar?

rir3760

La forma mas fácil es utilizando las funciones fgets+sscanf o bien fscanf. En seudocodigo los pasos son:
Repetir
   Leer una palabra (nombre) en la variable "nombre_temporal"
   Leer una palabra (valor) en la variable "temporal"
   Extraer de la variable "temporal" el valor
   Si el valor es mayor que el maximo:
      Almacenar (copiar) el nombre en la variable "maximo_nombre"
      Almacenar (copiar) el valor en la variable "maximo_valor"


En cuanto a las funciones que te permiten utilizar hay un error en (o confusión con) el enunciado ya que para leer un archivo necesitas como mínimo las funciones fopen, fclose y fgetc (getchar es para leer la entrada estándar).

Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language