Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
valores diferentes en array

Bueno, yo sigo preguntando, creo que es simple pero me estoy liando.

necesito crear una array que va a contener valores booleanos, pero los indices son los numeros que yo quiera.
Seria asi mas o menos

haocupada[103]:=true;

porque las habitaciones no van seguidas, asi que no puedo usar el 1..61. Ademas quedaria inicializarlas a False todas por lo menos hasta que las vaya metiendo en un registro.

Si sabeis otra forma, porque quiza sea mas facil de otro modo.

como siempre muchas gracias
Responder Con Cita
  #2  
Antiguo 16-04-2007
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
por que no usas una tabla???
Responder Con Cita
  #3  
Antiguo 16-04-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Vamos por partes, si por ejemplo el numero de habitacion mas bajo es el 100 y el mas alto el 900, que te impide declarara un array como este:
Código Delphi [-]
var
  haocupada: array[100..900] of Boolean;
Si el problema es que entre el 100 y el 900 hay números de habitación que no se usan, no te preocupes, simplemente no lo uses. Una variable de tipo boolean ocupa solo 4 bytes en memoria, así que un array de, por ejemplo, 1000 elementos solo ocupa 4 kb, una pequeñez para un ordenador actual. Cualquier otra alternativa, probablemente requerirá mas calculo y por lo tanto mas gasto de recursos. A veces lo simple es mejor.

En cuanto a los de poner todos los elementos a false, puedes usar algo como esto:
Código Delphi [-]
  FillChar(haocupada,Sizeof(haocupada),#0);
Responder Con Cita
  #4  
Antiguo 16-04-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por seoane
Una variable de tipo boolean ocupa solo 4 bytes en memoria
Para una variable con sólo dos posibles valores, 4 bytes se me antoja demasiado. Yo diría que es un sólo byte.

// Saludos
Responder Con Cita
  #5  
Antiguo 16-04-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Cita:
Empezado por roman
Para una variable con sólo dos posibles valores, 4 bytes se me antoja demasiado. Yo diría que es un sólo byte.

// Saludos
Pues es verdad, pensaba que la trataba como un integer, pero acabo de comprobarlo y estaba equivocado
Responder Con Cita
  #6  
Antiguo 16-04-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Es esa manía tuya de pensar en C Porque un LongBool sí que ocupa 4 bytes. Eso sí, la "disminución" de tamaño, reafirma la respuesta que diste a anubis.

// Saludos
Responder Con Cita
  #7  
Antiguo 17-04-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
Gracias, la cosa funciona.

Última edición por anubis fecha: 17-04-2007 a las 10:09:50.
Responder Con Cita
Respuesta



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
pasar de un array de valores a bitmap i.larranaga C++ Builder 3 20-04-2007 05:01:04
Cómo asignar valores a una variable tipo Array quinqui OOP 7 23-06-2006 15:59:17
Como Asignar Variable Tipo Array de Tform a otro Array del Mismo tipo morfeo21 Varios 5 17-08-2004 17:39:51
Diferentes alineaciones para diferentes parrafos ciscu Servers 0 15-03-2004 10:36:12


La franja horaria es GMT +2. Ahora son las 06:35:41.


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