Autor |
Mensaje |
ivanz91
Nivel 2
Edad: 33
Registrado: 02 Mar 2010
Mensajes: 9
|
|
Holaa, queria saber que funcion uso (en Pascal) para detectar la palabra mas larga de un texto ingresado
saludoss
|
|
|
|
|
|
|
|
|
nachodz
Nivel 2
Edad: 34
Registrado: 07 Feb 2010
Mensajes: 12
Ubicación: Capital Federal
|
|
podes usar la funcion Lenght (palabra) q te devuelve la cantidad de caracteres q tiene esa palabra.
|
|
|
|
|
|
|
|
|
nachodz
Nivel 2
Edad: 34
Registrado: 07 Feb 2010
Mensajes: 12
Ubicación: Capital Federal
|
|
perdon es Length () el nombre
|
|
|
|
|
|
|
|
|
Gaturro
Nivel 8
Edad: 39
Registrado: 11 Oct 2005
Mensajes: 773
Ubicación: Montserrat
Carrera: No especificada
|
|
Hola! Cual es la función en pascal que me desarrolla el polinomio de taylor de la función coseno?
|
|
|
|
_________________ Ingleses piratas devuelvan las malvinas
|
|
|
|
|
el_milo
Nivel 7
Edad: 36
Registrado: 19 Mar 2007
Mensajes: 365
Ubicación: Caá Ballito
Carrera: Civil y Informática
|
|
Jajajaja, pastaycos(fifi) te la tira en latex
Para el creador del thread, vas a tener que pensar un poco, si son varias palabras, de alguna manera las vas a guardar en memoria y luego procesarlas para sacarles los espacios y después hacer la comparación para buscar la más larga.
|
|
|
|
|
|
|
|
|
gedefet
Nivel 9
Edad: 34
Registrado: 06 May 2008
Mensajes: 936
Carrera: Electrónica
|
|
anda leyendo el texto, cada vez que leas una letra, suma una unidad en algun contador, y guardas la posicion de la primera letra. cuando leas un espacio corta, y cuando vuelvas a leer una letra volve a contar con el contador ese. Si supera lo guardado antes, ,bueno, actualiza los datos. dsp podes releer el texto y ver donde quedo la palabra mas larga (la ultima)
|
|
|
|
_________________ Problemas con matemática? Llamá gratis al 0-800-3x²±sen(1/n³)∫∆ƒ dx
|
|
|
|
|
Kartlan
Nivel 5
Edad: 43
Registrado: 09 Ago 2005
Mensajes: 176
Ubicación: Once
Carrera: Informática
|
|
gedefet escribió:
|
anda leyendo el texto, cada vez que leas una letra, suma una unidad en algun contador, y guardas la posicion de la primera letra. cuando leas un espacio corta, y cuando vuelvas a leer una letra volve a contar con el contador ese. Si supera lo guardado antes, ,bueno, actualiza los datos. dsp podes releer el texto y ver donde quedo la palabra mas larga (la ultima)
|
Para hacerlo en una sola función eso seria lo mas lindo... siendo pascal...
Pero si necesitas hacer algo mas loco que buscar la palabra mas larga, lo que si te va a convenir es una función del estilo:
ENCONTRAR_PRIMERO_DE(STRING,<STRING>, POS_INICIAL)
Que lo unico que hace es buscar donde aparece por primera vez alguno de los caracteres indicados en el segundo string en el primero... la primera busqueda te da el largo de la primera palabra, como te va dar string de long. uno cuando sean muchos espacios blancos los podes esquivar... y despues muy parecido a la otra idea...
Solo que con esto podes contar la cantidad de veces que aparece la palabra "LA" tambien... que supongo que es el siguiente paso con este tipo de cosas...
Creo que existia la funcion "ES Blanco" en pascal tambien para indicar que caracteres se toman como espacios blancos.
en fin... copia la idea del otro que es mas facil para aprender...
Gato...
cos_n(xx,n)
var
float valor
begin
valor := -1;
if ((n div 2) = 0)
valor:= 1
valor:= valor * xx;
valor:= pow(valor,n);
valor:= valor / factorial(2n);
cos_n = valor;
end;
funcion_cos(x, terminos):
var
float calculo, xx
begin
calculo:= 0;
xx = x*x;
for k:= 1 to terminos do
calculo := calculo + cos_n(xx,k);
funcion_cos = calculo
end;
Toma... ahi esta en pseudo codigo... y te dejo para que jueges a hacer un factorial lindo en pascal...
|
|
|
|
|
|
|
|
|
Kartlan
Nivel 5
Edad: 43
Registrado: 09 Ago 2005
Mensajes: 176
Ubicación: Once
Carrera: Informática
|
|
Igual le faltan cosas... como ver si tiene sentido calcular el siguiente termino.
Ver cuanto error tiene, etc etc etc...
|
|
|
|
|
|
|
|
|
Gaturro
Nivel 8
Edad: 39
Registrado: 11 Oct 2005
Mensajes: 773
Ubicación: Montserrat
Carrera: No especificada
|
|
Che lo mio era joda eh! Mira si no voy a saber hacer eso. Igual gracias kartly
|
|
|
|
_________________ Ingleses piratas devuelvan las malvinas
|
|
|
|
|
ivanz91
Nivel 2
Edad: 33
Registrado: 02 Mar 2010
Mensajes: 9
|
|
gedefet escribió:
|
anda leyendo el texto, cada vez que leas una letra, suma una unidad en algun contador, y guardas la posicion de la primera letra. cuando leas un espacio corta, y cuando vuelvas a leer una letra volve a contar con el contador ese. Si supera lo guardado antes, ,bueno, actualiza los datos. dsp podes releer el texto y ver donde quedo la palabra mas larga (la ultima)
|
No me saleee, puedo contar las letras de la primer palabra y cortar cuando aparece un espacio: pero despues cuando empieza otra palabra me sigue sumando las letras en el mismo contador.. Como comparo??
|
|
|
|
|
|
|
|
|
vanesa_la21
Nivel 2
Registrado: 30 Mar 2010
Mensajes: 9
Carrera: Química
|
|
No te conviene sumar el contador solo cuando el usuario ingrese alguna NO letra? así es mas facil creo, pero en el caso de que ingrese otra NO letra otra vez deberias tener guardado en alguna var tipo boolean si la palabra ya fue contada o no, ojo que igual no soy una experta así que no se si te sirva.
|
|
|
|
|
|
|
|
|
vanesa_la21
Nivel 2
Registrado: 30 Mar 2010
Mensajes: 9
Carrera: Química
|
|
Ups no lei vien tu caso jeje, no creo que te sirva lo que te puse entonces.
|
|
|
|
|
|
|
|
|
4WD
Administrador
Edad: 39
Registrado: 07 Sep 2006
Mensajes: 2430
Ubicación: Ingeniero
Carrera: Mecánica
|
|
Trabajá con índices. Uno para donde comenzás a contar y otro que vaya incrementando mientras el caracter sea distinto de un espacio y lo vas incrementando.
Restando los índices tenés la longitud (ojo si empezás en 1 o eso; a veces es la longitud más o menos 1).
Por otro lado usá una variable de texto que guarde la palabra larga. Medi con legth y comparala con la diferencia de índices (longitud de la nueva palabra).
Si es menor que la que ya tenés, seguí a *.
Si es mayor, disparas un MID(string, inicial, final) o algo que se le parezca (hay algo así en VB) para recortar la palabra del texto largo y ponerla en la variable que almacena la palabra larga.
* Finalmente poné el índice bajo en la próxima posición después del espacio, y seguí incrementando el superior. Así hasta que termines con el texto.
|
|
|
|
_________________
|
|
|
|
|
MirianQ
Nivel 8
Edad: 35
Registrado: 29 Feb 2008
Mensajes: 675
Ubicación: Siempre desvirtuando... siempre.
Carrera: Electrónica y Informática
|
|
Usá dos variables contadoras: una como contador de letras de una palabra (o usá la función length(palabra) pero para eso tenés que asegurarte de haber guardado bien la palabra, sin caracteres que no sean letras) y la otra guarda la longitud de la palabra mas larga hasta ese momento. Y si necesitas la palabra necesitas una variable para guardar esa palabra en un lugar aparte.
No quiero resolverte el ejercicio, pero pensá cómo harías el ejercicio vos a mano: suponé que tenés 20 palabras. Contás cuántas letras tiene la primera, lo anotás en un papel junto con la palabra. Luego contás la segunda (pero acá empezas de cero, porque es una palabra diferente - ¿te suena inicialización?) y si ves que tiene más letras que lo que tenías anotado, borrás (sobreescribís) y anotas la nueva cantidad (tambien borrás la palabra anterior y anotás la nueva) y así sucesivamente. Si la cantidad es menor no haces nada. Y si son iguales pero las palabras distintas... no se... queda a tu criterio.
Espero que te ayude... a pensar, no quiero resolverte el ejercicio.
Saludos.
|
|
|
|
_________________
|
|
|
|
|
|