Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Proyecto Informatica 1
Autor Mensaje
lucassidoti Sin conexión
Empleado de Fotocopiadora
Sin estado :(
**

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 28
Agradecimientos dados: 4
Agradecimientos: 12 en 5 posts
Registro en: Jun 2015
Mensaje: #1
Proyecto Informatica 1 Dudas y recomendaciones Informática I (Electrónica)
Hola a todos! La verdad es que vengo medio perdido con informatica y me pidieron hacer un programa que simule una clasificacion de una carrera de autos donde tengo 58 autos. Tengo que ingresar el numero del auto, el nombre del piloto, la escuderia y el tiempo que tardo en dar la vuelta. al cabo de la clasificacion, debo ordenar todos los datos de mayor a menor teniendo en cuenta el tiempo que tardo en dar la vuelta, los primeros 30 son clasificados, los otros 20 son suplentes y los ultimos 8 descalificados.

Ademas si pasa dos o mas veces un mismo auto y mejora su tiempo debo actualizar la base de datos de ese auto...
Voy escribiendo algo... lo dejo mas abajo:

#define CORREDORES 58
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>

struct clasif
{
char nombre [30];
char escuderia [20];
int numauto;
int posicion;
float tiempo;
};

int main (void)
{
struct clasif a[CORREDORES];
int i=0;
char opcion;

system ("clear");

printf ("Para ingresar los datos de un nuevo auto oprima n o N\n");
scanf ("%c",&opcion);

while ((i<CORREDORES)&&(opcion='n')||(opcion='N'))
{
a[i].posicion=i;

printf ("Ingrese el numero del auto\n");
scanf ("%d",&a[i].numauto);

fgets (a[i].nombre,30,stdin);
printf ("Ingrese el nombre del piloto\n");
fgets (a[i].nombre,30,stdin);

printf ("Ingrese la escuderia del auto\n");
fgets (a[i].escuderia,20,stdin);

printf ("Ingrese el tiempo\n");
scanf ("%d",&a[i].tiempo);

i++;
}

return 0;
}

aca tengo el problema que no me pide ingresar N o n devuelta para ingresar otro auto y direcamente me pide ingresarlo. ademas no se como hacer para que me ordene todo y me actualize la base de autos en caso de que el piloto pase devuelta.

Gracias
09-06-2015 21:05
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
leibniz Sin conexión
Secretario General

*******

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 849
Agradecimientos dados: 46
Agradecimientos: 24 en 17 posts
Registro en: Dec 2012
Mensaje: #2
RE: Proyecto Informatica 1
Bueno, vamos de a poco.

Había escrito
Cita:En primer lugar, la estructura que deberías definir es la del auto. Imaginate que haces una tabla de excel, las propiedades que querés considerar son las columnas, y cada objeto que querés clasificar son las filas.
pero claramente ya lo pensaste así.

Por otro lado me parece que lo más cómodo va a ser usar memoria dinámica y cargar los autos en un arreglo de punteros, para que te sea más fácil ordenar después y llegado el caso buscar si un auto ya está cargado.

[Imagen: Leibnitz_signature.svg]
(Este mensaje fue modificado por última vez en: 10-06-2015 09:02 por leibniz.)
10-06-2015 08:55
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] leibniz recibio 1 Gracias por este post
lucassidoti (10-06-2015)
luchovl2 Sin conexión
Presidente del CEIT
Dígame, Ingeniero.
********

Ing. Electrónica
Facultad Regional Buenos Aires

Mensajes: 1.335
Agradecimientos dados: 24
Agradecimientos: 356 en 324 posts
Registro en: May 2009
Mensaje: #3
RE: Proyecto Informatica 1
Es que tenés que poner el pedido de ingreso de dato dentro de un lazo. Probablemente un while(1).
Para ordenar, básicamente tenés que recorrer la lista y encontrar su lugar. Como vas ingresando de a uno es más fácil.

Coincido con leibniz en lo del vector de punteros. La lista propiamente la tenés en "struct clasif a[]", pero el orden lo tenés en otro vector "struct clasif *lista[58]", de manera que movés los elementos de este último vector.
12-06-2015 19:29
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)