FoxPro/Visual FoxPro - como puedo contar cuantas letras tiene una palabra

 
Vista:

como puedo contar cuantas letras tiene una palabra

Publicado por jesse (2 intervenciones) el 25/08/2016 00:55:46
necesito realizar un ejercicio el cual es el siguiente:
elaborar un programa que solicite el nombre de una persona y que imprima la longitud(cantidad de letras) del nombre y el rango de longitud en el que se encuentra el nombre
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
Imágen de perfil de enrique
Val: 2
Ha disminuido su posición en 8 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

como puedo contar cuantas letras tiene una palabra

Publicado por enrique (1 intervención) el 25/08/2016 01:02:45
se me ocurre que haga un array donde introduzcas el nombre y ya despues lees el array con un for
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
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

como puedo contar cuantas letras tiene una palabra

Publicado por Fidel José (657 intervenciones) el 25/08/2016 16:36:53
Cuantas letras tiene una palabra

lnLetras = LEN("CATASTROFICO")

Para un cuadro de texto:
lnLetras = LEN( ALLTRIM(thisform.Text1.Text))

Lo que desconozco es a qué le llamas "Rango de Longitud"
Acá pongo algo que se me ocurre, no se si tiene que ver con lo tuyo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
LOCAL i,;
	lcResp,;
	lcRango_List,;
	lFound,;
	lnChangeRange,;
	lnInterval,;
	lnRanges,;
	lnRangoEnd,;
	lnRangoIni,;
	lnRango_found
 
lnChangeRange = 1
lnInterval = 4
lnRangoIni = 0 - lnInterval - lnChangeRange
lnRangoEnd = 0
lnRanges = 10
lcRango_List = ""
LOCAL ARRAY laRango(m.lnRanges , 2)
FOR i = 1 TO m.lnRanges
	lnRangoIni = m.lnRangoIni ;
			+ m.lnInterval ;
			+ m.lnChangeRange
	lnRangoEnd = m.lnRangoIni + m.lnInterval
	laRango[i,1] = m.lnRangoIni
	laRango[i,2] = m.lnRangoEnd
NEXT
FOR i = 1 TO m.lnRanges
	lcRango_list = m.lcRango_list ;
		+ PADL(TRANSFORM(i),2," ")+CHR(41) ;
		+ PADL(TRANSFORM(laRango[i,1]),3," ");
		+ CHR(32)+CHR(187)+CHR(32);
		+ PADL(TRANSFORM(laRango[i,2]),3," ");
		+ CHR(13)
NEXT
 
lcWord = INPUTBOX("Palabra","Rango Palabra","",0,"","")
lnLen = LEN(m.lcWord)
lFound = .f.
lnRango_Found = 0
FOR i = 1 TO lnRanges
	lFound = BETWEEN(m.lnLen,laRango[i,1],laRango[i,2] )
	IF m.lFound
		lnRango_found = i
		EXIT
	ENDIF
NEXT
 
lcResp = "Palabra: "+m.lcWord +CHR(13);
	+ "Largo (len) = "+TRANSFORM(m.lnLen)+CHR(13);
	+ "Rango " ;
	+ IIF(m.lfound,"=",">") ;
	+ TRANSFORM(IIF(m.lFound,m.lnRango_found,m.lnRanges))
 
IF m.lFound
	lcResp = m.lcREsp ;
		+ CHR(13) ;
		+ "Intervalo Rango " ;
		+ TRANSFORM(laRango[m.lnRango_found,1]);
		+" - " ;
		+ TRANSFORM(laRango[m.lnRango_found,2])
ENDIF
lcResp = m.lcResp + CHR(13) ;
	+ "Lista de Rangos"+CHR(13) ;
	+ lcRango_list
 
STRTOFILE(m.lcResp,"Rango_palabra.txt")
 
MESSAGEBOX(m.lcResp,0,"Rango")

Y pongo la respuesta de la rutina anterior:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Palabra: catastrofico
Largo (len) = 12
Rango =3
Intervalo Rango 10 - 14
Lista de Rangos
 1)  0 »   4
 2)  5 »   9
 3) 10 »  14
 4) 15 »  19
 5) 20 »  24
 6) 25 »  29
 7) 30 »  34
 8) 35 »  39
 9) 40 »  44
10) 45 »  49
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

como puedo contar cuantas letras tiene una palabra

Publicado por jesse (2 intervenciones) el 25/08/2016 16:44:00
Muchas gracias por tu ayuda me sirvio mucho para terminar el ejercicio
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