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
Problema de algoritmos!
Autor Mensaje
reitequeestabuenisimo Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 3
Agradecimientos: 0 en 0 posts
Registro en: Jul 2013
Mensaje: #1
Problema de algoritmos!
Tipeo el problema...

Un buque de carga traslada 100 contenedores a tres diferentes puertos del pais. Los puertos se identifican con los numeros 1, 2 y 3.
De cada contenedor que el buque traslade se registran los siguientes datos:
-ID del contenedor
-Peso del contenedor en Kg.
-Puerto de arribo (un valor de 1 a 3).
El ingreso de datos finaliza con la identificación de un contenedor igual a cero.
Se pide calcular e informar:
1)El peso total que el buque debe trasladar
2)La identificación del contenedor de mayor peso
3)La cantidad de contenedores que debe trasladar a cada puerto.


La cosa es así.... habiendo 100 items a tratar, mis dudas son:

a) y los pesos?
b) siendo tantos, como hago, tengo que declarar 100 items?
c) no se como encararlo
d) AYUDA !

Gracias de antemano!
18-07-2013 22:50
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Diego Pedro Sin conexión
Secretario de la SAE
que calor no?
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 631
Agradecimientos dados: 23
Agradecimientos: 105 en 48 posts
Registro en: May 2011
Mensaje: #2
RE: Problema de algoritmos!
Lo que tenes que hacer es que ingrese el usuario buques, hasta que la identificacion del mismo sea 0, esto lo haces con un while.

Para lo primero usas un contador que sume los pesos que vas ingresando, para la identificacion del mayor, es buscar un maximo en los pesos, es decir, vas comparando los distitnos pesos ingresados y el mayor es que el devolves, y lo otro es un contandor por cada puerto, es decir 3 contadores y que lo devuelvan esos 3 contenedores.

Haber si ahi con una idea sale.
18-07-2013 22:57
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
odin Sin conexión
Empleado de Fotocopiadora
Sin estado :(
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 38
Agradecimientos dados: 2
Agradecimientos: 11 en 11 posts
Registro en: May 2011
Mensaje: #3
RE: Problema de algoritmos!
como no hay "problema" de memoria, pones los datos de cada contenedor en un vector (array) de 100 registros
se supone que ya deberías saber trabajar con vectores, sumar los campos y buscar maximos
18-07-2013 22:59
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Maik Sin conexión
Presidente del CEIT
.
********

Otra
Otra

Mensajes: 5.353
Agradecimientos dados: 47
Agradecimientos: 197 en 141 posts
Registro en: Sep 2011
Mensaje: #4
RE: Problema de algoritmos!
b) siendo tantos, como hago, tengo que declarar 100 items?


sabes lo que es una estructura?

MODS
[Imagen: 2r5t075.jpg]
18-07-2013 23:01
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sarasa Sin conexión
Empleado de Fotocopiadora
Apuntando al 4
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 44
Agradecimientos dados: 6
Agradecimientos: 6 en 5 posts
Registro en: May 2013
Mensaje: #5
RE: Problema de algoritmos!
Les hacen declarar las variables en el algoritmo?
totalpuerto1=0
totalpuerto2=0
totalpuerto3=0
mayorpeso = 0
pesototal = 0
for 1 to 100 {
(ingresar)cont.id, cont.peso cont.puerto

pesototal = pesototal + cont.peso

case (cont.puerto)
1 {
totalpuerto1 = totalpuerto1 + 1
}
2 {
totalpuerto2 = totalpuerto2 + 1
}
3 {
totalpuerto3 = totalpuerto3 + 1
}
if cont.peso > mayorpeso {
mayorpeso = cont.peso
mayorpesoid = cont.id
}

}
(mostrar)totalpuerto1,totalpuerto2,totalpuerto3,mayorpesoid,pesototal

Te lo arme a grandes rasgos un jueves a la noche. Espero que te sirva =)
18-07-2013 23:08
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
reitequeestabuenisimo Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 3
Agradecimientos: 0 en 0 posts
Registro en: Jul 2013
Mensaje: #6
RE: Problema de algoritmos!
hey gracias a todos por sus prontas respuestas!

Me olvide de poner algo, mi profesor es Bianchi, y no nos enseño Arrays... Hizo corte de control, salteo arrays (segun temario de SZ en su libro holamundo) y entro en el capitulo de Archivos.. el cual pude entender hasta la mitad porque despues mete todos ejs con arrays... hay alguna forma de no usar eso ?
18-07-2013 23:14
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sarasa Sin conexión
Empleado de Fotocopiadora
Apuntando al 4
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 44
Agradecimientos dados: 6
Agradecimientos: 6 en 5 posts
Registro en: May 2013
Mensaje: #7
RE: Problema de algoritmos!
no es necesario usar arrays. Nada mas tenes que declarar la variable cont como record

cont: Record
peso:integer;
id:byte;
puerto:byte;

No te pide que queden almacenados en memoria, ni almacenarlos te va a servir para despues, tampoco necesitas hacer una acceso directo a uno, ni modificarlos posteriormente.
(Este mensaje fue modificado por última vez en: 18-07-2013 23:19 por sarasa.)
18-07-2013 23:18
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Vercingetorix Sin conexión
Empleado del buffet
Veni, vidi, vici
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 16
Agradecimientos dados: 23
Agradecimientos: 0 en 0 posts
Registro en: May 2013
Mensaje: #8
RE: Problema de algoritmos!
Holas:

Según lo que contás, no harían falta vectores ni vectores de registros. Si revisás el ejercicio, sólo te pide informar datos al final de la carga pero es necesario guardarlos a todos, por lo tanto podés usar una variable que se pise en cada ciclo. Lo que veo que el enunciado está medio confuso. Si la carga de contenedores termina con ID nulo, entonces ojo que no son "100 contenedores" es "hasta 100 contenedores", lo que significa que puede haber menos. Por eso, como explica Diego Pedro, debés utilizar un while. Intentá empezar a hacerlo y fíjate si te trabás

¡Suerte!
18-07-2013 23:23
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
sarasa Sin conexión
Empleado de Fotocopiadora
Apuntando al 4
**

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 44
Agradecimientos dados: 6
Agradecimientos: 6 en 5 posts
Registro en: May 2013
Mensaje: #9
RE: Problema de algoritmos!
si, un while hasta que id= 0
(Este mensaje fue modificado por última vez en: 18-07-2013 23:26 por sarasa.)
18-07-2013 23:25
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Diego Pedro Sin conexión
Secretario de la SAE
que calor no?
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 631
Agradecimientos dados: 23
Agradecimientos: 105 en 48 posts
Registro en: May 2011
Mensaje: #10
RE: Problema de algoritmos!
Ese ejercicio no necesita ni arrays ni archivos, es un ejercicio simple de ingreso y salida de datos, nada mas, con arrays se podria simplificar pero tampoco cambiaria demasiado el ejercicio
19-07-2013 14:46
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
reitequeestabuenisimo Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 5
Agradecimientos dados: 3
Agradecimientos: 0 en 0 posts
Registro en: Jul 2013
Mensaje: #11
RE: Problema de algoritmos!
Hola amigos! concluí así a ver que les parece !

[Imagen: ?1285b7b8904be6b4ef3d1562094bb123o.jpg]

[Imagen: ?82f0d06d5500ef2550af25dd5c26397do.jpg]

Saludos!

bueno no se pudo subir la imágen, no hay algún lugar para subirla y que no se rompa el link?
(Este mensaje fue modificado por última vez en: 20-07-2013 17:36 por nanuiit.)
20-07-2013 13:51
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
nanuiit Ausente
♫ I'm Blue ...
... Da ba dee, da ba da ♫
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 8.871
Agradecimientos dados: 216
Agradecimientos: 627 en 211 posts
Registro en: Aug 2010
Mensaje: #12
RE: Problema de algoritmos!
Fijate en imageshack.us

ALGORITMOS

Apuntes: Mem. Dinámica - Mem. Estática - Proc. y Funciones || Guías: Módulos + 83 Ejercicios || Finales: 2004-2013


[Imagen: digitalizartransparent.png]

[Imagen: firmananiv2.png]
20-07-2013 17:36
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
brianmel Sin conexión
Militante
Paren el mundo, me quiero bajar
***

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 53
Agradecimientos dados: 38
Agradecimientos: 33 en 6 posts
Registro en: Mar 2013
Mensaje: #13
RE: Problema de algoritmos!
si funciona con 5 funciona con 100 .
se puede hacer sin array.
con un for lo tenes listo.
Antes de ponerte a escribir , trata de entender el ejercicio y diagramartelo en la cabeza (o en un papel), trata de entender donde vas a usar cada dato que te piden (puede que hayan datos que ni utilices..)
22-07-2013 03:59
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
elloquitodesistemas Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 21
Agradecimientos dados: 3
Agradecimientos: 1 en 1 posts
Registro en: Apr 2022
Mensaje: #14
RE: Problema de algoritmos!
#include <iostream>
#include <cstring>
#include <stdlib.h>
#include <conio.h>
using namespace std;

int main(){
float pesototal=0;
int cantContenedorPuertoUno=0,cantContenedorPuertoDos=0,cantContenedorPuertoTres=0;
char identificacionMaxPeso[10];
float pesoMaxActual=0;

struct buqueCarga{
char identificacion[10];
float peso;
int puerto;
}contenedor[100];

for(int i=0; i<100; i++){
fflush(stdin); //para q no se me llene el buffer
cout<<"***** Datos del contenedor: " << i+1 <<" *****"<<endl;
cout<<"Identificacion del contenedor: ";
cin.getline(contenedor[i].identificacion, 10, '\n');
cout<<"Peso del contenedor en kg: ";
cin>>contenedor[i].peso;
cout<<"Puerto de arribo (1,2 o 3): ";
cin>>contenedor[i].puerto;

//PUNTO 1) PESO TOTAL DEL BUQUE.
pesototal+=contenedor[i].peso;

//PUNTO 2) La identificación del contenedor de mayor peso
if(contenedor[i].peso > pesoMaxActual){
pesoMaxActual=contenedor[i].peso;
strcpy(identificacionMaxPeso, contenedor[i].identificacion);
}

//PUNTO 3) La cantidad de contenedores que debe trasladar a cada puerto.
if(contenedor[i].puerto==1)
cantContenedorPuertoUno++;
else
if(contenedor[i].puerto==2)
cantContenedorPuertoDos++;
else
if(contenedor[i].puerto==3)
cantContenedorPuertoTres++;
cout<<"\n";
}
cout<<"El peso total del buque de carga es: "<<pesototal<<endl;
cout<<"La identificacion del contenedor de mayor peso es: "<< identificacionMaxPeso <<endl;
cout<<"La cantitad de contenedores que debe trasladar al puerto UNO es: "<<cantContenedorPuertoUno<<endl;
cout<<"La cantitad de contenedores que debe trasladar al puerto DOS es: "<<cantContenedorPuertoDos<<endl;
cout<<"La cantitad de contenedores que debe trasladar al puerto TRES es: "<<cantContenedorPuertoTres<<endl;
getch();
return 0;
(Este mensaje fue modificado por última vez en: 06-09-2022 14:19 por elloquitodesistemas.)
06-09-2022 14:17
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




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