Pascal/Turbo Pascal - Funcion Recursiva. Como devolver el ultimo elemento de una cadena

 
Vista:

Funcion Recursiva. Como devolver el ultimo elemento de una cadena

Publicado por isaias (8 intervenciones) el 19/10/2013 21:12:46
Hay 2 tipos de funciones por la cual tengo problemas.
La primera es devolver el ultimo elemento de un string.. Es decir, el usuario ingresa un texto, ejemplo "hola" y me tiene que devolver solo la "a".
La otra funcion es devolver todos los elementos menos el ultimo. Es decir , q el usuario ingresa el texto "hola" y devuleve "hol".
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
sin imagen de perfil

Funcion Recursiva. Como devolver el ultimo elemento de una cadena

Publicado por Diego (98 intervenciones) el 19/10/2013 23:43:21
Nose que tipo de estructuras sabes usar, pero se podria hacer con vectores, si se sabe el ancho máximo que puede tomar una palabra, o con una lista si no se sabe el ancho de la palabra.

con vectores, cada elemento del vector es un cararter del string, el caso base de la recursion seria que llegaras al final del vector o al último elemento con contenido real, cuando se cumpla el caso base, imprimir el elemento, asi solo te imprimiria el ultimo elemento del vector con contenido real.
con listas, es parecido, solo que aquí el caso base seria que el nodo siguiente nil, luego cuando se cumpla el caso base imprimir el nodo en el que se encuentra, solo imprimirá el último.

2° ya sabiendo como se maneja el primer punto, el segundo es casi parecido, solo que necesitarás imprimir mientras no se cumpla el caso base, y el caso base sería llegar al ultimo elemento o nodo con contenido

Te pido disculpas, por no ser tan explicativo o si no se entiende mi respuesta, es que estoy con un poco de prisa.
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

Funcion Recursiva. Como devolver el ultimo elemento de una cadena

Publicado por ramon (2158 intervenciones) el 20/10/2013 13:40:41
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{Mira Esto}
 
program texto;
 uses
    crt;
  var
    tex : string[20];
    cont : integer;
 
  begin
     clrscr;
     write('   Entre texto : ');
     readln(tex);
     writeln;
     writeln('  La Ultima Letra Entrada Es : ',copy(tex,length(tex),1));
     writeln('  El Resto Del Texto Es      : ',copy(tex,1,length(tex) - 1));
     readkey;
  end.
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