• Publicidad

Sacar de array bidimensional información

Todo lo relacionado con lenguajes de programación distintos de Perl: PHP, Java, C++, Ruby, Python, etc.

Sacar de array bidimensional información

Notapor tigre10 » 2010-10-05 08:01 @376

Poseo un

Tipo_Arreglo: array [1..100,1..100] of string

en la cual almaceno NÚMERO DE IDENTIFICACIONES y deseo comparar una nueva identificación introducida con las que ya se tienen en el arreglo, y que me dé en cuál ubicación o posición se encuentra la coincidencia ¿Cómo lo haría?

¡¡¡Muchísimas Gracias!!!
tigre10
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2010-10-05 07:48 @367

Publicidad

Re: Sacar de array bidimensional información

Notapor salva » 2010-10-05 08:59 @416

En un arreglo, independientemente de la dimensión, la única forma de buscar algo es de manera secuencial. O sea, mirando en todas las posiciones una por una hasta que aparezca lo que estás buscando:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
my @array = ([...], [...], ..., [...]);

sub search {
  my ($item, $array) = @_;
  for my $i (0..$#$array) {
    my $row = $array->[$i];
    for my $j (0.. $#$row) {
      return ($i, $j) if $row->[$j] eq $item;
    }
  }
  return ();
}

my ($i, $j) = search("foo", \@array)
  or die "not found";
 
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Última edición por salva el 2010-10-05 11:32 @522, editado 1 vez en total
Avatar de Usuario
salva
Perlero nuevo
Perlero nuevo
 
Mensajes: 200
Registrado: 2008-01-03 15:19 @680

Re: Sacar de array bidimensional información

Notapor tigre10 » 2010-10-05 09:33 @440

Muchísimas gracias, Muy útil.
tigre10
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2010-10-05 07:48 @367

Re: Sacar de array bidimensional información

Notapor tigre10 » 2010-10-06 06:26 @310

Buenos días, amigos. En realidad no sé cómo utilizar bien lo que me has dado por las variables que no las entiendo. Para ser más específico tengo esto:

Sintáxis: [ Descargar ] [ Ocultar ]
Using delphi Syntax Highlighting
  1. type
  2.   Tipo_Arreglo = array [1..100,1..100] of String;
  3.  
  4. Var
  5.    Arreglo_CI, Arreglo_Nombre, Arreglo_Direccion: Tipo_Arreglo;
  6.  
  7. Begin
  8. x:=x+1;
  9.   Arreglo_CI[x]:= inputbox('Introduzca RIF o C.I del cliente','RIF ó C.I.','');
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4


«Esto para pedir el ingreso de un número de identificación, y el mismo debe compararse con el arreglo que ya se tiene para saber si hay coincidencias, y si las hay, debe darme cuál posición ocupa para luego con ello sacar de otro arreglo una información de Nombre y Apellido de la misma posición.»

«Vale mencionar que ese ImputBox me arroja el siguiente error y no sé por qué.»

Incompatible types:'Array' and String'

Sé que dice que son incompatibles, ¿debo transformar uno de ellos? ¿Cómo?

¿Y para buscar la posición en el arreglo no se podría por POS?

Muchísimas gracias, ¡¡¡me ayudarías una inmensidad!!!
tigre10
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2010-10-05 07:48 @367

Re: Sacar de array bidimensional información

Notapor salva » 2010-10-06 06:35 @316

¿einh? ¿Pero tú qué lenguaje de programación estás utilizando? ¡Esto es un foro sobre Perl y lo que tu has pegado no es Perl!
Avatar de Usuario
salva
Perlero nuevo
Perlero nuevo
 
Mensajes: 200
Registrado: 2008-01-03 15:19 @680

Re: Sacar de array bidimensional información

Notapor explorer » 2010-10-06 06:36 @316

tigre10, te han contestado con un trozo de código en lenguaje Perl.

Sería interesante que dijeras en qué lenguaje quieres escribir tu programa, ya que veo que no es Perl (al menos, al primer vistazo).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Sacar de array bidimensional información

Notapor tigre10 » 2010-10-06 06:46 @324

Disculpa, es que soy nuevo en la programación, y es Delphi 7.

MUCHÍSIMAS GRACIAS
tigre10
Perlero nuevo
Perlero nuevo
 
Mensajes: 4
Registrado: 2010-10-05 07:48 @367

Re: Sacar de array bidimensional información

Notapor explorer » 2010-10-06 09:31 @438

¿No has definido Tipo_Arreglo como un arreglo de dos dimensiones? Pues en inputbox() sólo devuelve un String, y estás intentando asignarlo a Arreglo_CI[x], que es un Array.

Debería ser así: Arreglo_CI[x][1], o así: Arreglo_CI[x, 1], por ejemplo, para guardarlo en una de las posiciones del arreglo (en la primera columna de la x-ésima fila).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Programación en general

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado