<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1138029064281999405</id><updated>2012-01-30T04:12:08.081-08:00</updated><category term='matrices'/><category term='uses'/><category term='programas'/><category term='registros'/><category term='ficheros'/><category term='punteros'/><category term='funciones'/><category term='record'/><category term='variables'/><category term='determinante'/><category term='manual'/><title type='text'>Programación pascal</title><subtitle type='html'>Programas, manuales y ejemplos en pascal. Página dedicada a la programación en pascal. Aprende a programar en pascal y los conceptos básicos de la programación estructurada. Los programas de esta web están diseñados para Pascal estándar ampliado ISO 10206.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-2445440711596390177</id><published>2007-02-10T07:50:00.000-08:00</published><updated>2007-03-24T11:44:21.447-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='punteros'/><title type='text'>Puntero Nil</title><content type='html'>El puntero nil es un puntero que no apunta a ninguna parte.&lt;br /&gt;&lt;br /&gt;Un error muy común es acceder a una zona donde apunta un puntero indefinido porque:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;No tiene permiso&lt;/li&gt;&lt;li&gt;no sabemos lo que hay&lt;/li&gt;&lt;li&gt;no sabemos interpretarlo&lt;/li&gt;&lt;li&gt;podemos dañar una zona importante del  programa o sistema operativo&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Punteros colgantes: cunado exiten varias copias de un puntero. Cuando una de las copias devulve la memoria con dipose, toma el valor nil y las demás copias quedan con el mismo valor, pero no son accesibles.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-2445440711596390177?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/2445440711596390177/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=2445440711596390177' title='10 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/2445440711596390177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/2445440711596390177'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/02/puntero-nil.html' title='Puntero Nil'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-4474454226847744895</id><published>2007-02-10T07:37:00.000-08:00</published><updated>2007-03-24T11:44:39.737-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='punteros'/><title type='text'>Operaciones con punteros</title><content type='html'>Los punteros permiten las siguientes operaciones:&lt;br /&gt;&lt;br /&gt;Asignación de punteros: Si tenemos dos variables que apuntan al mismo sitio es posible asignar el valor de identificción de una de  ellas a la otra.&lt;br /&gt;    p1 := p2        (asigna el valor del puntero p2 al puntero p1)&lt;br /&gt;&lt;br /&gt;Comparación de igualdad o desigualdad. Para ver si dos punteros apuntan a la misma dirección.&lt;br /&gt;&lt;br /&gt;Compatibilidad de asignación y comparación de los punteros.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Los punteros tienen el mismo identificador de tipo.&lt;/li&gt;&lt;li&gt;El identificador de tipo de una variable es un alias del otro.&lt;/li&gt;&lt;li&gt;Nil es compatible con todos los punteros tanto para asignación como en comparación.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-4474454226847744895?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/4474454226847744895/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=4474454226847744895' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4474454226847744895'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4474454226847744895'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/02/operaciones-con-punteros.html' title='Operaciones con punteros'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-1838075332765085104</id><published>2007-02-10T07:17:00.000-08:00</published><updated>2007-03-24T11:44:57.253-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='punteros'/><title type='text'>New y Dispose punteros</title><content type='html'>New: Pide memoria al sistema operativo.&lt;br /&gt;Dispose: Devuelve memoria al sistema operativo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;New:&lt;/span&gt; Formas de inicializar un puntero:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Solicitar memoria con new. Creua la variable apuntada del tipo al que apunta el puntero en la zona de memoria llamada HEAP.&lt;/li&gt;&lt;li&gt;Asignar a un puntero la dirección válida que contiene otro puntero.&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;Dispose:&lt;/span&gt; Se utiliza cuando las variables identificadas no son necesarias para liberar la memoria&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Después de usar dispose la memoria devuelve la memoria del puntero.&lt;/li&gt;&lt;li&gt;El valor del puntero queda indefinido&lt;/li&gt;&lt;li&gt;No se puede volver a acceder a la zona de memoria especificada.&lt;/li&gt;&lt;/ul&gt;Para poder usar dispose:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;El puntero tiene que ser no &lt;span style="font-weight: bold;"&gt;nil&lt;/span&gt;&lt;/li&gt;&lt;li&gt;El puntero no puede ser indefinido&lt;/li&gt;&lt;li&gt;El puntero no puede estar siendo accedido en ese momento.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-1838075332765085104?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/1838075332765085104/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=1838075332765085104' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/1838075332765085104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/1838075332765085104'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/02/new-y-dispose-punteros.html' title='New y Dispose punteros'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-7909361254274281552</id><published>2007-02-10T07:02:00.000-08:00</published><updated>2007-03-24T11:45:15.088-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='punteros'/><title type='text'>Punteros en pascal</title><content type='html'>Los punteros representan cualquier dato de la memoria situado en una determinada dirección de memoria.&lt;br /&gt;&lt;br /&gt;Los punteros se manejan mediante un identificador, el ual representa:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Dirección: Lugar de memoria en el que se encuentra el dato&lt;/li&gt;&lt;li&gt;Tipo: Nº de celdas ocupadas por el dato y la interpración de su contenido.&lt;/li&gt;&lt;/ul&gt;Un puntero siempre tiene que estar apuntando a un tipo de los siguientes datos:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Número real&lt;/li&gt;&lt;li&gt;Registro&lt;/li&gt;&lt;li&gt;Array&lt;/li&gt;&lt;li&gt;Otro puntero&lt;/li&gt;&lt;/ul&gt;También se define el puntero nulo (que no apunta a ninguna dirección) con la sentencia nil&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-7909361254274281552?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/7909361254274281552/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=7909361254274281552' title='7 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/7909361254274281552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/7909361254274281552'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/02/punteros-en-pascal.html' title='Punteros en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-778627327351478952</id><published>2007-02-03T08:17:00.000-08:00</published><updated>2007-05-08T03:21:41.326-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='registros'/><category scheme='http://www.blogger.com/atom/ns#' term='record'/><title type='text'>Operaciones con registros</title><content type='html'>Para la asignación de registros es compatible en los siguientes casos:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Los registros tienen que ser de tipo idéntico&lt;/li&gt;&lt;li&gt;Un registros es un alias del otro&lt;/li&gt;&lt;li&gt;Los registros comparten la misma definición&lt;/li&gt;&lt;li&gt;Los registros están formados por componentes asignables&lt;/li&gt;&lt;/ul&gt;A su vez son registros que no se puden asignar los siguientes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;No pueden ser archivos o ficheros&lt;/li&gt;&lt;li&gt;No pueden estar formados por registros restringidos&lt;/li&gt;&lt;li&gt;No admiten los enlazables&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-778627327351478952?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/778627327351478952/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=778627327351478952' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/778627327351478952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/778627327351478952'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/02/operaciones-con-registros.html' title='Operaciones con registros'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-4257196191520787301</id><published>2007-02-03T07:36:00.000-08:00</published><updated>2007-05-08T03:21:55.366-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='registros'/><category scheme='http://www.blogger.com/atom/ns#' term='record'/><title type='text'>Registros (record)</title><content type='html'>Un registro o record sirve para agrupar distinto tipo de datos pero que deben estar juntos. Por ejemplo los datos de una persona, nombre, edad, fecha nacimiento, sexo, etc.&lt;br /&gt;&lt;br /&gt;Es necesario acceder de forma aleatoria a los campos de un registro, pero no puede ser calculado porque los campos pueden tener distinto tamaño, por  lo que se crea un SELECTOR DE CAMPO o identificador.  Se pueden realizar registros anidados. &lt;pre&gt;Ejemplo de registro o record en pascal:&lt;br /&gt;type&lt;br /&gt;tFecha = record&lt;br /&gt;dia: 1..31;&lt;br /&gt;mes: 1..12;&lt;br /&gt;año: 1..2100;&lt;br /&gt;end;&lt;br /&gt;&lt;/pre&gt;Un registro puede tener varias variantes con un campo discriminante siempre presente, el cual elige una variante o otra según se indique. En el caso de ser boolean se elige la que sea true.&lt;br /&gt;El campo discriminante tiene que ser de tipo ordinal, no puede ser anónimo y no enlazable.&lt;br /&gt;&lt;br /&gt;Alguno de los campos de alguna variante puede ser un registro, el cual puede tener una parte variante también, etc.&lt;br /&gt;&lt;br /&gt;Un error muy común es intentar acceder a un comapo de una variante no activa, porque en ese caso esa variante no existe.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-4257196191520787301?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/4257196191520787301/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=4257196191520787301' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4257196191520787301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4257196191520787301'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/02/registros-record.html' title='Registros (record)'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-2325888054874168991</id><published>2007-02-01T07:09:00.000-08:00</published><updated>2007-02-26T06:04:59.637-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='manual'/><title type='text'>Conjuntos en pascal</title><content type='html'>Pascal estándar permite el tratamiento de conjuntos como elementos. Un conjunto es una colección de elementos que no están repetidos. Los conjuntos en pascal tienen que tener un tipo base Ordinal necesariamente.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Los operadores de los conjuntos:&lt;/span&gt;&lt;br /&gt;Intersección: *&lt;br /&gt;Unión: +&lt;br /&gt;Diferencia: -&lt;br /&gt;Diferencia simétrica: &gt;&lt; pertenencia: in&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Operadores relacionales y conjuntos: Sean A y B dos conjuntos&lt;/span&gt;&lt;br /&gt;Igualdad: A = B True si tienen los mismo elementos&lt;br /&gt;Desigualdad A &lt;&gt; B True si tienen elemendos distintos&lt;br /&gt;Subconjunto A &lt;= B True si A está contenido en B&lt;br /&gt;Superconjunto A &gt;= B True si B está contenido en A&lt;br /&gt;&lt;br /&gt;Nota Se pueden agregar o quitar elementos de un conjunto con los operadores + y - de la siguiente forma Conjunto := Conjunto + ['e']&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-2325888054874168991?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/2325888054874168991/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=2325888054874168991' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/2325888054874168991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/2325888054874168991'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/02/conjuntos-en-pascal.html' title='Conjuntos en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-6600579060198993767</id><published>2007-01-31T05:42:00.000-08:00</published><updated>2007-05-08T03:22:06.691-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ficheros'/><category scheme='http://www.blogger.com/atom/ns#' term='manual'/><title type='text'>Operaciones con Ficheros</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Conceptos Básicos:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El Buffer de archivo: El buffer es una variable ligada al archivo cuyo tipo es el tiopo baso de este y cuyo contenido es el componente de la posición actual del buffer.&lt;br /&gt;&lt;br /&gt;Te presentamos los principales procedimientos y funciones para la utilización de ficheros tanto externos como internos en pascal.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;REWRITE: &lt;/span&gt;Crea un fichero vacío en la posición eof y el buffer de archivo f^ queda indefinido.&lt;br /&gt;Sintaxis: rewrite(fichero)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;PUT&lt;/span&gt;: Agrega el componente del buffer de archivo f^ al fichero seleccionado.&lt;br /&gt;Sintaxis: put(fichero)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;RESET:&lt;/span&gt; Prepara el archivo para inspección.&lt;br /&gt;Sintaxis reset(fichero)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;GET:&lt;/span&gt; Pasa al siguiente componente y actualiza el buffer.&lt;br /&gt;Sintaxis: get(fichero)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EOF:&lt;/span&gt; Detecta el final de fichero.&lt;br /&gt;Sintaxis: eof(fichero)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EXTEND:&lt;/span&gt;  Esta funcion es la fomra de añadir compentes a un archivo sin usar la funcion rewrite la cual destruye todo el contenido del fichero.&lt;br /&gt;Sintaxis: extend(f);&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;READ:&lt;/span&gt; Lee del archivo indicado.&lt;br /&gt;Sintaxis: read(fichero,v)  Si v es un entero el procedimiento lee el primer entero eliminando los espacios y saltos de línea hasta él.&lt;br /&gt;read(fichero,v) equivale a las siguientes sentencias:&lt;br /&gt;&lt;pre&gt;begind&lt;br /&gt;v:= fichero^;&lt;br /&gt;get(fichero)&lt;br /&gt;end;&lt;/pre&gt;&lt;span style="font-weight: bold;"&gt;WRITE:&lt;/span&gt; Escribe en el fichero seleccionado&lt;br /&gt;Sintaxis: write(fichero,v)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-6600579060198993767?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/6600579060198993767/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=6600579060198993767' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/6600579060198993767'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/6600579060198993767'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/01/operaciones-con-ficheros.html' title='Operaciones con Ficheros'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-8709314426716715209</id><published>2007-01-21T04:43:00.000-08:00</published><updated>2007-05-08T03:22:16.643-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='matrices'/><title type='text'>Visualizar matrices en pantalla</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Muestra Matices en la salida estandar&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;type &lt;br /&gt;   tDimension = 1..100;&lt;br /&gt;   eMatriz(f,c: tDimension) = array [1..f,1..c] of real;&lt;br /&gt;   &lt;br /&gt;   tRango = record&lt;br /&gt;      f,c: tDimension value 1;&lt;br /&gt;   end;&lt;br /&gt;   &lt;br /&gt;   tpMatriz = ^eMatriz;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;procedure EscribirMatriz(var m: tpMatriz);&lt;br /&gt;var filas,col : integer;&lt;br /&gt;begin&lt;br /&gt;   for filas := 1 to m^.f do begin&lt;br /&gt;      for col := 1 to m^.c do&lt;br /&gt;         write(m^[filas,col]:7:2);&lt;br /&gt;      writeln(resultado);&lt;br /&gt;      writeln(resultado)&lt;br /&gt;     end;    &lt;br /&gt;end;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-8709314426716715209?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/8709314426716715209/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=8709314426716715209' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/8709314426716715209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/8709314426716715209'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/01/visualizar-matrices-en-pantalla.html' title='Visualizar matrices en pantalla'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-3466284215180950258</id><published>2007-01-21T04:40:00.000-08:00</published><updated>2007-05-08T03:22:25.902-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='matrices'/><title type='text'>Division matrices en pascal</title><content type='html'>&lt;span style="font-weight: bold;"&gt;División de dos matrices en pascal.&lt;/span&gt;&lt;br /&gt;Para el uso de este procedmiento son necesarios los siguientes procedimientos.&lt;br /&gt;Matriz Inversa&lt;br /&gt;Multiplicar matrices&lt;br /&gt;&lt;br /&gt;Dado la siguiente declaración de tipos:&lt;br /&gt;type &lt;br /&gt;   tDimension = 1..100;&lt;br /&gt;   eMatriz(f,c: tDimension) = array [1..f,1..c] of real;&lt;br /&gt;   &lt;br /&gt;   tRango = record&lt;br /&gt;      f,c: tDimension value 1;&lt;br /&gt;   end;&lt;br /&gt;   &lt;br /&gt;   tpMatriz = ^eMatriz;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;procedure Dividir(m1, m2: tpMatriz; var resul: tpMatriz);&lt;br /&gt;var inversa: tpMatriz;&lt;br /&gt;begin&lt;br /&gt; { Calcular inversa de m2 }&lt;br /&gt; new (inversa, m2^.f, m2^.c);&lt;br /&gt; MatrizInversa(m2,inversa);&lt;br /&gt;&lt;br /&gt; Multiplicar(m1,inversa,resul);&lt;br /&gt;end;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-3466284215180950258?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/3466284215180950258/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=3466284215180950258' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/3466284215180950258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/3466284215180950258'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/01/division-matrices-en-pascal.html' title='Division matrices en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-5728991698019153472</id><published>2007-01-20T15:13:00.000-08:00</published><updated>2007-05-08T03:22:42.475-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='matrices'/><title type='text'>Matriz inversa en pascal</title><content type='html'>Para El uso de este procedimiento es necesario otros artículos de este blog como:&lt;br /&gt;Determinante en pascal&lt;br /&gt;Matriz Adjunta en pascal&lt;br /&gt;&lt;br /&gt;Dada la siguiente declaración de tipos:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;type &lt;br /&gt;   tDimension = 1..100;&lt;br /&gt;   eMatriz(f,c: tDimension) = array [1..f,1..c] of real;&lt;br /&gt;   &lt;br /&gt;   tRango = record&lt;br /&gt;      f,c: tDimension value 1;&lt;br /&gt;   end;&lt;br /&gt;   &lt;br /&gt;   tpMatriz = ^eMatriz;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;procedure MatrizInversa(m: tpMatriz; var resul: tpMatriz);&lt;br /&gt;var i,j,i2,j2: integer; &lt;br /&gt;    adjunta: tpMatriz;&lt;br /&gt;    deter: real;&lt;br /&gt;begin&lt;br /&gt;   deter:= Determinante(m);&lt;br /&gt;   if(deter &lt;&gt; 0) then begin&lt;br /&gt;   {Crea la matriz Adjunta}&lt;br /&gt;   new (adjunta, m^.c -1, m^.f -1);&lt;br /&gt;   &lt;br /&gt;   for i:=1 to m^.f do&lt;br /&gt;      for j:=1 to m^.c do&lt;br /&gt;        begin&lt;br /&gt;          AdjuntoMatriz(m,i,j,adjunta);&lt;br /&gt;          resul^[i,j] := Determinante(adjunta); &lt;br /&gt;        end;  &lt;br /&gt;      &lt;br /&gt;   MatrizTraspuesta(resul);  &lt;br /&gt;   { dividir determinante }&lt;br /&gt;   for i2:=1 to m^.f do&lt;br /&gt;      for j2:=1 to m^.c do&lt;br /&gt;         resul^[i2,j2]:= resul^[i2,j2] / deter; &lt;br /&gt;   end;&lt;br /&gt;end;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-5728991698019153472?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/5728991698019153472/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=5728991698019153472' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5728991698019153472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5728991698019153472'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/01/matriz-inversa-en-pascal.html' title='Matriz inversa en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-5563344048640839258</id><published>2007-01-20T14:56:00.000-08:00</published><updated>2007-05-08T03:22:55.768-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='matrices'/><category scheme='http://www.blogger.com/atom/ns#' term='determinante'/><title type='text'>Traspuesta matriz en pascal</title><content type='html'>Este procedimiento realiza la matriz traspuesta a una dada.&lt;br /&gt;La Matriz traspuesta se obtiene intercambiando las filas por las columnas&lt;br /&gt;de una matriz.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Dado la declaración en la sección de tipos:&lt;br /&gt;&lt;br /&gt;type&lt;br /&gt;tDimension = 1..100;&lt;br /&gt;eMatriz(f,c: tDimension) = array [1..f,1..c] of real;&lt;br /&gt;&lt;br /&gt;tpMatriz = ^eMatriz;&lt;br /&gt;&lt;br /&gt;Y las variables:&lt;br /&gt;&lt;br /&gt;var&lt;br /&gt;pM1, pM2, pResul: tpMatriz;&lt;br /&gt;procedure MatrizTraspuesta(var resul: tpMatriz);&lt;br /&gt; var i,j,i2,j2: integer;&lt;br /&gt; mAux:tpMatriz; &lt;span style="font-weight: bold;"&gt; {Matriz axuliar}&lt;/span&gt;&lt;br /&gt;begin&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; {Crear matriz m copia de resul}&lt;/span&gt;&lt;br /&gt; new (mAux, resul^.f, resul^.c);&lt;br /&gt;&lt;br /&gt; for i2:= 1 to mAux^.f do&lt;br /&gt;    for j2:=1 to mAux^.c do&lt;br /&gt;       mAux^[i2,j2] := resul^[i2,j2];&lt;br /&gt;    &lt;br /&gt; { copia de la matriz resul }          &lt;br /&gt; for i:= 1 to mAux^.f do&lt;br /&gt;    for j:=1 to mAux^.c do&lt;br /&gt;       resul^[i,j] := mAux^[j,i];&lt;br /&gt;&lt;br /&gt;end;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-5563344048640839258?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/5563344048640839258/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=5563344048640839258' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5563344048640839258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5563344048640839258'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/01/traspuesta-matriz-en-pascal.html' title='Traspuesta matriz en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-9008873614221789246</id><published>2007-01-15T14:21:00.000-08:00</published><updated>2007-05-08T03:23:10.357-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='matrices'/><category scheme='http://www.blogger.com/atom/ns#' term='determinante'/><title type='text'>Determinante de matrices en pascal</title><content type='html'>Primero un poco de Teoría. Aprende a realizar el determinante de una matriz de&lt;br /&gt;cualquier dimesión.&lt;br /&gt;&lt;span style=""&gt;&lt;br /&gt;Sea A una matriz cuadrada y &lt;i&gt;a&lt;/i&gt;&lt;sub&gt;ij&lt;/sub&gt; (con i y j como filas y columnas del array) uno cualquiera de sus elementos. Si se suprime la fila i y la columna j de la matriz A se obtiene una submatriz (o matriz  adjunta) &lt;b&gt;M&lt;sub&gt;ij&lt;/sub&gt;&lt;/b&gt; que recibe el nombre de &lt;b&gt;matriz adjunta del elemento &lt;i&gt;a&lt;/i&gt;&lt;sub&gt;ij&lt;/sub&gt;&lt;/b&gt;.&lt;/span&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;span style=""&gt;Dada la matriz&lt;/span&gt; &lt;/p&gt;&lt;center&gt; &lt;img src="http://thales.cica.es/rd/Recursos/rd99/ed99-0289-02/images/image002.gif" nosave="" shapes="_x0000_i1036" height="147" width="211" /&gt;&lt;/center&gt;  &lt;p&gt;&lt;span style=""&gt;la matriz adjunta del elemento &lt;i&gt;a&lt;/i&gt;&lt;sub&gt;11&lt;/sub&gt; es la matriz que resultante de suprimir la fila 1  y columna 1 en la matriz A, es decir:&lt;/span&gt; &lt;/p&gt;&lt;center&gt; &lt;img src="http://thales.cica.es/rd/Recursos/rd99/ed99-0289-02/images/image004.gif" nosave="" shapes="_x0000_i1034" height="75" width="140" /&gt;&lt;/center&gt;  &lt;p&gt;&lt;span style=""&gt;Llamamos menor complementario del elemento a&lt;sub&gt;ij&lt;/sub&gt; al determinante de la matriz complementaria del elemento a&lt;sub&gt;ij&lt;/sub&gt; , y se representa por &lt;span style="font-family:Symbol;"&gt;a&lt;/span&gt;&lt;sub&gt;ij&lt;/sub&gt;&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;span style=""&gt;Se llama &lt;b&gt;adjunto de &lt;i&gt;a&lt;/i&gt;&lt;sub&gt;ij&lt;/sub&gt;&lt;/b&gt; , y se representa por por &lt;b&gt;A&lt;sub&gt;ij&lt;span style="font-size:7;"&gt;&lt;/span&gt;&lt;/sub&gt;&lt;/b&gt;, al número (–1)&lt;sup&gt;i+j&lt;span style="font-family:Symbol;"&gt;&lt;/span&gt;&lt;/sup&gt;a&lt;sub&gt;ij&lt;/sub&gt;.&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;b&gt;&lt;span style=""&gt;El determinante de una matriz cuadrada es igual a la suma de los elementos de una fila o columna cualquiera, multiplicados por sus adjuntos.&lt;/span&gt;&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt; &lt;/p&gt;&lt;p&gt;&lt;span style=""&gt;Por ejemplo, si desarrollamos un determinante de orden &lt;i&gt;n&lt;/i&gt; por los adjuntos de la 1ª fila se tiene:&lt;/span&gt; &lt;/p&gt;&lt;center&gt; &lt;img src="http://thales.cica.es/rd/Recursos/rd99/ed99-0289-02/images/image006.gif" nosave="" shapes="_x0000_i1040" height="45" width="101" /&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;Cálculo del determinante de una matriz.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;El determinante de la matriz en este código se calcula por adjuntos mediante&lt;br /&gt;dos procedimientos &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;que se llaman de forma recursiva.&lt;br /&gt;&lt;/span&gt;&lt;pre&gt;&lt;br /&gt;Dado la declaración en la sección de tipos:&lt;br /&gt;&lt;br /&gt;type&lt;br /&gt;tDimension = 1..100;&lt;br /&gt;eMatriz(f,c: tDimension) = array [1..f,1..c] of real;&lt;br /&gt;&lt;br /&gt;tpMatriz = ^eMatriz;&lt;br /&gt;&lt;br /&gt;Y las variables:&lt;br /&gt;&lt;br /&gt;var&lt;br /&gt;pM1, pM2, pResul: tpMatriz;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;El procedimiento AdjuntoMatriz devuelve la matriz adjunta a la fila (f) &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;y columna (c) indicadas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;procedure AdjuntoMatriz(m: tpMatriz; f,c: integer; var resul: tpMatriz);&lt;br /&gt;var i,j,i2,j2: integer value 0;&lt;br /&gt;begin&lt;br /&gt;i2 := 0;&lt;br /&gt;for i:= 1 to m^.f do begin&lt;br /&gt;if (i &lt;&gt; f) then begin  &lt;span style="font-weight: bold;"&gt;{Comprobar si la fila no es la que se va a elminar}&lt;/span&gt;&lt;br /&gt;i2 := i2  +1;&lt;br /&gt;for j:= 1 to m^.c do&lt;br /&gt;   if (j &lt;&gt; c) then begin &lt;span style="font-weight: bold;"&gt;{Comprobar si la columna no es la que se va a eliminar}&lt;/span&gt;&lt;br /&gt;      j2 := j2 +1;&lt;br /&gt;      resul^[i2,j2] := m^[i,j] * (-1) pow(i+j);&lt;br /&gt;   end;&lt;br /&gt;end;&lt;br /&gt;j2:= 0;&lt;br /&gt;end;&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;La función determinante calcula el determinante de la matriz de forma&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;recursiva y por adjuntos.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;function Determinante(m: tpMatriz):real;&lt;br /&gt;var&lt;br /&gt;j:integer value 0;&lt;br /&gt;det:real;&lt;br /&gt;m2: tpMatriz;&lt;br /&gt;begin&lt;br /&gt;new(m2,m^.f -1,m^.c -1);&lt;br /&gt;if m^.c = 2 then&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;{ Determinante de dos por dos, caso base de la recursividad }&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;dl&gt;&lt;dd&gt; &lt;dl&gt;&lt;dd&gt; &lt;dl&gt;&lt;dd&gt;&lt;a href="http://es.wikipedia.org/wiki/Imagen:Determinante_2.png" class="image" title="Imagen:determinante_2.png"&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/a/a0/Determinante_2.png" alt="Imagen:determinante_2.png" longdesc="/wiki/Imagen:Determinante_2.png" height="52" width="445" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;/dd&gt;&lt;/dl&gt; &lt;/dd&gt;&lt;/dl&gt;&lt;pre&gt;  Determinante := m^[1,1] * m^[2,2] - m^[1,2] * m^[2,1]&lt;br /&gt;else&lt;br /&gt;begin&lt;br /&gt;det:= 0;&lt;br /&gt;for j:= 1 to m^.c do&lt;br /&gt;begin&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;{Calcula los adjuntos de la fila 1. LLama al procedimiento Adjunto&lt;br /&gt;Matriz que devuelve la matriz adjunta a la fila primera y a la columna j}&lt;/span&gt;&lt;br /&gt;AdjuntoMatriz(m,1,j,m2);&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;{LLamada recursiva de la funcion Determinante}&lt;/span&gt;&lt;br /&gt; det:= det +  m^[1,j] * Determinante(m2);&lt;br /&gt;end;&lt;br /&gt;Determinante:= det;&lt;br /&gt;end;&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-9008873614221789246?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/9008873614221789246/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=9008873614221789246' title='33 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/9008873614221789246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/9008873614221789246'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2007/01/determinante-de-matrices-en-pascal.html' title='Determinante de matrices en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>33</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-6482487293385390620</id><published>2006-12-12T04:13:00.000-08:00</published><updated>2006-12-14T16:43:15.440-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programas'/><title type='text'>Cuadrado triangulo rombo en pascal</title><content type='html'>Programa que genera un cuadrado, triángulo y rombo de la siguiente forma,&lt;br /&gt;del tamaño especificado:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;program CuaTriRom  (input, output);&lt;br /&gt;&lt;br /&gt;const&lt;br /&gt; ESPACIO   = ' ';&lt;br /&gt; ASTERISCO = '*';&lt;br /&gt;&lt;br /&gt;var&lt;br /&gt; opcUsuario: char;&lt;br /&gt; finPrograma: boolean value false;&lt;br /&gt;&lt;br /&gt;procedure Cuadrado;&lt;br /&gt;var fila, j,tam: integer;&lt;br /&gt;  despl: integer;&lt;br /&gt;  carExt: char value ASTERISCO;&lt;br /&gt;  carInt: char value ESPACIO;&lt;br /&gt;  opcRelleno: char;&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt; repeat&lt;br /&gt;  write('Lleno o vací­o (l,v) ');&lt;br /&gt;  readln(opcRelleno);&lt;br /&gt; until (opcRelleno = 'l') or (opcRelleno = 'v');&lt;br /&gt; if opcRelleno= 'l' then carInt:= ASTERISCO;&lt;br /&gt;&lt;br /&gt; writeln('Escribe el tamaño del cuadrado: ');&lt;br /&gt; readln(tam);&lt;br /&gt;&lt;br /&gt; despl := 40 - tam div 2;&lt;br /&gt;&lt;br /&gt; for fila:= 1 to tam do begin&lt;br /&gt;    write('':despl);&lt;br /&gt;    for j:= 1 to tam do&lt;br /&gt;       if (j=1) or (j=tam) or (fila=1) or (fila=tam) then&lt;br /&gt;        write (carExt)&lt;br /&gt;       else write (carInt);&lt;br /&gt;   writeln;&lt;br /&gt;  end;&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;procedure Triangulo;&lt;br /&gt;&lt;br /&gt;var fila, j,tam: integer;&lt;br /&gt;   despl: integer;&lt;br /&gt;   carExt: char value ASTERISCO;&lt;br /&gt;   carInt: char value ESPACIO;&lt;br /&gt;   numColum: integer  value 1; { Cantidad de columnas que se escriben }&lt;br /&gt;   opcRelleno: char;&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt;  repeat&lt;br /&gt;  write('Lleno o vacÃ­o (l,v) ');&lt;br /&gt;  readln(opcRelleno);&lt;br /&gt; until (opcRelleno = 'l') or (opcRelleno = 'v');&lt;br /&gt;&lt;br /&gt; writeln('Escribe el tamaño del triangulo: ');&lt;br /&gt; readln(tam);&lt;br /&gt;&lt;br /&gt; if (opcRelleno = 'l') then carInt:= ASTERISCO;&lt;br /&gt;&lt;br /&gt; for fila:=1 to tam do begin&lt;br /&gt;    despl := 40 - tam - numColum div 2; { Posición en la pantalla }&lt;br /&gt;    write('':despl);&lt;br /&gt;       for j:=1 to numColum do begin&lt;br /&gt;          if (fila=1) or (fila=tam) or (j=1) or (j = numColum) then&lt;br /&gt;           write (carExt)&lt;br /&gt;          else write (carInt);&lt;br /&gt;       end;&lt;br /&gt;       writeln;&lt;br /&gt;       numColum:= numColum +2;&lt;br /&gt; end;&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;procedure Rombo;&lt;br /&gt;var&lt;br /&gt; fila, j: integer;&lt;br /&gt; despl: integer;&lt;br /&gt; carExt: char value ASTERISCO;&lt;br /&gt; carInt: char value ESPACIO;&lt;br /&gt; numColum: integer  value 1; { Cantidad de columnas que se escriben }&lt;br /&gt; tam,mitad: integer;&lt;br /&gt; opcRelleno:char;&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt; repeat&lt;br /&gt;  write('Lleno o vací­o (l,v) ');&lt;br /&gt;  readln(opcRelleno);&lt;br /&gt; until (opcRelleno = 'l') or (opcRelleno = 'v');&lt;br /&gt; if opcRelleno= 'l' then carInt:= ASTERISCO;&lt;br /&gt;&lt;br /&gt; repeat&lt;br /&gt;  writeln('Escribe un valor impar entre 11 y 15');&lt;br /&gt;  readln(tam);&lt;br /&gt; until ( (tam mod 2 &lt;&gt; 0) and (tam &gt;= 11) and (tam &lt;= 15) );&lt;br /&gt;&lt;br /&gt; mitad:= tam div 2 +1;&lt;br /&gt;&lt;br /&gt; for fila:=1 to tam do begin&lt;br /&gt;    despl := 40 - tam - numColum div 2; { Posición en la pantalla }&lt;br /&gt;    write('':despl);&lt;br /&gt;  &lt;br /&gt;     if(fila &lt; mitad) then begin { Parte superior del rombo }&lt;br /&gt;       for j:=1 to numColum do begin&lt;br /&gt;          if (fila=1) or (fila=tam) or (j=1) or (j=numColum) then&lt;br /&gt;           write (carExt)&lt;br /&gt;          else write (carInt);&lt;br /&gt;       end;&lt;br /&gt;       writeln;&lt;br /&gt;       numColum:= numColum +2;&lt;br /&gt;      end&lt;br /&gt;      else&lt;br /&gt;       begin { Parte inferior del rombo }&lt;br /&gt;    &lt;br /&gt;       for j:=numColum downto 1 do begin&lt;br /&gt;          if (fila=1) or (fila=tam) or (j=1) or (j=numColum) then&lt;br /&gt;           write (carExt)&lt;br /&gt;          else write (carInt);&lt;br /&gt;       end;&lt;br /&gt;       writeln;&lt;br /&gt;       numColum:= numColum -2;&lt;br /&gt;       end&lt;br /&gt; end;&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;begin&lt;br /&gt; repeat&lt;br /&gt;   writeln('c Cuadrado');&lt;br /&gt;   writeln('t Triangulo');&lt;br /&gt;   writeln('r Rombo');&lt;br /&gt;   writeln('s Salir');&lt;br /&gt;   write('Intoduce una opción: ');&lt;br /&gt;   readln(opcUsuario);&lt;br /&gt;    case opcUsuario of&lt;br /&gt;     'c', 'C': Cuadrado;&lt;br /&gt;     't', 'T': Triangulo;&lt;br /&gt;     'r', 'R': Rombo;&lt;br /&gt;     's', 'S': finPrograma:=true;&lt;br /&gt;     otherwise finPrograma:=false;&lt;br /&gt;    end;&lt;br /&gt;  until (finPrograma);&lt;br /&gt;end.&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-6482487293385390620?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/6482487293385390620/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=6482487293385390620' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/6482487293385390620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/6482487293385390620'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2006/12/cuadrado-triangulo-rombo-en-pascal.html' title='Cuadrado triangulo rombo en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-5496639251329795550</id><published>2006-12-11T02:49:00.000-08:00</published><updated>2006-12-14T07:56:06.918-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='funciones'/><title type='text'>Números aleatorios en pascal</title><content type='html'>Generar números aleatorios en pascal.&lt;br /&gt;&lt;br /&gt;Esta función genera números aleatorios entre 0 y el valor&lt;br /&gt;de la constante RC. Para ello utiliza el valor de milisegundos&lt;br /&gt;del reloj del sistema.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;function Aleatorio: real;&lt;br /&gt;const RA = 536778;  RC = 50;&lt;br /&gt;var tiempo: TimeStamp; semilla: integer;&lt;br /&gt;begin  &lt;br /&gt; GetTimeStamp(tiempo);&lt;br /&gt; semilla := tiempo.MicroSecond;&lt;br /&gt; Aleatorio:= (semilla * RA) mod RC +1;&lt;br /&gt;end;  &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Nota: En algunos compiladores de windows la función no funciona bien con MicroSeond y&lt;br /&gt;hay que utilizar Second, en el gpc de linux funciona perfectamente.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-5496639251329795550?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/5496639251329795550/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=5496639251329795550' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5496639251329795550'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5496639251329795550'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2006/12/nmeros-aleatorios-en-pascal.html' title='Números aleatorios en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-436632989009836693</id><published>2006-12-11T02:34:00.000-08:00</published><updated>2007-01-18T08:11:37.142-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='matrices'/><title type='text'>Operaciones con matrices</title><content type='html'>&lt;span style="color: rgb(255, 0, 0);"&gt;Suma resta y multiplicación de matrices en pascal.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para el uso de estos procedimientos es necesario declarar el tipo&lt;br /&gt;tMatriz. Este tipo es un registro en el que f y c son las filas y columnas&lt;br /&gt;de la matriz y datos es una matriz de numeros reales.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;const&lt;br /&gt; N = 10;&lt;br /&gt;&lt;br /&gt;type&lt;br /&gt; tMatriz= record&lt;br /&gt; datos: array [1..N,1..N] of real;&lt;br /&gt;        f,c: 0..N;&lt;br /&gt;    end;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tarea: &lt;span style="color: rgb(255, 0, 0);"&gt;Suma de dos matrices&lt;/span&gt;&lt;br /&gt;El procedimiento recibe dos matrices y devuelve la matriz sumada.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;procedure Sumar(m1, m2: tMatriz; var resul: tMatriz);&lt;br /&gt;var i,j:integer;&lt;br /&gt;begin&lt;br /&gt;      if (m1.c = m2.c) and (m1.f = m2.f) then begin&lt;br /&gt;          resul.c:=m1.c;    { Crear Matriz resul del mismo rango que m1 y m2 }&lt;br /&gt;          resul.f:=m2.c;&lt;br /&gt;          for i:=1 to m1.c do&lt;br /&gt;    for j:=1 to m1.f do&lt;br /&gt;                        begin&lt;br /&gt;                         resul.datos[i,j]:= m1.datos[i,j] + m2.datos[i,j];&lt;br /&gt;                        end;&lt;br /&gt;          end&lt;br /&gt;       else writeln('No se pueden sumar matrices de diferente dimension');&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tarea:&lt;span style="color: rgb(255, 0, 0);"&gt; Resta de dos matrices&lt;/span&gt;&lt;br /&gt;El procedimiento recibe dos matrices y devuelve la matriz restada.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;procedure Restar(m1, m2: tMatriz; var resul: tMatriz);&lt;br /&gt;var i,j:integer;&lt;br /&gt;begin&lt;br /&gt;if (m1.c = m2.c) and (m1.f = m2.f) then begin&lt;br /&gt;resul.c:=m1.c;    { Crear Matriz resul del mismo rango que m1 y m2 }&lt;br /&gt;          resul.f:=m2.c;&lt;br /&gt;          for i:=1 to m1.c do&lt;br /&gt;                    for j:=1 to m1.f do&lt;br /&gt;                     begin&lt;br /&gt;                      resul.datos[i,j]:= m1.datos[i,j] - m2.datos[i,j];&lt;br /&gt;                     end;&lt;br /&gt;          end&lt;br /&gt;       else writeln('No se pueden restar matrices de diferente dimension');&lt;br /&gt;end;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tarea: &lt;span style="color: rgb(255, 0, 0);"&gt;Multiplicación dos matrices&lt;/span&gt;&lt;br /&gt;El procedimiento recibe dos matrices y devuelve la matriz multiplicada.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;procedure Multiplicar(m1, m2: tMatriz; var resul: tMatriz);&lt;br /&gt;var i,j:integer;&lt;br /&gt;begin&lt;br /&gt;        if (m1.c = m2.f) then begin&lt;br /&gt;          resul.c:=m1.f;    { Crear Matriz resul de rango apropiado para multiplicar }&lt;br /&gt;          resul.f:=m2.c;&lt;br /&gt;          for i:=1 to m1.c do&lt;br /&gt;                    for j:=1 to m1.f do&lt;br /&gt;                     begin&lt;br /&gt;                      resul.datos[i,j]:=resul.datos[i,j] + m1.datos[i,j] *&lt;br /&gt;m2.datos[i,columna];&lt;br /&gt;                     end;&lt;br /&gt;end&lt;br /&gt;       else writeln('No se pueden multiplicar matrices de esta dimension');&lt;br /&gt;end;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-436632989009836693?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/436632989009836693/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=436632989009836693' title='10 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/436632989009836693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/436632989009836693'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2006/12/operaciones-con-matrices.html' title='Operaciones con matrices'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-1080727528664403642</id><published>2006-12-10T06:58:00.000-08:00</published><updated>2006-12-14T04:29:11.859-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='uses'/><category scheme='http://www.blogger.com/atom/ns#' term='manual'/><title type='text'>Uses en pascal</title><content type='html'>&lt;span style="color: rgb(255, 0, 0);"&gt;USES. &lt;/span&gt; Palabra reservada de Pascal para incluir librerías.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;&lt;span style="font-weight: bold;"&gt;Definición:&lt;/span&gt; &lt;/span&gt;Una librería es que un conjunto de funciones propias de pascal o que&lt;br /&gt;nosotros mismo podemos hacernos.&lt;br /&gt;&lt;br /&gt;Todos los compiladores de Pascal vienen&lt;br /&gt;con unas librerías standar que traen funciones para trabajar con&lt;br /&gt;archivos, memoria, directorios, servicios del Dos, servicios de video,&lt;br /&gt;etc...&lt;br /&gt;&lt;br /&gt;Para incluir una o varias librerías hay que añadir al programa en la sección&lt;br /&gt;de uses: &lt;span style="font-style: italic; color: rgb(153, 153, 153);"&gt;USES Crt, Dos, Graph; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para más información sobre dónde colocar los ues visita:&lt;br /&gt;&lt;a href="http://aprender-pascal.blogspot.com/2006/12/esquema-de-un-programa-en-pascal.html"&gt;Esquema de un programa&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-1080727528664403642?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/1080727528664403642/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=1080727528664403642' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/1080727528664403642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/1080727528664403642'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2006/12/uses-en-pascal.html' title='Uses en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-5593100186271556804</id><published>2006-12-09T12:43:00.000-08:00</published><updated>2007-02-03T04:24:48.282-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='manual'/><title type='text'>Operadores en pascal</title><content type='html'>&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="font-weight: bold;"&gt;Operador de asignación.&lt;/span&gt; &lt;span style="color: rgb(0, 0, 0);"&gt;Asignación de valores en pascal:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Numero := 7;            {de tipo integer}&lt;br /&gt;Decimal := 7.5;         {de tipo real}&lt;br /&gt;Letra := ’a’;               {de tipo char }&lt;br /&gt;Cadena := ’Hola’;     {de tipo string}&lt;br /&gt;Cierto := trae;          {de tipo boolean}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;Operadores Aritméticos.&lt;/span&gt;  Se usan para realizar operaciones en pascal:&lt;br /&gt;&lt;br /&gt;a + b           Suma a y b&lt;br /&gt;a - b           Resta a y b&lt;br /&gt;a * b           Multiplica a y b&lt;br /&gt;a / b           División de a y b&lt;br /&gt;a div b        División entera de a y b&lt;br /&gt;a mod b      Resto de la división de a y b&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;Comparación.&lt;/span&gt; Para comparar elementos, devuelven true si es verdadero&lt;br /&gt;y sino false.&lt;br /&gt;&lt;br /&gt;a &lt;&gt; b    a es mayor que b&lt;br /&gt;a = b    a es igual que b&lt;br /&gt;a &gt;= b    a es mayor o igual que b&lt;br /&gt;a &lt;= b    a es menor o igual que b     a &lt;&gt; b  a es distinto de b&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;Operadores lógicos&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;OR     OR lógico            a OR b      Devuelve true si alguna de las dos es true&lt;br /&gt;AND   AND lógico         a AND b    Devuelve true únicamente si las dos son true&lt;br /&gt;&lt;br /&gt;AND_THEN                   a AND_THEN b   Lo mismo que el and lógico solo que si a no se cumple&lt;br /&gt;                                              no se comprueba la sentencia b.&lt;br /&gt;&lt;br /&gt;OR_ELSE                         a OR_ELSE b    Lo mismo que el or lógico solo que si  a es true&lt;br /&gt;                                                no se comprueba la sentencia b.&lt;br /&gt;&lt;br /&gt;NOT                             Niega una sentencia.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-5593100186271556804?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/5593100186271556804/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=5593100186271556804' title='3 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5593100186271556804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/5593100186271556804'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2006/12/operadores-en-pascal.html' title='Operadores en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-4850901332198878072</id><published>2006-12-09T12:31:00.000-08:00</published><updated>2006-12-12T05:46:08.953-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='manual'/><category scheme='http://www.blogger.com/atom/ns#' term='variables'/><title type='text'>Variables en pascal</title><content type='html'>Para declarar variables en pascal se usa la siguiente instrucción:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic;"&gt;Nombre:tipo&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;Los tipos mas comnunes de variables en pascal son:&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;&lt;br /&gt;1.- Enteras.&lt;/span&gt;&lt;br /&gt;Integer:    -32768    a    32767   (más utilizado)&lt;br /&gt;Word:       0    a   65535&lt;br /&gt;Shortint:   -128   a   127&lt;br /&gt;Byte:        0   a   255&lt;br /&gt;Longint:   -2*10.9   a   2*10.9&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;Ejemplo: var entero:integer value 0;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;2.-  Decimales.&lt;/span&gt;&lt;br /&gt;Real     (más utilizado)&lt;br /&gt;Single&lt;br /&gt;Double&lt;br /&gt;Extended&lt;br /&gt;Comp&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;Ejemplo: var decimal:real value 3.45;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;3.- Caracteres.&lt;/span&gt;&lt;br /&gt;Char('c')&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;Ejemplo: var caracter:char value 'c';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;4.- Cadena de caracteres.&lt;/span&gt;&lt;br /&gt;String ('máx. 255 caracteres')&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;Ejemplo: var cadena:string value 'Cadena de caracteres';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;5.- Boleanos.&lt;/span&gt;&lt;br /&gt;Boolean que tiene dos únicos valores: True/False&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(102, 102, 102);"&gt;Ejemplo: var booleano:boolean value true;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-4850901332198878072?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/4850901332198878072/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=4850901332198878072' title='12 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4850901332198878072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4850901332198878072'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2006/12/variables-en-pascal.html' title='Variables en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>12</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1138029064281999405.post-4513427362487326399</id><published>2006-12-09T08:57:00.000-08:00</published><updated>2007-02-03T04:25:32.332-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='manual'/><title type='text'>Esquema de un programa en pascal</title><content type='html'>&lt;pre&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;Esquema.&lt;/span&gt;&lt;/span&gt; Un programa en pascal se divide en las&lt;br /&gt;siguientes secciones:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;1&lt;/span&gt; Nombre del programa&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;2&lt;/span&gt; Uses&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;3&lt;/span&gt; Definición de tipos globales&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;4&lt;/span&gt; Definición de constantes globales&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;5&lt;/span&gt; Definición de variables globales&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;6&lt;/span&gt; Procedimientos / Funciones&lt;br /&gt;- Declaración&lt;br /&gt;- Tipos locales&lt;br /&gt;- Constantes locales&lt;br /&gt;- Variables locales&lt;br /&gt;- Código del procedimiento/función&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;7&lt;/span&gt; Código principal&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;span style="font-weight: bold;"&gt;Ejemplo de un programa en pascal.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;program  NombrePrograma;&lt;br /&gt;uses  crt, dos;          {incluye}&lt;br /&gt;const  PI=3.1415;         {constante pi}&lt;br /&gt;&lt;br /&gt;var  numero:integer;  {Número entero}&lt;br /&gt;decimal:real; {Número real}&lt;br /&gt;letra:char; {Tipo Caracter}&lt;br /&gt;cadena:string; {Tipo Cadena}&lt;br /&gt;cierto:bolean {Tipo boolenao: True o false}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;{ Si ya conoces otros lenguajes de programación&lt;br /&gt;como C, begin equivale a "{" y end a "}" las llaves en C }&lt;br /&gt;begin&lt;br /&gt;________ {Cuerpo del programa}&lt;br /&gt;________&lt;br /&gt;end.          {El punto indica que es el fin del programa}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1138029064281999405-4513427362487326399?l=aprender-pascal.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aprender-pascal.blogspot.com/feeds/4513427362487326399/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1138029064281999405&amp;postID=4513427362487326399' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4513427362487326399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1138029064281999405/posts/default/4513427362487326399'/><link rel='alternate' type='text/html' href='http://aprender-pascal.blogspot.com/2006/12/esquema-de-un-programa-en-pascal.html' title='Esquema de un programa en pascal'/><author><name>Ping</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
