Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-09-2008
lKinGl lKinGl is offline
Miembro
 
Registrado: ago 2007
Posts: 333
Poder: 20
lKinGl Va por buen camino
que les parece esto?

asignar en el campo rutas

donde se guarda

Sitio1
Sitio2
Sitio3
agregar
Descanso
Descanso
Descanso

osea son como 15 sitios y 27 choferes

entonces llenariamos de descanzo 12 registros cierto?

mmm no se que pensar jejeje creo que con lo que acabo de plantear queda una matris cuadrada mas facil de manejar por que sera de 27 sitios y 27 choferes
Responder Con Cita
  #2  
Antiguo 17-09-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Cuando apagué el PC, me quedé pensando el tema, y mientras estaba viendo una peli me dije que había que analizarlo mejor.
Agarré una hoja, lápiz. Hice una matriz o tabla, en las filas: los choferes, en las columnas, las semanas. Cada celda corresponde al sitio que se le asigna. Y lo que vi me dice que hay algo que no cuadra.

Analizemos la cuestión. Dijiste que una vez que un chofer completa los sitios se gana una semana de descanso. Bajo esta premisa, lo que yo entiendo es que si N es la cantidad de sitios, los primeros N choferes se llevan N semanas de trabajo. Por tanto los siguientes N choferes harán la siguiente ronda.
Si M es la cantidad de choferes, para garantizar de que todos los choferes tengan su descanso merecido al cumplir los sitios, necesariamente M debe ser igual a 2N.
¿Veamoslo con números te parece?
Tenemos N = 15 sitios, y M = 27 choferes.
La matriz podría ser algo asi:

C01-01-02-03-04-05-06-07-08-09-10-11-12-13-14-15
C02-02-03-04-05-06-07-08-09-10-11-12-13-14-15-01
C03-03-04-05-06-07-08-09-10-11-12-13-14-15-01-02
C04-04-05-06-07-08-09-10-11-12-13-14-15-01-02-03
C05-05-06-07-08-09-10-11-12-13-14-15-01-02-03-04
...
C15-15-14-13-12-11-10-09-08-07-06-05-04-03-02-01
C16-00-00-...00
C17-00-00-...00
...
C27-00-00-...00

El Chofer 1, en la semana 1 va al sitio 1, en la semana 15 al 15. La cuestión es que el chofer 15 en la semana 1, va al sitio 15, y en la semana 15 al 1. Hasta allí todo bien.

Analizando en perspectiva, estos 15 choferes se han ganado 15 semanas de descanso. Los primeros 15 trabajan, luego vienen otros. Es decir que desde la semana 16 hasta la 30, deberían ir a trabajar los choferes 16 al 27.

Nos quedan a disposición 27-15 choferes a repartir, es decir 12. 12 para cubrir 15 ¿De donde sacamos tres choferes más? Si los primeros 15 han cumplido merecidamente su trabajo... les corresponde su descanso.

El escenario en que me baso es que ninguno falta al trabajo.

La cuestión es que algo me dice que no estás analizando totalmente el tema. No es por ser malo pero hay en el medio del todo el proceso de asignación que no está bien contemplado.

Tu bien lo dijiste al final, la cuestión es que sería mucho más fácil si obtuvieramos una matriz cuadrada.

Lo que me llama la atención es la libertad con la que puedes exponer y pedir ayuda. Me sorprende. Cuando yo tuve que hacer mis pasantías estuve obligado legalmente a no divulgar nada (solamente podía mencionar la empresa donde fue, y en que sector desempeñé mi trabajo; no podía indicar que tipo de proyectos he realizado). Como será de que no tenía la posibilidad de entrar a internet, y sólo se me permitió para hacer unas consultas por unos minutos.

Ha pesar de haber pasado ya unos años de esas pasantías, y de haber finalizado esos contratos... prefiero guardarme lo que realicé. Esas letras chiquitas todavía se me quedan en la cabeza.

Bueno volviendo al caso...

Por un momento estuve pensando en escribir código, pero después de haber hecho ese análisis todavía no me puedo sentar tranquilo.
Sabiendo que se trata de tu experiencia laboral, con más razón no debería aportarte código. Supuestamente para ello está la pasantía, para que tu ganes experiencia. ¿No tienes asignado algún tutor en la empresa? Supuestamente es esa persona la encargada de asesorarte y de explicarte el dominio.

No lo tomes a mal, simplemente creo que deberías analizar mejor esto. Más sabiendo que se trata de tu práctica profesional.

¿Comenzaste ayer y ya empiezas a consultarnos? Ummm.... Al menos date una oportunidad de asimilar y aclimatarte al ambiente ¿Cúanto tiempo te dieron?
No es por malo pero es que si todavía no tienes demasiado fresca la idea, va a ser difícil que te podamos ayudar. Sigo pensando, que va a ser mejor que lo hables con tu tutor (deberías tener uno).
Que esa charla no te haga sentir inseguro, sino que te muestre lo necesario para comprender el ambiente en el que estás. Además no cometas el error de pedir demasiada ayuda al tutor.
Supuestamente la primera semana es para comprender lo que tienen hecho, conocer a los demás. Luego se le pone a mano dura.

Una última curiosidad. Unos post antes comentaste que no sabías sobre arrays... Tal vez los conoces con otro nombres: arreglos o vectores. Si no los conoces... Este.... no quiero sonar agresivo pero.... ¿entonces hasta donde llegan tus conocimientos? Esto te lo pregunto de buena onda, me intriga que hayas dicho eso puesto que suele ser unos de los primeros conceptos que se te dá en la materia de Estructura de datos y en Lenguajes.

No si sería oportuno ver el rar que nos haces llegar. No se si estoy violando alguna ley. Mejor dicho: tal vez, el exponer eso tu estás violando alguna ley o clásula de contrato.
Mejor piensalo bien, por el bien de tu pasantía, de la empresa a la que estás trabajando y la universidad.

Espero que no tomes a mal mis comentarios. Si es posible, viable (y legal) que te asesoremos, ya nos dirás. Por lo pronto... mejor cuídate amigo.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 17-09-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Hola, te dejo un ejemplo de rotacion de arrays. Trata el tema de manera general, para que veas la idea. Las excepciones (ej, menos choferes que sitios o descansos extras) no se contemplan.

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    chofers : array of string;
    sitios : array of string;
    desfase : integer;
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
        i : integer;
        df : integer;
        ls : integer;
begin
        setlength(chofers,27);

        for i := 0 to length(chofers) - 1 do
        chofers[i] := 'chofer ' + inttostr(i);

        setlength(sitios,15);
        for i := 0 to length(sitios) - 1 do
        sitios[i] := 'sitio ' + inttostr(i);

        df := length(chofers) - length(sitios);
        ls := length(sitios);
        if df > 0 then
        begin
                setlength(sitios,length(chofers));
                for i := ls to length(sitios) - 1 do
                begin
                        sitios[i] := 'descanso por falta de sitios';
                end;
        end;
        desfase := 0;

end;

procedure TForm1.Button2Click(Sender: TObject);
var
        i : integer;
begin
        Memo1.Lines.Clear;
        for i := 0 to Length(sitios) - 1 do
        Memo1.Lines.Add(chofers[i] + ' ' + sitios[(i + desfase) mod Length(sitios)]);

        inc(desfase);
end;

lo que hace es : crea tantos descansos como choferes que se quedan sin sitio (matriz cuadrada, que decias), asigna a cada chofer un sitio, rotando este segun un desfase (cada semana, por ejemplo, en el ejemplo es a cada click). Un saludo y a ver si te sirve.

NOTA : al finalizar el programa, se tendria q liberar chofers y sitios.

Última edición por coso fecha: 17-09-2008 a las 15:48:24.
Responder Con Cita
  #4  
Antiguo 17-09-2008
[coso] coso is offline
Miembro Premium
 
Registrado: may 2008
Ubicación: Girona
Posts: 1.678
Poder: 0
coso Va por buen camino
Cita:
Y sobre todo, ve pensando en tus propias ideas, que al final, creo que te será mucho más benéfico
cierto saludos
Responder Con Cita
  #5  
Antiguo 17-09-2008
[fer21unmsm] fer21unmsm is offline
Miembro Premium
 
Registrado: dic 2005
Ubicación: Lima
Posts: 627
Poder: 21
fer21unmsm Va por buen camino
Hola, me he leido todos los posts aunque un poco largo el problemita, como menciona el amigo Delphius, y según lo leído hay varios cabos sueltos en el problema que mencionas, o que al menos no entiendo, también sería bueno que mencionaras los criterios de restricción que supongo deben de haber, como por ejemplo la relación entre el número de choferes y de sitios, etc. Sería bueno que hicieras una especie de diagrama de flujo, esto puede darte mayor claridad sobre si haz comprendido bien o no el problema.

Saludos cordiales.
__________________
"La información tiene más valor cuando se comparte"
Responder Con Cita
  #6  
Antiguo 18-09-2008
lKinGl lKinGl is offline
Miembro
 
Registrado: ago 2007
Posts: 333
Poder: 20
lKinGl Va por buen camino
Es muy correcto tu analisis amigo delphius pues les pregunto el primer dia por que no se me habia presentado algun problema como ese

y no tenia idea de como se trataba otra cosa...

aqui es legal pedir ayuda estoy en este pais de mierda no se respeta nada (venezuela), pues en mi universidad no me enseñaron delphi, conoci y aprendi cositas de delphi siguiendo tutoriales y cosas asi

el hacer un software en delphi es idea mia, pido ayuda a ustedes por que son los que saben de delphi en mi institucion no saben delphi asi que quedo aislado de los profesores.

yo elegi a un tutor por que me gusta como analiza las cosas de una forma muy critica, con mucha logica mejor dicho, pero no tiene conocimiento alguno de delphi...

jaja y yo las consultas a clubdelphi las hago desde mi casa por que en la empresa que las estoy haciendo la conex de internet no es nada rapida..

y pues no se arrays por que nunca me han gustado en nignun tipo de programacion me los enseñaron en mi universidad en lenguajes como turbo pascal, foxpro 2.0, visual basic 4

y nunca sali bien en esos examenes, debe ser porque nunca los vi necesarios


y con respecto a violar una ley en venezuela mmmmm aqui no hay esas leyes seguro tu vives en un pais desarrollado donde obligan a cumplir leyes aqui en venezuela el mismo presidente es tremendo corrupto...

gracias por tu analisis me gusto mucho delphius aunque no es codigo de delphi me sirve esa forma de pensar
Responder Con Cita
  #7  
Antiguo 18-09-2008
lKinGl lKinGl is offline
Miembro
 
Registrado: ago 2007
Posts: 333
Poder: 20
lKinGl Va por buen camino
muchas gracias coso por el codigo y pues el sistema que yo mismo diseñe no tengo problemas con lo basico pero no tenia idea de como hacer la rotacion de choferes era solo eso

con ideas logicas que uds me dieran ya es bastante

es el unico problema que vi al diseñar el analisis del sistema
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Rotación de bitmap caso especial mrnovice Gráficos 7 13-03-2008 20:17:12
Rotacion de botones o paneles dave.jason C++ Builder 1 17-12-2007 18:40:28
asp.net Herramienta Administración de sitios Web maco2007 .NET 2 06-11-2007 23:17:25
Ayuda con rotacion de graficas jose_2057111 Gráficos 1 17-11-2004 06:38:42
como hago un sistema de rotacion de imagenes alachaise PHP 9 09-09-2004 09:45:09


La franja horaria es GMT +2. Ahora son las 00:12:48.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi