Delphi - Dudas

 
Vista:

Dudas

Publicado por MaeM (31 intervenciones) el 16/07/2003 11:46:21
Hola tengo unas cuatas dudas ....

1. Por ejemplo en C, cuando llenas una cadena caracter a caracter ... al final debes indicarle el fin de cadena añadiendo '\0', o NULL, .. en Delphi defini una variable de tipo string[100], la voy construyendo caracter a caracter en un bucle .. como le indico el fin de cadena .. ya q se cuela un monton de basura al final.

2. Estoy teniendo unos problemillas a llenar un ListView, lo lleno linea a linea .... sin un orden alfabetico ... dentro de un bucle ... y lo extraño es q me lo muestra en orden alfabetico y con muchas celdas vacias ... a pesar de llenar todos las las celdas.

3. Una ultima cosa ... tengo una lista de numeros y nesesito un algoritmo o funcion q me permita calcular un porcentaje de ellos ... es decir ... si mi lista de numeros es 100 y sumados dan 1000, la suma llegaria a ser 100%, si quisiera q la suma tenga una certeza de 80%, es decir q sumados N numeros den 800, teniendo en cuenta q se debe tomar la mayor cantidad de numeros para llegar a este valor.

la entrada de la funcion es la lista de numeros, el numero de elementos de la lista y el porcentaje de certeza(1..100).

Muchas gracias y hasta la proxima.

MaeM
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Dudas

Publicado por Diego Romero (636 intervenciones) el 16/07/2003 14:43:14
Punto 1:
Las cadenas de caracteres en Pascal son diferentes a las de C, no tienen un "caracter de fin" sino que el largo está almacenado en la posición cero del string.
Si declaras un stirng tal como
A:string[100];
el primer caracter estará en A[1] pero en A[0] tendrás el largo dinámico de la cadena
A:='Esto es una cadena';
la posición A[0] contendrá el valor 18 (de tipo byte);
Si asignas algo como esto:
A:=''; { vacio la cadena }
A[24]:='*'; { la posición 24 del string vale asterico }
Pascal NO actualiza el largo dinámico en la posición cero por tanto seguirá valiendo cero.
Punto 2:
Asegurate que no tienes la propiedad Sorted en true.
Punto 3:
No entiendo muy bién qué es lo que quieres hacer.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Dudas

Publicado por Domingo (65 intervenciones) el 17/07/2003 00:33:54
Para fijar la longitud de una cadena de texto usa la funcion SetLength
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar