jueves, diciembre 29, 2005

Prog. 1 - Instrucciones para obtener las claves de las prácticas

Para corregir la práctica 1: Abrimos el entorno M2 y desde la misma carpeta donde tenemos la práctica del rombo (es decir desde c:\M2\ALUMMNO\TRABAJOS) ejecutamos el programa crcuno, para ello, en la línea de comandos escribimos "crcuno rombo". Esto ejecutará el programa de corrección de la práctica 1. El resultado lo obtenemos dentro de la carpeta C:\M2\ALUMNO\RESULTA. Si ha sido correcto, dentro del archivo "Claveuno" nos aparecerá una cabecera con este aspecto:
(**********************************************
NOMBRE : #Alejandro #
* PRIMER APELLIDO : #XXXX #
* SEGUNDO APELLIDO: #XXXXX #
* DNI : #XXXXXXXXX #
* CLAVE: #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX#
*********************************************)
la cuál tenemos que incluir en la cabecera de la práctica 2.

Para corregir la segunda: hacemos los mismos pasos que para la primera, pero ejecutando el programa "crcdos".Esto creará un archivo de texto llamado "clavefin" (si está correcta, claro) en el cuálse incluyen las 3 claves necesarias para el envío de las prácticas.
Para enviar las claves: Hay que entrar en la web de la asignatura
(http://www.uned.es/infor-1-programacion-I/)
y en el apartado "Prácticas" hay un formulario donde introduciréis las claves y vuestro DNI.En la web podréis descargar el enunciado de la 3ª práctica, cuya fecha de entrega es el 13 de enero.
Según la guía, las prácticas son voluntarias, pero hacerlas supone el requerimiento de 2 preguntas menos en el test para aprobarlo y la obtención de hasta 1 punto a sumar en lanota del examen.
NOTA: Los progamas de corrección estásn en C:\M2\SISTEMA\AUTOCRC, si no los tenéis, descargarlos de esnips.
Ánimo y mucha suerte con esos aprobados.

lunes, diciembre 05, 2005

Álgebra - Nuevo modelo de examen para gestión

Como sabéis, a los de gestión nos han cambiado el modelo de examen. Ya no es un tipo test, se trata de que hay que responder a 5 cuestiones y a un problema, el cuál hay que desarrollar. No sé cómo puntúan exactamente, pero supongo que así: Cada pregunta puntúa 1,4 y el problema 3. Lógicamente, no descuentan por los errores. Os paso las preguntas y a la vez, lo cuelgo en Esnips. En el foro virtual tenéis más información.
Examen Tipo - Febrero 2006:
Ejercicio 1:
En el conjunto de pares E={(a,b)R2/a<0}, se define la ley de composición interna: (a,b)+(c,d)=(ac, b+d). De entre los siguientes opciones, elíjanse las correctas si existen: a): (E,+) no tiene elemento neutro. b): (0, 0) es el neutro de (E,+). c): (1, 0) es el neutro de (E, +).
Ejercicio 2:
Sabiendo que A, B son dos matrices regulares, y M=A.B. De entre las siguientes afirmaciones, elíjanse las que son correctas: a): B-1=M-1.A b): A-1=M-1.B c): M-1=A-1.B-1
Ejercicio 3:
Sea M2x2 el espacio vectorial de matrices realies cadradas de orden 2 y f: M --> M la aplicación lineal definida por f(A)=Am-MA, siendo M=[1 3, 0 2]. Escríbanse una base del núcleo de la aplicación dada y su dimensión
Ejercicio 4:
Escríbase el valor del determinante de orden n cuyas filas son: (0, a, a, ..., a) (a, 0, a, ..., a) (a, a, 0, ..., a) .... (a, a, a, ..., 0).
Ejercicio 5:
Escríbase una base ortonormal para el subespacio F de R3 generado por: {(1, 0, 1), (1, 1, 1), 2, 1, 2)}.
Ejercicio a desarrollar:
Sean V y W los siguientes subespacios de R3: V= {(x, y, z)e R3/x=z}; W={(x, y, z)e R3/x=0, y=0}
a): Elíjanse vectores de V y de W de modo que el conjunto elegido sea una base de R3 y haga un gráfico de los vectores elegidos.
b): Explíquese qué son coordenadas de un vector, y si se ha encontrado una base en el apartado a, calcúlense las coordenadas del vector (2, 3, 5) respecto a dicha base.
c): Explíquese qué se entiende por expresión matricial de un cambio de base, aplíquese para obtener las coordenadas de (2, 3, 5) respecto de la base elegida.

En fin, suerte a tod@s.

viernes, noviembre 25, 2005

Prog. 1 - Errores en el libro de texto

Un compañero del foro ha encontrado las siguientes erratas en el libro de texto de la asignatura. Son faciles de encontrar pero os aviso para no perder demasiado tiempo:
Tema 9: Paginas 240-242, programa calendario. En el procedimiento "SumarDias" se asigna 0 a la variable sumaDias en dos ocasiones, lo que provoca un error pues el rango al que esta referenciado es "RangoDias" =[1..31]. Para solucionarlo, o trabajamos dentro del procedimiento con INTEGER o asignamos a "RangoDias" el intervalo [0..31].
Tema 10: Paginas 272-274, programa mostrador. El tipo subrango "Plazas" se define [1..Aforo], pero debe ser [0..Aforo] pues de lo contrario nos dara error al intentar asignar 0 a las variable k en el procedimiento "BuscarPlazas".

jueves, noviembre 24, 2005

Curso de Redes Gratuito

He leído en las news que hay un curso de redes bastante completo y que no cuesta un céntimo. Si queréis más información, os podéis dirigir a:

MAFOREM
Dirección: Sebastián Herrera, 12-14
28045 Madrid
Teléfono: 91 468 02 58
Fax: 91 528 03 43
Correo electrónico: maforem@maforem.org
Metro: Embajadores
RENFE: Embajadores
AUTOBUSES: 27, C

miércoles, noviembre 23, 2005

Prog1 - Generador de exámenes

Es realmente útil esta aplicación con la que puedes generar tus propios exámenes para practicar la teoría de Modula-2. Es un generador de test en el que puedes elegir los temas que quieres que te pregunte o cargar exámenes de años anteriores. Espero que os sirva para sacar muy buena nota! Lo he colgado en esnips.

viernes, noviembre 11, 2005

Programación 1 - Prácticas

Os dejo las prácticas que circulan por la red. La práctica 1 no es correcta del todo, pero podeis echarle un ojo mientras la rehago. Os aconsejo que intentéis hacerlas por vuestra cuenta antes de mirarlas aquí, ya que otra cosa sería engañaros a vosotros mismos.
Las he puesto por si alguien se atasca o por si alguien no tiene el suficiente tiempo.
Y están abajo del todo en este blog, para que no las veais nada más entrar.

El enunciado de la tercera está en el siguiente link:
http://www.uned.es/infor-1-programacion-I/practicas/PracticaTercera05_06.pdf

Ánimo y suerte.

viernes, octubre 14, 2005

Programación 1 - Instalación del compilador Modula-2

Se han detectado unos problemas con el compilador en XP. Si se hace la instalación estándar, al invocar el mc desde MS-2, da error y lo mismo cuando se compila un programa. Bien, para resolver estos errores, basta con instalar de nuevo, diciendo que NO queremos la instalación estándar y que la ruta de instalación sea C:\. Windows XP instala por defecto en C:\Documents and Settings\Usuario\M2, y esta ruta, al no ser de MS-2 provoca los errores comentados. Os recuerdo que el programa lo encontrareis en el cd de la guía, junto al libro de prácticas y en la web de la asignatura.

jueves, octubre 13, 2005

News de la Uned

Como ya sabes, existe un foro en la Uned, muy frecuentado por los alumnos, donde puedes lanzar una pregunta a los compañeros o donde, simplemente, puedes pasarte para leer todos los comentarios (normalmente son soluciones a dudas) que hacen. Para su uso, debes tener instalado el Outlook Express.
En el siguiente link encontrarás información sobre cómo funciona, sus reglas, la forma de instalarlo, etc.:
http://www.uned.es/webuned/news/informatica/index.htm

lunes, octubre 10, 2005

¿Qué cambiarías de la Uned?

La UNED es una organización compleja, sobre todo por el grado de responsabilidad que tiene a nivel nacional. Pero todo se puede mejorar. Entre todos, vamos a enumerar las cosas que no nos gustan o que cambiaríamos de la UNED, a ver si poco a poco, nos van haciendo caso y logramos que sea lo más aceptable posible por tod@s.
1.- La publicación de resultados de exámenes tendría que ser inmediata a la realización de los mismos.
2.- La publicación de las notas, siendo la mayoría exámenes tipo test, debería de ser mucho más rápida también.
3.- El precio de cada crédito es abusivo. La UNED es una universidad cara, para los pocos servicios que ofrece.
4.- También hay que mejorar y mucho el nivel de la mayoría de los "equipos docentes", que de docentes tienen bien poco.
5.- Y el nivel de los tutores, ya que muchos no están a la altura.
6.- La calidad de los libros y su precio.
7.- Siempre he echado de menos unas buenas estadísticas de cada asignatura, con su nº medio de matriculados, nivel de aprobados, comentarios de ex-alumnos, etc etc...
8.- Exigiría exclusividad a los equipos docentes (entiendase: no a los tutores que curran tres horas) para que de verdad hicieran algo salvo plantear un temario y al final corregir exámenes ¿en medio qué? También pediría mas metodología didáctica, en definitiva: más docencia (y más decencia)
9.- Yo no cambiaría, sino prohibiría, que los profesores publicaran en sanz y torres, menuda editorial, no pasa unas mínimas normas de calidad.
10.- ¿Dónde está la labor de investigación del profesorado?

viernes, octubre 07, 2005

¿Cómo planificas tú el estudio?

Sería interesante conocer los trucos que usas a la hora de estudiar, cómo te planificas el cuatrimestre, cómo preparas los exámenes, asistencia a tutorías, etc.
Yo, por ejemplo, me hago cada cuatrimestre un horario con los temas que tengo que estudiar cada semana, dejando las dos últimas semanas antes del examen para estudiar a fondo. Así sé si tengo que apretar o si puedo relajarme un poco durante el cuatrimestre. Para mí es muy importante mirar exámenes de años anteriores, por dos motivos: 1 Muchas veces repiten alguna pregunta, 2 Para conocer la estructura y el grado de dificultad de los mismos.

miércoles, octubre 05, 2005

Uned en el extranjero

Si tienes experiencia de haber estudiado a través de la UNED en un país extranjero, por favor, deja tu opinión para que todos sepamos cómo funciona la UNED fuera de nuestras fronteras.

lunes, octubre 03, 2005

¿Sabías qué...?

- Los créditos ofertados en los cursos de enseñanza continua (matrícula abierta) no nos los convalidan para nuestra carrera?
- Puedes conseguir algunos créditos con cursos que se hacen en verano? Infórmate en la web de la Uned.
- Si obtienes una Matrícula de Honor, los créditos equivalentes a esa asignatura, son gratis para la próxima matrícula? Lo malo es que, aun sacando un 10 en la asignatura, pueden no darte la Matrícula de Honor, alegando que "el examen era muy fácil" (Hablo por experiencia propia).
- Hay un foro para alumnos de la Uned llamado News en el que se intercambia todo tipo de información? Próximamente pondré cómo acceder al mismo.
- En los exámenes de ciertas asignaturas, te dejan llevar el libro? En la guía pone claramente el material permitido en el examen y, ojo, porque a veces no coincide lo que pone en la guía con lo que dice la cabecera del examen...
- Si tienes alguna duda en el examen, y el tribunal que te toque no te la sabe solucionar, puedes hacer que llamen al equipo docente que está en Madrid?
- Los créditos de las asignaturas de las que te matriculas por segunda, tercera..., valen más caros cada vez?
- Sólo corre convocatoria si te presentas en septiembre?
- Tienes 5 convocatorias más la de gracia?
- Hay una convocatoria en diciembre para aquéllos que les quede cierto números de créditos para terminar la carrera?
- Hay tutores que dan clases y otros se limitan a presentarse y si no tienes duda, se marchan?
- Las clases de informática son sólo los martes y los jueves?
- En las news hay compra-venta de libros usados?
- La matrícula se puede hacer por internet?
- Las notas llegan a tardar un mes en publicarse? (y eso que algunos exámenes son de tipo test)

¿Qué salidas tiene nuestra carrera?

La gente está muy quemada porque, después de estudiar una carrera tan compleja como una ingeniería, no encuentran el trabajo que desean. Si piensas que esta carrera sirve para diseñar webs, quizás estés equivocado... Entra y da tu opinión...

Información General

1.- En la siguiente página encontrarás exámenes de otros años, algunos de ellos corregidos
http://www.calatayud.unedaragon.org/examenes/Deposito_Examenes/Examenes.asp
2.- Un compañero de las news ha tenido la genial idea de "colgar" documentación muy interesante en un espacio dentro de http://esnips.com/ el usuario y contraseña necesarios, pídemelos con un mail.
3.- Mi centro asociado es el de Elche, en su página puedes ver, entre otras cosas, un listado de profesores y los horarios:
http://www.uned.es/ca-elche/
4.- Y en la web de la Uned encontrarás mucha más información general.
www.uned.es
5.- Webs interesantes: Son las de compañeros que han dedicado parte de su esfuerzo en proporcionarnos documentación como exámenes, apuntes, etc...
http://www.utomde.com/
http://www.endjona.com/
http://gutxo.blogspot.com
http://www.etsimo.uniovi.es/~antonio/uned/cuatri1.html
http://wainu.ii.uned.es/asig/lista_asig-IT.php
http://www.uned-informatica.com/
6.- Es recomendable ver precios y estado de publicaciones de los libros de nuestras asignaturas. Todo esto lo podeis ver en la web de la editorial:
http://www.sanzytorres.com/
7.- La guía del curso también está en la red...
http://www.ii.uned.es/gestion/asignatura_ges.html
8.- Una buena web de matemáticas a todos los niveles:

Informática General

Links a Webs relacionadas con la informática en general, de las que he sacado mucho provecho. Poco a poco iré poniendo más.

1.- Diseño Web:
http://www.desarrolloweb.com/
http://www.webestilo.com/
http://www.solotuweb.com/
http://www.cristalab.com/
http://www.flashkit.com
http://www.php.net
http://www.multimedia.com
http://www.fcomoreno.net/
2.- Programación:
http://www.canalvisualbasic.net
http://www.elguruprogramador.com.ar/inicio/default.asp
http://www.elguille.info/
http://www.gemu.combomix.org/?mid=1
3.- Herramientas:
- Pizarra virtual (crea tu dibujo y envíalo a través de esta web):
http://www.ieschandomonte.edu.es/~ohermlope/Chandomonte/
- Para saber tu Ip:
http://www.whatismyipaddress.com/
- Para las estadísticas de tu web:
http://www.webstats4u.com/
- Para crear tu blog gratis:
http://www.blogger.com
- Una hoja de cálculo virtual (Viva el software libre!!):
http://www.numsum.com/
- También está el procesador de textos:
http://www.writely.com/
- Tu disco duro virtual (1Gb por cada dirección de correo):
http://esnips.com
- Un buen antitroyano:
http://www.emsisoft.com/en/software/free/
- Crea una fuente desde un manuscrito:
http://www.fontifier.com/template.html
- Conversor de vídeo a flv (formato usado por Flash):
http://rivavx.com/?downloads (descargar el Riva encoder)
4.- Tutoriales:
- Tutorial de 3d max studio:
http://www.unav.es/cti/manuales/3DStudioMax/indice.html
- Tutoriales varios:
http://www.aulaclic.es/
http://www.solotutoriales.com/computadores/?id=0306
- Linux
http://es.tldp.org/Tutoriales/TutorialLinux/TutorialLinux/
http://sunsite.unam.mx/linux.html

domingo, octubre 02, 2005

Práctica 2 - Calendario

(********************************************* * NOMBRE : #Alejandro # * PRIMER APELLIDO : #XXXX # * SEGUNDO APELLIDO: #XXXXX # * DNI : #XXXXXXXXX # * CLAVE: #XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX# *********************************************) MODULE Calendario; (*-- PARTE DECLARATIVA DE LA APLICACIÓN --*) FROM InOut IMPORT WriteString, Write, WriteLn, ReadCard, WriteCard; VAR mes, anno, diasMes, columDia : CARDINAL; PROCEDURE ImprimirLiterales (n : CARDINAL); (*-- PROCEDIMIENTO PARA MOSTRAR LA PRIMERA PARTE DEL CALENDARIO, EJEMPLO: NOVIEMBRE 2005 =========================== LU MA MI JU VI SA DO =========================== TOMA COMO ARGUMENTO EL MES QUE SE QUIERE MOSTRAR --*) PROCEDURE CaracterIgual; (* Este procedimiento puro es sólo para la linea de carácteres '=' *) VAR j : CARDINAL; BEGIN FOR j := 1 TO 27 DO Write ('='); END; END CaracterIgual; CONST espacios = 22; (* Espacios en blanco que restan al descontamos el año *) VAR i, digitos : CARDINAL; BEGIN CASE n OF 1 : WriteString ("ENERO"); digitos := 5; diasMes := 31; 2 : WriteString ("FEBRERO"); digitos := 7; diasMes := 28; 3 : WriteString ("MARZO"); digitos := 5; diasMes := 31; 4 : WriteString ("ABRIL"); digitos := 5; diasMes := 30; 5 : WriteString ("MAYO"); digitos := 4; diasMes := 31; 6 : WriteString ("JUNIO"); digitos := 5; diasMes := 30; 7 : WriteString ("JULIO"); digitos := 5; diasMes := 31; 8 : WriteString ("AGOSTO"); digitos := 6; diasMes := 31; 9 : WriteString ("SEPTIEMBRE"); digitos :=10; diasMes := 30; 10 : WriteString ("OCTUBRE"); digitos := 7; diasMes := 31; 11 : WriteString ("NOVIEMBRE"); digitos := 9; diasMes := 30; 12 : WriteString ("DICIEMBRE"); digitos := 9; diasMes := 31; END; FOR i := digitos TO espacios DO Write (' '); END; WriteCard (anno, 4); WriteLn; CaracterIgual; WriteLn; WriteString ("LU MA MI JU VI SA DO"); WriteLn; CaracterIgual; WriteLn; END ImprimirLiterales; PROCEDURE ImprimirCalendario; (*-- PROCEDIMIENTO PURO QUE IMPRIME LA SEGUNDA PARTE DEL CALENDARIO --*) VAR i, j, puntos : CARDINAL; BEGIN columDia := Zeller (mes, anno); IF columDia = 0 THEN columDia := 7; END; IF mes = 2 THEN IF Bisiesto (anno) THEN diasMes := 29; END; END; CASE columDia - 1 OF 1: WriteString (" . "); 2: WriteString (" . . "); 3: WriteString (" . . . "); 4: WriteString (" . . . . "); 5: WriteString (" . . . . . "); 6: WriteString (" . . . . . . "); ELSE END; FOR i:= 1 TO diasMes DO IF (columDia = 7) AND (i < columdia =" 7)" i =" diasMes)" columdia =" 5" d =" 1;" 4 =" 0)" 100 =" 0)" 400 =" 0)">= 1601) AND (anno <= 3000) AND (mes >=1) AND (mes <= 12) THEN (* Filtro para las condiciones que nos piden *) (*-- IMPRIMIMOS EL CALENDARIO --*) ImprimirLiterales (mes); ImprimirCalendario; END; END Calendario.

Práctica 1. Crear un rombo.

(**************************************************** *NOMBRE: #Alejandro# *PRIMER APELLIDO: #XXXX# *SEGUNDO APELLIDO: #XXXXX# *DNI: #XXXXXXXX# ****************************************************) MODULE Rombo; FROM InOut IMPORT WriteString, WriteLn, Write, ReadInt; VAR nLinea : INTEGER; (* fila *) columna : INTEGER; (* columna *) sumFilCol : INTEGER; (* suma de filas y columnas *) lado : INTEGER; (* lado del rombo *) eje : INTEGER; (* eje para marcar el final de fila *) espacios : INTEGER; (* espacios en blanco *) esp1, esp2, esp3, esp4, esp5 : INTEGER; (* espacios del caracter '@' *) BEGIN
(*--Leer dato desde consola. --*)
WriteString ("Lado del rombo? "); ReadInt (lado); WriteLn; WriteLn;
(*-- Inicializamos los contornos '@' --*)
esp1 := lado + 1; esp2 := esp1 + 4; esp3 := esp2 + 4; esp4 := esp3 + 4; esp5 := esp4 + 4;
(*-- Algoritmo para imprimir el rombo --*)
(*-- SI EL DATO INTRODUCIDO ESTA ENTRE 1 Y 20 Y ES PAR MOSTRAMOS ESTE ALGORITMO --*)
IF (lado > 0) AND (lado < 2 =" 0)" href="mailto:">'@', o si la suma es número par se imprime '.' o si la suma es número impar se imprime 'o' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('.'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('o'); END; END; (*-- CUADRANTE SUPERIOR DERECHO --*) eje := (lado +1) - nLinea; (* el eje determina el final de la escritura por pantalla *) FOR columna := lado - 1 TO eje BY -1 DO (* recorremos todas las columnas hasta el eje *) (*-- Si la suma de la fila y columna es un contorno se imprime '@', o si la suma es número par se imprime '.' o si la suma es número Impar se imprime 'o' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('.'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('o'); END; END; WriteLn; (* un salto de linea par el final de cada fila *) END; (*-- CUADRANTES INFERIORES --*) FOR nLinea := lado - 1 TO 1 BY - 1 DO (* filas del cuadrante *) eje := lado; (* el eje determina el final de la escritura por pantalla *) columna := lado - nLinea; (* primer columna *) (*-- Preparamos los espacios en blanco --*) FOR espacios := 1 TO columna DO Write (' '); END; (*-- CUADRANTE INFERIOR IZQUIERDO --*) FOR columna := (lado + 1) - nLinea TO eje DO (* recorremos todas las columnas hasta el eje *) (*-- Si la suma de la fila y columna es un contorno se imprime '@', o si la suma es número par se imprime '.' o si la suma es número impar se imprime 'o' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('.'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('o'); END; END; (*-- CUADRANTE INFERIOR DERECHO --*) eje := (lado +1) - nLinea; (* el eje determina el final de la escritura por pantalla *) FOR columna := lado - 1 TO eje BY -1 DO (* recorremos todas las columnas hasta el eje *) (*-- Si la suma de la fila y columna es un contorno se imprime '@', o si la suma es número par se imprime '.' o si la suma es número impar se imprime 'o' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('.'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('o'); END; END; WriteLn; END; (*-- SI EL DATO INTRODUCIDO ESTA ENTRE 1 Y 20 Y ES IMPAR MOSTRAMOS ESTE ALGORITMO --*) ELSIF (lado > 0) AND (lado < href="mailto:">'@', o si la suma es número par se imprime 'o' o si la suma es número impar se imprime '.' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('o'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('.'); END; END; (*-- CUADRANTE SUPERIOR DERECHO --*) eje := (lado +1) - nLinea; (* el eje determina el final de la escritura por pantalla *) FOR columna := lado - 1 TO eje BY -1 DO (* recorremos todas las columnas hasta el eje *) (*-- Si la suma de la fila y columna es un contorno se imprime '@', o si la suma es número par se imprime 'o' o si la suma es número Impar se imprime '.' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('o'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('.'); END; END; WriteLn; (* un salto de linea par el final de cada fila *) END; (*-- CUADRANTES INFERIORES --*) FOR nLinea := lado - 1 TO 1 BY - 1 DO (* filas del cuadrante *) eje := lado; (* el eje determina el final de la escritura por pantalla *) columna := lado - nLinea; (* primer columna *) (*-- Preparamos los espacios en blanco --*) FOR espacios := 1 TO columna DO Write (' '); END; (*-- CUADRANTE INFERIOR IZQUIERDO --*) FOR columna := (lado + 1) - nLinea TO eje DO (* recorremos todas las columnas hasta el eje *) (*-- Si la suma de la fila y columna es un contorno se imprime '@', o si la suma es número par se imprime 'o' o si la suma es número impar se imprime '.' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('o'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('.'); END; END; (*-- CUADRANTE INFERIOR DERECHO --*) eje := (lado +1) - nLinea; (* el eje determina el final de la escritura por pantalla *) FOR columna := lado - 1 TO eje BY -1 DO (* recorremos todas las columnas hasta el eje *) (*-- Si la suma de la fila y columna es un contorno se imprime '@', o si la suma es número par se imprime 'o' o si la suma es número impar se imprime '.' --*) sumFilCol := nLinea + columna; IF (sumFilCol = esp1) OR (sumFilCol = esp2) OR (sumFilCol = esp3) OR (sumFilCol = esp4) OR (sumFilCol = esp5) THEN Write ('@'); ELSIF sumFilCol MOD 2 = 0 THEN Write ('o'); ELSIF sumFilCol MOD 2 # 0 THEN Write ('.'); END; END; WriteLn; END; END; END Rombo.