Pascal/Turbo Pascal - figura

   
Vista:

figura

Publicado por marios (58 intervenciones) el 25/03/2014 22:20:57
hola, queria preguntar por un ejercicio, ojala me puedan hechar una mano amigos.
generar un programa pascal que permita imprimir:

x x x
u u u
n n n
i i i
xuniLinux
i i i
n n n
u u u
x x x
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

figura

Publicado por ramon (2072 intervenciones) el 26/03/2014 13:04:17
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
{Mira esto seria una forma de hacerlo }
 
 program presenta;
  uses
     crt;
  type
     string9 = string[9];
  var
    texto : string9;
    t, i : integer;
 
 
 procedure cargatexto(t : string9);
 begin
    texto := copy(t,1,length(t));
 end;
 
 begin
    clrscr;
    cargatexto('xuniLinux');
    for t := 1 to (length(texto) div 2) do
    begin
     for i := 1 to 3 do
     begin
     write(' ',texto[t]);
     end;
     writeln;
    end;
    writeln(' ',texto);
    for t := (length(texto) - (length(texto) div 2)) + 1 to length(texto) do
    begin
     for i := 1 to 3 do
     begin
     write(' ',texto[t]);
     end;
     writeln;
    end;
    readkey;
 end.
 
{Otra seria tomando como referencia la letra mayúscula de la frase  xuniLinux  en este caso la L }
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

figura

Publicado por marios (58 intervenciones) el 26/03/2014 15:33:21
hola Ramon, gracias por responderme,eres muy amable.
Ramon una cosa es que al ejecutarlo me esta dando la figura pero no centrada respecto a la L central de Linux, como podria ser para que el resultado fuese exactamente el mismo que te plantee es que parece que al enviar el mensaje se distorsiono, pero la idea es con referencia a como tu dices con respecto a la L, te hago una captura para que lo puedas ver mejor Ramon. A demas quisiera saber si se puede generar la carga del texto por programacion y no asi:
cargatexto('xuniLinux'); es decir que se pueda generar ese texto programandolo , es decir que se pueda introducir la cadena porejemplo Linux y esa carga de texto se programe para que pase como xuniLinux al procedimiento : procedure cargatexto(t : string); y si podrias explicarme por que haces esta linea o que hace mnejor:
for t := (length(texto) - (length(texto) div 2)) + 1 to length(texto) do

me imagino que cuando veas bien en el documento adjunto la figura se debera hacer uso de gotoxy , como seria entonces el programa completo para que la figura sea exactamente como la que te indico en el documento de captura, mil gracias ramon y disculpa por que no me di cuenta que la imagen se distorsino al enviarte el mensaje.
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

figura

Publicado por ramon (2072 intervenciones) el 28/03/2014 00:38:42
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
{mira esto}
 
program presenta;
  uses
     crt;
  type
     string9 = string[9];
  var
    texto : string9;
    p, d, t, i : integer;
 
 
 procedure cargatexto(var t : string9);
 begin
    write('  Entre Texto : ');
    readln(t);
 end;
 
 begin
    clrscr;
    cargatexto(texto);
    for t := 1 to (length(texto) div 2) do
    begin
     for d := 0 to t do
     write(' ');
     for i := 1 to 3 do
     begin
       write(texto[t]);
       for d := 1 to (length(texto) div 2) - t do
       write(' ');
     end;
     writeln;
    end;
    writeln('  ',texto);
    p := 0;
    for t := (length(texto) - (length(texto) div 2)) + 1 to length(texto) do
    begin
     for d := 1 to ((length(texto) div 2) + 1) - p  do
     write(' ');
     for i := 1 to 3 do
     begin
     write(texto[t]);
     if p > 0 then
     for d := 0 to p - 1 do
     write(' ');
     end;
     writeln;
     p := p + 1;
    end;
    readkey;
 end.
 
{(length(texto) - (length(texto) div 2)) + 1 to length(texto) esto es para calcular la longitud del testo }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

figura

Publicado por marios (58 intervenciones) el 28/03/2014 12:34:16
gracias ramon, eres brillante y mas que eso una excelente persona y lo digo no porque te conozca personalmente sino por que tienes el Don de saber programar y es digno de buenas personas compartir los dones que el cielo nos da, estupenda solucion.
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

figura

Publicado por marios (58 intervenciones) el 28/03/2014 13:07:59
ramon una cosa es que solo esta apareciendo la figura con la palabra ingresada pero no esta saliendo tal cual, por favor mira el archivo adjunto ahi te hice una captura de lo que necesito, una vez mas gracias ramon
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