• Miércoles 20 de Noviembre de 2024, 18:38

Autor Tema:  Ayuda Con Los Arrays  (Leído 3405 veces)

althenna

  • Miembro activo
  • **
  • Mensajes: 66
    • Ver Perfil
Ayuda Con Los Arrays
« en: Martes 18 de Octubre de 2005, 21:29 »
0
de nuevo yo (ya me habia tardado)

bueno lo que pasa es que estoy haciendo un corrector lexico pero necesito usar un arra, pero no se como digamos meter bien la informacion al array para que se busque la palabra ahi...

bueno a lo que voy es...
como se usan los arrays y su sintaxis
por fa

gracias de antemano y disculpen mis preguntas tan malas

JMAlonso

  • Miembro activo
  • **
  • Mensajes: 46
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #1 en: Martes 18 de Octubre de 2005, 22:29 »
0
Hola.

var miarray: array[1..100] of string;

esto seria un array de 100 elementos , cada uno de ellos un string;

var miarray2: array[1..10] of array[1..50] of string;

esto seria una array de dos dimensiones 10x50.


Saludos y espero que te funcione.

lopman

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
    • http://gafootas.blogspot.com
Re: Ayuda Con Los Arrays
« Respuesta #2 en: Martes 18 de Octubre de 2005, 23:46 »
0
No olvidemos que el tamaño de un array se puede establecer dinámicamente

myArray: Array of "lo q sea";

SetLength(myArray, tamaño);

myArray[tamaño-1] := valor;

Hay que recordar que los array empiezan a almacenar los elementos desde el 0, al igual que pasa en C. Por eso el rellenar el ultimo elemento como "tamaño-1".

Cuando quieras recuperar el elemento i-esimo, simplemente tendrás que escribir myArray, y recordando una vez mas que el primer elemento no es myArray[1], si no myArray[0].


Espero haberte sido de ayuda.
Suerte!!!

Alpha_

  • Miembro activo
  • **
  • Mensajes: 72
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #3 en: Miércoles 19 de Octubre de 2005, 20:45 »
0
Cita de: "JMAlonso"
Hola.

var miarray: array[1..100] of string;

esto seria un array de 100 elementos , cada uno de ellos un string;

var miarray2: array[1..10] of array[1..50] of string;

esto seria una array de dos dimensiones 10x50.


Saludos y espero que te funcione.
Disculpa, pero no estoy totalmente seguro de si esto es correcto en Delphi.

Yo suelo hacer:

a: array[1..100, 1..100] of byte;

Y para acceder a los distintos elementos:

x := a[2, 63];

Saludos.
Alpha
http]

Enko

  • Miembro de PLATA
  • *****
  • Mensajes: 1562
  • Nacionalidad: 00
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #4 en: Jueves 20 de Octubre de 2005, 01:37 »
0
Código: Text
  1.  
  2. array[1..10] of array[1..10] == array[1..10,1..10]
  3.  
  4.  
Las dos formas son validas.

althenna

  • Miembro activo
  • **
  • Mensajes: 66
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #5 en: Jueves 20 de Octubre de 2005, 02:15 »
0
aahhh ok lo que pasa es que me confundi un poco. como los usaba en c++ creo que son algo semejantes no??

bueno paso el algoritmo del analisis lexico, creo que se usan 2 arrays

Código: Text
  1.  
  2. Do linea-1
  3.  
  4.      posicion:=0;
  5.      Estado:=0;
  6.  
  7.      matriz[posicion],[estado]
  8.       do
  9.        caracter_actual:=listbox[i];
  10.        posicion:=tabsim[i];
  11.        estado:=matris[posicion],[estado];
  12.        lexema:=lexema+caracter;
  13.  
  14.        While (estado<50)
  15.            begin
  16.              token[k]:= estado;  
  17.            end;
  18.       While (not fa)
  19. //  hay que regresarse al token para que no se repita el caracter
  20.  
  21.  

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #6 en: Jueves 20 de Octubre de 2005, 14:01 »
0
También vale:
[code]
  a[2][4]:=8;
[cod]

Y siempre que se pueda o sea aplicable, especialmente en matrices de más de una dimensión, es mejor comenzar los arreglos en 0 (como en C) por velocidad y comodidad cuando accedes a un elemento usando multiplicaciones y desplazamientos.

P.D.

¿Que se supone que quieres hacer con ese ? Do linea-1  :blink:

Si estás analizando un texto, sería bueno que uses un componente Tmemo y su propiedad lines, instancia de la clase TStringList. Puedes acceder a los elementos de una cadena como si fuera una matriz que comienza en 1.

althenna

  • Miembro activo
  • **
  • Mensajes: 66
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #7 en: Jueves 20 de Octubre de 2005, 17:36 »
0
Cita de: "Amilius"

Si estás analizando un texto, sería bueno que uses un componente Tmemo y su propiedad lines, instancia de la clase TStringList. Puedes acceder a los elementos de una cadena como si fuera una matriz que comienza en 1.
ok lo intentare, lo que pasa es que el algoritmo nos lo dieron y asi venia, pero como yo no entre no me quedo muy claro que digamos, intentare lo que sugieres pero aun no decido si usar un arreglo o un listbox para poner las palabras que son permitidas, es decir las palabras correctas(permitidas) en el lexico

gracias

Edit, oye estoy usando un richedit, cual  es mejor de usar el richedit o el tmemo :unsure: , lo que pasa es que este editor de texto lo habia hecho el año pasado y lo estoy continuando, pero no recuerdo por que use un richedit mejor que el tmemo... :whistling:

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #8 en: Jueves 20 de Octubre de 2005, 18:24 »
0
Cita de: "althenna"
Cita de: "Amilius"

Si estás analizando un texto, sería bueno que uses un componente Tmemo y su propiedad lines, instancia de la clase TStringList. Puedes acceder a los elementos de una cadena como si fuera una matriz que comienza en 1.
ok lo intentare, lo que pasa es que el algoritmo nos lo dieron y asi venia, pero como yo no entre no me quedo muy claro que digamos, intentare lo que sugieres pero aun no decido si usar un arreglo o un listbox para poner las palabras que son permitidas, es decir las palabras correctas(permitidas) en el lexico

gracias

Edit, oye estoy usando un richedit, cual  es mejor de usar el richedit o el tmemo :unsure: , lo que pasa es que este editor de texto lo habia hecho el año pasado y lo estoy continuando, pero no recuerdo por que use un richedit mejor que el tmemo... :whistling:
Depende mucho de lo que estas haciendo. Un richedit es para mostrar documentos con formato, donde cuenta más lo visual. El tmemo es para trabajar con textos planos (ascii estandar) como lo que estas haciendo. Para la lista de palabras usa tambien el tmemo, una por cada linea, en lugar del tlist. Asi puedes agregar un boton para recuperar la lista de un archivo de texto plano.

althenna

  • Miembro activo
  • **
  • Mensajes: 66
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #9 en: Jueves 20 de Octubre de 2005, 19:24 »
0
Citar
clase TStringList.

estoy usando delphi 7 y no me da esa opcion

Amilius

  • Miembro HIPER activo
  • ****
  • Mensajes: 665
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #10 en: Jueves 20 de Octubre de 2005, 19:29 »
0
propiedad: Lines clase: Tstrings (abstracta, implementada con TStringList)

althenna

  • Miembro activo
  • **
  • Mensajes: 66
    • Ver Perfil
Re: Ayuda Con Los Arrays
« Respuesta #11 en: Sábado 29 de Octubre de 2005, 01:02 »
0
ah ok gracias