Pascal/Turbo Pascal - Ayuda con armado de palíndromo

   
Vista:

Ayuda con armado de palíndromo

Publicado por Joel (3 intervenciones) el 21/07/2016 23:53:58
Hola! Se me encargó realizar el siguiente enunciado:
62a7636ca0
41351aaddb

Pero necesitaría si por favor alguien me puede dar una mano de cómo poder empezarlo y sobre todo con cómo armar los i-palíndromos y d-palíndromos.

Desde ya muchas gracias.
Saludos!
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

Ayuda con armado de palíndromo

Publicado por Alfredo (10 intervenciones) el 22/07/2016 00:03:21
Pues para empezar, todo programa inicia con un Program ( aca va el nombre del programa);
Despues normalmente va un Uses Crt;

jajajajajajaja no ya en serio, expon tu codigo para ayudarte, si no tienes nada, ¿como quieres que se te ayude? podemos ayudarte cuando te marca error X linea, pero si no llevas nada, por tu bien, es mejor que repitas la materia, porque si alguien te hace la tarea ¿crees que te hace un bien? yo creo que no.

Recuerda: ACA NO SE HACEN TAREAS

Saludos.
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

Ayuda con armado de palíndromo

Publicado por Joel (3 intervenciones) el 22/07/2016 00:10:29
No no por supuesto que no quiero que alguien la haga por mi. Mi duda principal es cómo hacer para armar los d-palíndromos y los i-palíndromos, es decir, no entiendo cómo hacer para que a la palabra que yo ingrese el programa le quite determinada letra y que aparezca ya sin la misma.
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

Ayuda con armado de palíndromo

Publicado por Alfredo (10 intervenciones) el 22/07/2016 00:23:45
Ahhhh perdon, eso se llama manejo de cadenas, si quieres puedes ponerlo asi en google, ponle :"pascal manejo de cadenas"; te adelanto que pascal maneja toda cadena de caracteres como un vector, de modo que tendrias que utilizar una funcion que es
delete( palabra, a_partir_de_que_posicion , cuantos_a_eliminar)

y ya puedes compararlos, una sugerencia, cuando los leas, mejor conviertelos a mayusculas primero con Ucase para que no tengas que estarlos comparando entre mayusculas y minusculas

Saludos
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

Ayuda con armado de palíndromo

Publicado por Joel (3 intervenciones) el 22/07/2016 00:29:13
Muchas gracias! Ahora me pongo a ver eso.
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

Ayuda con armado de palíndromo

Publicado por ramon (2072 intervenciones) el 22/07/2016 11:37:38
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
{Espero esto te allude a terminar pero sino dilo y intentaremos mas}
 
program  palindromos;
  uses
     crt;
   type
     cadena = string[20];
   var
     palabra : cadena;
     part1, part2, part3, part4 : cadena;
     l, i, h : integer;
 
   procedure entradapalabra(var pl : cadena);
   begin
      clrscr;
      writeln('   Entre Palabra Max 20 Caracteres');
      writeln;
      write('  Palabra : ');
      readln(pl);
   end;
 
    function espalindromo(s : cadena) : boolean;
    var
      temp : cadena;
    begin
       l := 1;
       for i := length(s) downto 1 do
       begin
          temp[l] := s[i];
          temp[0] := chr(l);
          l := l + 1;
       end;
         if temp = s then
         espalindromo := true
      else
         espalindromo := false;
    end;
 
    function espalindromoi(pi : cadena) : boolean;
    begin
       delete(pi,1,1);
       if espalindromo(pi) then
       espalindromoi := true
    else
       espalindromoi := false;
    end;
 
   function espalindromod(pd : cadena) : boolean;
   begin
      delete(pd,length(pd),length(pd));
      if espalindromo(pd) then
       espalindromod := true
    else
       espalindromod := false;
    end;
 
   procedure particionpalabra(fg : cadena);
   var
     par : boolean;
   begin
       if length(fg) mod 2 = 0 then
       begin
       par := true;
       part1 := copy(fg,1,length(fg) div 2);
       part2 := copy(fg,(length(fg) div 2) + 1,length(fg));
       writeln('  ',part1);
       writeln('  ',part2);
       end
    else
       begin
       par := false;
       part1 := copy(fg,1,length(fg) div 2);
       part2 := copy(fg,(length(fg) div 2) + 1,length(fg));
       part3 := copy(fg,1,(length(fg) div 2) + 1);
       part4 := copy(fg,(length(fg) div 2) + 2,length(fg));
       end;
       if par = true then
       begin
       if espalindromo(part1) then
       writeln('   Es palindromo La Parte 1 = ',espalindromo(part1))
    else
       begin
          writeln('   Es Distinguida La Parte 1');
          writeln;
          writeln('   Es I-palindromo = ',espalindromoi(part1));
          writeln;
          writeln('   Es D-palindromo = ',espalindromod(part1));
       end;
      if espalindromo(part2) then
       writeln('   Es palindromo La Parte 2 = ',espalindromo(part2))
    else
       begin
          writeln;
          writeln('   Es Distinguida La Parte 2');
          writeln;
          writeln('   Es I-palindromo = ',espalindromoi(part2));
          writeln;
          writeln('   Es D-palindromo = ',espalindromod(part2));
       end;
   end
  else
     begin
        if espalindromo(part1) then
       writeln('   Es palindromo La Parte 1 = ',espalindromo(part1))
    else
       begin
          writeln('   Es Distinguida La Parte 1');
          writeln;
          writeln('   Es I-palindromo = ',espalindromoi(part1));
          writeln;
          writeln('   Es D-palindromo = ',espalindromod(part1));
       end;
      if espalindromo(part2) then
       writeln('   Es palindromo La Parte 2 = ',espalindromo(part2))
    else
       begin
          writeln;
          writeln('   Es Distinguida La Parte 2');
          writeln;
          writeln('   Es I-palindromo = ',espalindromoi(part2));
          writeln;
          writeln('   Es D-palindromo = ',espalindromod(part2));
       end;
      if espalindromo(part3) then
       writeln('   Es palindromo La Parte 3 = ',espalindromo(part3))
    else
       begin
          writeln;
          writeln('   Es Distinguida La Parte 3');
          writeln;
          writeln('   Es I-palindromo = ',espalindromoi(part3));
          writeln;
          writeln('   Es D-palindromo = ',espalindromod(part3));
       end;
        if espalindromo(part4) then
       writeln('   Es palindromo La Parte 4 = ',espalindromo(part4))
    else
       begin
          writeln;
          writeln('   Es Distinguida La Parte 4');
          writeln;
          writeln('   Es I-palindromo = ',espalindromoi(part4));
          writeln;
          writeln('   Es D-palindromo = ',espalindromod(part4));
       end;
 
     end;
  end;
 
    begin
       entradapalabra(palabra);
       if espalindromo(palabra) then
       writeln('  Si Es Palindromo')
    else
       particionpalabra(palabra);
       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