Lecciones impartidas en clase (curso 2025/26)

Introducción

Esta lección contiene un índice de las lecciones que estoy impartiendo en clase durante el primer trimestre (y parte del segundo) del curso 2025/26, así como los ejercicios que han realizado los alumnos.

Para elaborar este índice utilizo como base las guías de estudio que ofrezco a mis alumnos de la modalidad semipresencial en la plataforma Moodle de la Conselleria de Educación. El trabajo propuesto a estos alumnos es el mismo que siguen en clase mis alumnos de la modalidad presencial, aunque la distribución temporal no sea exactamente la misma.

La información se ofrece distribuida en semanas, ya que es así como está organizada la modalidad semipresencial.

También se pueden consultar las lecciones impartidas en el curso pasado, 2024/25.

IAW Semana S01: del 08/09/25 al 14/09/25

Presentación General

La primera parte del curso estará dedicada a la programación en PHP. Los apuntes y ejercicios de esta parte están disponibles en la web: ../

La página principal de los apuntes da acceso a todas las lecciones (que iré modificando a lo largo del curso). Cada semana os pondré aquí enlaces a las lecciones que quiero que leáis y a los ejercicios que quiero que hagáis.

Presentación del curso Programación web en PHP

  1. Leed la lección Presentación de los apuntes.

IAW Semana S02: del 15/09/25 al 21/09/25

¿Qué es PHP?

  1. Leed la lección Lenguajes de programación.
  2. Leed la lección Qué es PHP.

Instalación de XAMPP

  1. Leed la lección Qué es XAMPP.
  2. Leed la lección Instalación de XAMPP en Windows.
  3. Descargad XAMPP 8.2.12 (150 MB).
  4. Instalad XAMPP 8.2.12 de acuerdo con la lección Instalación de XAMPP en Windows.

Configuración de Apache y PHP

  1. Leed la lección Configuración de Apache y PHP.

    En esta lección se tratan dos puntos muy importantes:

    1. los Alias de Apache, que utilizaremos durante todo el curso.
    2. las opciones de configuración de PHP, que deben modificarse como se indica en la lección para que el comportamiento sea el mismo en los ordenadores de todos los alumnos.
  2. Para familiarizaros con el fichero de configuración de Apache, haced los ejercicios guiados Apache (1). El último ejercicio corresponde a la configuración de Apache recomendada para el curso.

    Podéis consultar unas posibles soluciones de estos ejercicios.

  3. [Opcional] Para practicar más la creación de Alias en Apache, podéis hacer los ejercicios 1 y 2 de Apache (2).

    Podéis consultar unas posibles soluciones de estos ejercicios.

  4. Configurad php.ini de acuerdo con la lección Configuración de Apache y PHP.
  5. [Opcional] Para ver más opciones de configuración de Apache, podéis leer la lección Configuración de Apache y PHP.

IAW Semana S03: del 22/09/25 al 28/09/25

Visual Studio Code

Este curso vamos a utilizar Visual Studio Code (VSCode) como editor para PHP. A lo largo del curso iré completando y ampliando estas lecciones dedicadas a VSCode

Configuración de PHP

  1. Para familiarizaros con el fichero de configuración de PHP (php.ini), haced los ejercicios guiados PHP. El último ejercicio corresponde a la configuración de PHP recomendada para el curso.

IAW Semana S04: del 29/09/25 al 05/10/25

Repaso de LMSGI

Cómo hacer los ejercicios (1)

  1. Leed la lección Cómo realizar los ejercicios
  2. Leed la lección Ejemplos de resolución de ejercicios - Sin formularios

En la primera parte del curso de PHP vamos a hacer un pequeño repaso general de PHP, tocando los temas vistos el año pasado en el módulo LMSGI: variables, operaciones, if ... else .. y for ... además de las matrices, un tipo de variable que permite almacenar varios datos distintos en una sola variable. Esta parte la he llamado PHP, sin formularios porque las páginas no contienen formularios, por lo que el usuario no puede proporcionar información a los programas. Para que cada vez que se ejecuten los programas los resultados sean distintos, recurriremos a números aleatorios.

Primeras páginas en PHP

  1. Leed la lección Primeras páginas en PHP
  2. Leed la lección Cadenas
  3. Leed la lección Guía de estilo.

    El estilo que se recomienda en esta lección es el que tenéis que utilizar en vuestros programas.

  4. Haced los ejercicios 1 a 3 de Primeras páginas.

    Estos ejercicios se pueden hacer de muchas maneras, incluyendo más o menos líneas en cada uno de los fragmentos PHP o HTML.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

  5. Haced los ejercicios 4 a 8 de Primeras páginas.

    En estos ejercicios se necesita la función rand() que genera números aleatorios que se comenta en la lección Operaciones aritméticas (apartado Números aleatorios).

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

Variables

  1. Leed la lección Variables 1

    Esta semana no os pido hacer ejercicios con variables, pero quiero que leáis esta lección.

IAW Semana S05: del 06/10/25 al 12/10/25

⚠️ Las páginas de ejercicios con número 0 (por ejemplo, Variables (0) o If else (0)) son ejercicios básicos, pensados para alumnos que no hayan hecho nada de programación. En la lista de actividades a realizar cada semana los marcaré con la marca [básico] para que sepáis que podéis hacerlos si lo consideráis necesario, pero si simplemente leyendo los enunciados tenéis claro que sabéis hacerlos, no es necesario perder el tiempo con ellos.

Repaso de LMSGI

  1. Los colores que aparecen en los diferentes ejercicios suelen estar expresados en formato RGB, HWB o como nombres de colores. En la lección CSS Colores de los apuntes de HTML/CSS podéis repasar estos formatos.
  2. Las imágenes que aparecen en los diferentes ejercicios pueden ser archivos o imágenes SVG insertadas en las páginas web. En la lección SVG (1) de los apuntes de HTML/CSS podéis repasar qué es SVG. En la lección Formas básicas SVG y SVG Texto podéis repasar las formas básicas y la creación de texto en SVG.
  3. Para practicar con las coordenadas de las imágenes SVG, podéis hacer los ejercicios interactivos Gráficos SVG - Coordenadas de los apuntes de Python (haced los ejercicios de nivel 1, 2 y 3, los ejercicios de nivel 4 no son necesarios). Para practicar con el atributo viewBox de la etiqueta svg, podéis hacer los ejercicios interactivos Gráficos SVG - viewBox de los apuntes de Python.
  4. En algunos ejercicios se necesita escribir fórmulas que corresponden al término general de una sucesión aritmética (que vimos en la parte final de Python en LMSGI). Podéis encontrar información en las lecciones de los apuntes de Informática Sucesiones aritméticas y Ejercicios tipo test de sucesiones aritméticas.

Variables y operaciones

  1. Leed los apartados de la lección Tipos de variables: enteras y decimales.
  2. Leed la lección Operaciones aritméticas.
  3. [básico] Haced los ejercicios Variables 0.
    1. Estos ejercicios son ejercicios muy básicos que he añadido este curso para alumnos que no han dado la parte de programación del módulo LMSGI de 1º de ASIR. Hacedlos si lo consideráis conveniente.
    2. En estos ejercicios se puede utilizar la función rand() que genera números aleatorios y que se comenta en el apartado Números aleatorios de la lección Operaciones aritméticas.
    3. Los valores aleatorios se utilizan en varios lugares de la página web, por lo que se deben guardar en una variable y después utilizar la variable el número de veces necesario. En algunos ejercicios también es necesario hacer cálculos adicionales con esas variables.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

  4. Haced los ejercicios Variables 1.
    1. En estos ejercicios se puede utilizar la función rand() que genera números aleatorios y que se comenta en el apartado Números aleatorios de la lección Operaciones aritméticas.
    2. Los valores aleatorios se utilizan en varios lugares de la página web, por lo que se deben guardar en una variable y después utilizar la variable el número de veces necesario. En algunos ejercicios también es necesario hacer cálculos adicionales con esas variables.
    3. Los dados y las cartas que aparecen en algún ejercicio son imágenes SVG que están incluidas en las plantillas de los ejercicios. El resto de imágenes SVG están incluidas en la propia página web. Recordad que debéis mirar el código fuente del ejemplo de ejercicio.
    4. Los ejercicios 1 al 5 son fáciles, porque en realidad los programas sólo tienen que generar algunos valores numéricos del código SVG.
    5. Los ejercicios 11 al 15 son más difíciles porque se necesita expresar fórmulas para obtener algunos valores del dibujo. En los ejercicios 11, 12 y 13 las fórmulas pueden deducirse del propio dibujo (en la ayuda que acompaña a los ejercicios hay dibujos explicativos). En los ejercicios 14 y 15 la fórmulas se pueden deducir fácilmente a partir de los valores por ser fórmulas de sucesiones aritméticas (del estilo de las que vimos en Python en LMSGI el curso pasado).

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

IAW Semana S06: del 13/10/25 al 19/10/25

Estructuras de control: Sentencia condicional if ... elseif ... else ...

  1. Leed el apartado Variables lógicas de la lección Tipos de variables (solamente el apartado Variables lógicas).
  2. Leed la lección Operaciones lógicas.
  3. Leed los dos primeros apartados (Bloques de instrucciones e if ... elseif ... else ...) de la lección Estructuras de control.
  4. Leed la lección Sentencia condicional if ... elseif ... else ....
  5. Leed la lección HTML Tablas (apuntes HTML/CSS).

    En los ejercicios de esta semana aparecen tablas HTML, así que conviene que conozcáis las etiquetas que las definen. Básicamente, una tabla (<table>) está formada por filas (<tr>) que a su vez están formadas por celdas (<td> o <th>), aunque suelen aparecer más etiquetas que se explican en la lección.

  6. [básico] Haced los ejercicios if ... else ... (0).

    Estos ejercicios son ejercicios muy básicos que he añadido este curso para alumnos que no han dado la parte de programación del módulo LMSGI de 1º de ASIR. Hacedlos si lo consideráis conveniente.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

  7. Haced los ejercicios if ... else ... (1). Los ejercicios 1, 2 y 3 son fáciles. El 4 y el 5 son más difíciles. Antes de hacer los ejercicios 4 y 5, mirad la solución propuesta del ejercicio 3, en la que se comenta un enfoque del ejercicio 3 que podéis aplicar al ejercicio 5.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

  8. [repaso] Podéis hacer también los ejercicios extra if ... else ... (1). Son cuatro ejercicios que puse en exámenes de años anteriores (por eso no hay soluciones disponibles).

    En estos ejercicios se utilizan entidades numéricas para mostrar emojis, como vimos en el módulo Lenguaje de Marcas. Para refrescar la memoria podéis releer las lecciones UTF-8 y Entidades (en los apuntes HTML/CSS).

IAW Semana S07: del 20/10/25 al 26/10/25

Estructuras de control: Bucle for

PHP dispone de varias estructuras de control para definir bucles. Empezaremos por la estructura for y después de ver matrices veremos la estructura foreach. Tened en cuenta que la estructura for de Python que vimos en el módulo de Lenguaje de Marcas se parece más a la estructura foreach de PHP (que veremos más adelante) que a la estructura for de PHP.

  1. Leed la lección Bucle for.
  2. Haced los ejercicios 1 a 5 de Bucle for (1).

    En estos primeros ejercicios, es fácil identificar el papel de los bucles porque la página contiene elementos html repetidos que son precisamente los que tienen que generar los bucles.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

  3. Leed la lección Testigos, contadores y acumuladores.
  4. Haced los ejercicios 11 a 15 de Bucle for (1).

    Estos ejercicios son un poco más difíciles porque el papel de los bucles es también el cálculo de contadores y acumuladores, lo que no es tan obvio como la generación de elementos html repetidos.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

  5. [optativo] Haced los ejercicios Bucle for (2).

    Se trata de unos ejercicios sencillos desde el punto de vista de los bucles, pero en los que es necesario escribir fórmulas que relacionen la variable de control de los bucles con elementos de la página.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

IAW Semana S08: del 27/10/25 al 02/11/25

Matrices

  1. Leed la lección Matrices.

    Las matrices son un tipo de variable muy flexible que utilizaremos mucho a partir de ahora. En los ejercicios de esta semana, los índices de las matrices son numéricos y correlativos. En las próximas semanas trabajaremos con matrices asociativas, es decir, de índices no numéricos o no correlativos.

  2. Haced los ejercicios del primer apartado ("Sin bucles") de Matrices (1).

    En estos ejercicios no hace falta utilizar bucles ni if ... else ..., pero sí que hay que definir una o varias matrices.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

Estructuras de control: Bucle foreach

  1. Leed las lecciones Resumen bucle foreach y Bucle foreach

    Los bucles foreach permiten recorrer estructuras (matrices, recursos, etc) sin preocuparse por el número de elementos, lo que los hace muy útiles cuando se deben recorrer estructuras no generadas por el propio programa, como información proveniente de formularios o consultas a bases de datos.

  2. Haced los ejercicios del segundo apartado ("Con bucles") de Matrices (1).

    En estos ejercicios se deben utilizar bucles, tanto for como foreach (aunque en varios se podrían utilizar solamente bucles for, por supuesto). La idea es la siguiente:

    • En cada ejercicio hay que crear una o varias matrices para almacenar los datos
    • Para generar las matrices, se deben utilizar bucles for.
    • Para recorrer las matrices creadas (por ejemplo para mostrarlas), se aconseja utilizar bucles foreach. Se podrían utilizar también bucles for, pero los bucles foreach son más sencillos.
    • Para modificar las matrices o para crear nuevas matrices a partir de otras, se suele tener que utilizar bucles for, pero en bastantes casos se pueden utilizar bucles foreach. En caso de que la situación lo permita, se aconseja utilizar bucles foreach.

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.

IAW Semana S09: del 03/11/25 al 09/11/25

Ejercicios: Bucles for con fórmulas

En estos ejercicios se necesita escribir fórmulas para generar series de números que permiten crear dibujos. Mirando el código fuente de los programas de ejemplo se pueden ver los números, pero las fórmulas se os tienen que ocurrir a vosotros. En realidad, es más fácil de lo que parece, porque las series de números forman sucesiones aritméticas por lo que las fórmulas son (casi) siempre del tipo a * x + b, donde a y b son números enteros.

  1. Leed la lección Sucesiones aritméticas (esta lección está en los apuntes Temas de informática).
  2. Practicad la deducción de fórmulas haciendo los ejercicios Sucesiones aritméticas

    Son ejercicios que podéis repetir las veces que queráis. El primero es trivial, pero el segundo exige bastante cálculo mental (aunque podéis empezar haciéndolo con papel y lápiz y calculadora), sobre todo si se elige el mayor nivel de dificultad.

  3. Haced los ejercicios Bucle for (2).

    Podéis consultar unas posibles soluciones de estos ejercicios. También podéis descargar unas posibles soluciones completas de estos ejercicios.