Sign in Join
Wiki copytemporary

Write/es: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Write/es

OldNewLine
1+write es un procedimiento que indica que se muestren algún/nos caracteres en la pantalla. Para ello se sitúa lo que queremos mostrar entre los paréntesis, pudiendo ser tanto texto directamente, como texto representado por una variable.
2+
3+``` pascal
4+PROGRAM Mostrar_Texto_en_Pantalla;
5+
6+VAR
7+
8+variable_texto:string;
9+
10+begin
11+
12+ variable_texto:='Esto es lo que contiene la variable';
13+
14+ write ('El contenido de la variable es: ',variable_texto);
15+
16+end.
17+```
18+
19+Imprime lo siguiente:
20+
21+**El contenido de la variable es: Esto es lo que contiene la variable**
22+
23+También podemos imprimir en pantalla un carácter con su código alternativo gráfico (ALTGR+código de carácter), para ello utilizaríamos por ejemplo:
24+
25+``` pascal
26+write ('La letra X se puede imprimir como se ve en este ejemplo:' , #88);
27+```
28+
29+que obtiene el mismo resultado que si utilizamos:
30+
31+``` pascal
32+write ('La letra X se puede imprimir como se ve en este ejemplo: ',chr(88));
33+```
34+
35+Estos últimos ejemplos imprimen en pantalla lo siguiente:
36+
37+**La letra X se puede imprimir como se ve en este ejemplo: X**
38+
39+Además permite el formateado de los datos a imprimir, siendo muy útil a la hora de generar columnas numéricas. Supongamos que tenemos una variable de tipo real con valor 3.14159 llamada numero, entonces si escribimos:
40+
41+write (numero);
42+
43+Obtendríamos la impresión:
44+
45+**3.141520000000000E+000**
46+
47+En cambio si escribimos:
48+
49+``` pascal
50+write (numero:1:2);
51+```
52+
53+Obtendríamos esto otro:
54+
55+**3.14**
56+
57+Con:
58+
59+``` pascal
60+write (numero:1:3);
61+```
62+
63+Obtendríamos:
64+
65+**3.145**
66+
67+En el caso de que la variable hubiese tenido valor 3.1 habría rellenado con ceros dando los resultados:
68+
69+**3.10**
70+
71+**3.100**
72+
73+Se observa por tanto que podemos escoger el número de decimales a imprimir.
74+
75+Es frecuente combinar el uso de write con otras funciones como writeln, gotoxy,settexcolor, setbkcolor,.......
76+
77+Una opcion muy interesante que nos ofrece el formateado es la posibilidad de realizar un encolumnado asignando un numero de espacios fijo a la impresion. Si por ejemplo en numero:1:3 cambiamos el 1 por un 12 significa que los primeros 11 caracteres estarian en blanco y en la posicion numero 12 tendriamos el numero 3 que es la parte entera. En sucesivas impresiones de otros numeros con mas digitos en la parte entera se situarian de forma justificada a la derecha dejando mas o menos espacios a la izquierda.
78+
79+`000000000111`\
80+`123456789012              numero     formateado `\
81+`           3.100            3.1      numero:12:3`\
82+`           3.200            3.2      numero:12:3 `\
83+`          12.700           12.7      numero:12:3`\
84+`         123.100          123.1      numero:12:3  `\
85+`        1234.100         1234.1      numero:12:3`\
86+`       12345.100        12345.1      numero:12:3`\
87+`      123456.100       123456.1      numero:12:3`\
88+`     1234567.100      1234567.1      numero:12:3`\
89+`    12345678.100     12345678.1      numero:12:3`\
90+`   123456789.100    123456789.1      numero:12:3`\
91+`................................................`
92+
93+---
94+*From the Free Pascal wiki, page "Write/es", as it stood on 2020-03-04 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
95+Category: Castellano
96+Category: Español

Back to history