Presentación — Unidad III
La pregunta de la unidad
Section titled “La pregunta de la unidad”En la Unidad I aprendimos qué es un algoritmo. En la Unidad II aprendimos a representar la información que utiliza.
Las etapas de la metodología
Section titled “Las etapas de la metodología”3.1 Importancia de la aplicación de técnicas y herramientas metodológicas3.2 Etapas de la metodología 3.2.1 Descripción del problema 3.2.2 Análisis del problema 3.2.3 Estrategias de solución 3.2.4 Técnicas de análisis 3.2.5 Desarrollo de la solución algorítmica (pseudocódigo) 3.2.6 Depuración y plan de pruebas 3.2.7 DocumentaciónAl final de la unidad integrarás las siete etapas en una propuesta algorítmica completa.
Ruta de la unidad
Section titled “Ruta de la unidad”| Tema | Etapa |
|---|---|
| ¿Qué significa resolver un problema? | 3.1 |
| Descripción del problema | 3.2.1 |
| Análisis del problema | 3.2.2 |
| Datos, variables, constantes e identificadores | 3.2.2 |
| Estrategias de solución | 3.2.3 |
| Técnicas de análisis | 3.2.4 |
| Pseudocódigo | 3.2.5 |
| Prueba de escritorio y depuración | 3.2.6 |
| Documentación | 3.2.7 |
| Estudio de caso integrador | 3.2 |
Cada tema puede requerir una o varias sesiones de clase.
Cómo trabajaremos cada tema
Section titled “Cómo trabajaremos cada tema”Recuperación → Explicación → Ejemplo → Ejercicio guiado → Práctica → Revisión → TareaHoja de trabajo, propuesta algorítmica extendida y fichas de trazado, depuración, comparación, transformación, ordenamiento y reto.
Continúan lo que se practicó en clase.
¿Qué significa resolver un problema? — 3.1 Importancia de la aplicación de técnicas y herramientas metodológicas
Section titled “¿Qué significa resolver un problema? — 3.1 Importancia de la aplicación de técnicas y herramientas metodológicas”Propósito del tema
Section titled “Propósito del tema”Introducir la idea de solución algorítmica y distinguir entre:
Situación que requiere una solución mediante un conjunto de acciones o decisiones.
Propuesta de procedimiento que permite resolver un problema bajo determinadas condiciones.
Conjunto finito y ordenado de instrucciones que permite resolver un problema o realizar una tarea.
Algoritmo y programa no son lo mismo
Section titled “Algoritmo y programa no son lo mismo”| Término | Definición en la unidad |
|---|---|
| Instrucción | Indicación que especifica una acción que debe realizar el algoritmo. |
| Algoritmo | Conjunto finito y ordenado de instrucciones que resuelve un problema. |
| Pseudocódigo | Representación textual y estructurada de un algoritmo, sin depender de un lenguaje de programación. |
| Programa | Implementación de un algoritmo mediante un lenguaje de programación. |
En esta materia construimos algoritmos y los representamos mediante pseudocódigo y diagramas de flujo.
Características de una solución algorítmica
Section titled “Características de una solución algorítmica”Termina después de un número determinado de pasos.
Cada paso tiene una posición en la secuencia.
Cada instrucción indica una acción clara.
Con los mismos datos produce el mismo resultado.
Produce la información que el problema solicita.
¿Por qué seguir una metodología?
Section titled “¿Por qué seguir una metodología?”Se escribe la solución antes de comprender el problema. Los errores aparecen tarde y es difícil saber dónde se originaron.
Cada etapa prepara la siguiente. Los errores se detectan en la etapa donde se producen y la solución puede verificarse.
Del problema a la solución
Section titled “Del problema a la solución”Problema ↓ 3.2.1 ¿Qué se pide resolver? ↓ 3.2.2 ¿Qué datos intervienen y qué resultados se esperan? ↓ 3.2.3 ¿Qué estrategia conviene utilizar? ↓ 3.2.4 ¿Cómo se divide el problema y qué casos existen? ↓ 3.2.5 ¿Cómo se representa la solución? ↓ 3.2.6 ¿Funciona? ¿Qué debe corregirse? ↓ 3.2.7 ¿Otra persona puede comprenderla?Solución algorítmica confiableActividad del tema
Section titled “Actividad del tema”El grupo identificará, a partir de una situación cotidiana:
- la situación problemática
- el resultado esperado
- la información necesaria
- el procedimiento general
Cierre del tema
Section titled “Cierre del tema”- Evidencia: registro de la actividad guiada.
- Tarea: no se asigna tarea formal en este tema.
Siguiente tema: 3.2.1 Descripción del problema.
Descripción del problema — Etapa 3.2.1
Section titled “Descripción del problema — Etapa 3.2.1”Propósito del tema
Section titled “Propósito del tema”Expresar un problema de manera clara, completa y sin ambigüedades, identificando qué se pide resolver.
¿Qué contiene una descripción del problema?
Section titled “¿Qué contiene una descripción del problema?”La descripción del problema es la descripción clara de la situación que debe resolverse y del resultado que se espera obtener.
| Pregunta | Qué se escribe |
|---|---|
| ¿Qué situación se presenta? | El contexto, con tus propias palabras. |
| ¿Qué se necesita resolver? | La tarea concreta que debe cumplir la solución. |
| ¿Qué resultado debo obtener? | El objetivo, en una sola frase. |
Características de una buena descripción
Section titled “Características de una buena descripción”Otra persona la entiende sin explicaciones adicionales.
Incluye la situación y el resultado esperado.
Cada frase admite una sola interpretación.
Todavía no se describen datos, fórmulas ni pasos. Eso corresponde al análisis (3.2.2) y a las etapas siguientes.
Ejemplo: describir un problema
Section titled “Ejemplo: describir un problema”Una tienda desea obtener el importe total de una compra a partir del precio de un producto y la cantidad de unidades adquiridas.
Hoja de trabajo · 1. Definición del problema
| Pregunta | Respuesta |
|---|---|
| ¿Qué problema debo resolver? | Una tienda necesita saber cuánto debe pagar un cliente por la compra de un producto. |
| ¿Qué resultado debo obtener? | El importe total de la compra. |
Actividades del tema
Section titled “Actividades del tema”| Momento | Actividad |
|---|---|
| Guiada | Describir una situación cotidiana de forma formal |
| Práctica | Redactar individualmente la descripción de un problema |
Se registra en la hoja de trabajo, sección 1. Definición del problema.
Cierre del tema
Section titled “Cierre del tema”- Evidencia: descripción formal del problema.
Siguiente tema: 3.2.2 Análisis del problema.
Análisis del problema — Etapa 3.2.2
Section titled “Análisis del problema — Etapa 3.2.2”Propósito del tema
Section titled “Propósito del tema”Distinguir entre la información de entrada, la información conocida y los resultados esperados de un problema.
Elementos del análisis
Section titled “Elementos del análisis”| Elemento | Qué es |
|---|---|
| Datos de entrada | Información que el algoritmo necesita recibir. Normalmente la proporciona el usuario. |
| Datos conocidos | Información que el problema proporciona y que no se solicita al usuario. |
| Resultados esperados | Información concreta que debe obtenerse al finalizar la solución. |
| Proceso | Operaciones que transforman los datos en los resultados. |
| Restricciones | Condiciones que limitan los valores válidos. |
Tres preguntas para analizar
Section titled “Tres preguntas para analizar”¿Qué información debe proporcionar el usuario? → datos de entrada¿Qué información ya proporciona el problema? → datos conocidos¿Qué información debe producir la solución? → resultados esperadosUn dato conocido no se solicita al usuario. Si el problema ya lo establece, pedirlo permitiría valores diferentes de los establecidos.
Actividad guiada · Datos de entrada y resultados
Section titled “Actividad guiada · Datos de entrada y resultados”Una tienda desea obtener el importe total de una compra a partir del precio de un producto y la cantidad de unidades adquiridas.
Hoja de trabajo · 2. Análisis
2.1 Datos de entrada
| Dato | Tipo | Descripción |
|---|---|---|
2.2 Resultados esperados
| Resultado | Tipo | Descripción |
|---|---|---|
No desarrolles el pseudocódigo.
Actividad guiada · 2.5 Restricciones
Section titled “Actividad guiada · 2.5 Restricciones”Después de identificar los datos, preguntamos:
- ¿Qué valores no tendrían sentido para el precio?
- ¿La cantidad de unidades puede tener parte decimal?
- ¿Puede ser cero?
Las restricciones también forman parte del análisis. Indican qué valores son válidos.
Actividad guiada · Datos conocidos y no conocidos
Section titled “Actividad guiada · Datos conocidos y no conocidos”Una empresa desea calcular el salario semanal de un trabajador a partir del número de horas trabajadas y el pago correspondiente a cada hora. La empresa establece que el pago por hora es de 85.00 unidades monetarias.
| Información | Clasificación | Tipo de dato | Justificación |
|---|---|---|---|
| Pago por hora | |||
| Horas trabajadas | |||
| Salario semanal |
Clasificación: dato conocido, dato de entrada o resultado esperado.
Revisión del tema
Section titled “Revisión del tema”- ¿Qué información debe proporcionar el usuario en cada problema?
- ¿Qué información calcula el algoritmo?
- ¿Por qué el pago por hora no debe solicitarse al usuario?
Evidencia del tema: tabla de datos conocidos, datos de entrada, resultados esperados y restricciones.
Cierre del tema
Section titled “Cierre del tema”- Tarea: no se asigna tarea formal en este tema.
Siguiente tema: convertir esa información en datos que el algoritmo pueda utilizar.
Datos, variables, constantes e identificadores — 3.2.2 Análisis del problema
Section titled “Datos, variables, constantes e identificadores — 3.2.2 Análisis del problema”Propósito del tema
Section titled “Propósito del tema”Definir correctamente los elementos de información que utilizará un algoritmo.
Asignar a cada dato el tipo que corresponde a su naturaleza.
Decidir si el valor cambia o permanece fijo durante la ejecución.
Nombrar cada dato de forma descriptiva y con la convención correcta.
¿Dónde estamos en la metodología?
Section titled “¿Dónde estamos en la metodología?”3.2.1 Descripción del problema3.2.2 Análisis del problema ← estamos aquí3.2.3 Estrategias de solución3.2.4 Técnicas de análisis3.2.5 Desarrollo de la solución algorítmica (pseudocódigo)3.2.6 Depuración y plan de pruebas3.2.7 DocumentaciónEn el tema anterior identificamos datos de entrada, datos conocidos y resultados esperados.
Recuperación: lo que ya conoces de la Unidad II
Section titled “Recuperación: lo que ya conoces de la Unidad II”| Concepto | Pregunta que responde |
|---|---|
| Dato | ¿Qué información utiliza el algoritmo? |
| Tipo de dato | ¿Qué clase de valor es y qué operaciones admite? |
| Variable | ¿Su valor puede cambiar durante la ejecución? |
| Constante | ¿Su valor permanece fijo durante la ejecución? |
| Identificador | ¿Con qué nombre nos referimos a él? |
En esta unidad no volvemos a estudiar estos conceptos: los aplicamos al análisis de un problema.
Tipos de datos de la Unidad III
Section titled “Tipos de datos de la Unidad III”Números sin parte decimal.
25
Números con parte decimal.
25.50
Secuencia de caracteres.
"ANA"
Un solo carácter.
'A'
Solo dos valores posibles.
VERDADERO / FALSO
Notación de la unidad: cadenas entre comillas dobles, caracteres entre comillas simples y tipos en mayúsculas.
¿Variable o constante?
Section titled “¿Variable o constante?”Pregunta clave: ¿el valor puede cambiar durante la ejecución del algoritmo?
Su valor puede cambiar.
Normalmente corresponde a datos de entrada y resultados.
Su valor no cambia.
Normalmente corresponde a datos conocidos que el problema establece y que no se solicitan al usuario.
Convenciones para identificadores
Section titled “Convenciones para identificadores”Primera palabra en minúscula. Las siguientes inician con mayúscula.
cantidadPersonasareaTrianguloesMayorEdad
Todo en mayúsculas. Palabras separadas por guion bajo.
VALOR_PIEDAD_MAYORIADIAS_SEMANA
Reglas de un buen identificador
Section titled “Reglas de un buen identificador”Un identificador debe:
- comenzar con una letra
- ser descriptivo
- evitar abreviaturas innecesarias
- no contener espacios
- no utilizar palabras reservadas
- respetar la convención de su categoría
| No se recomienda | Motivo |
|---|---|
x | No indica qué información guarda |
dato2 | Nombre genérico: no dice de qué dato se trata |
aux | Abreviatura que no describe su contenido |
cantidadpersonas | Palabras juntas sin distinguir dónde empieza cada una |
CANTIDADpersonas | Mayúsculas y minúsculas mezcladas sin criterio |
cantidad personas | El espacio no es válido en un identificador |
Ejemplo: del análisis a los datos
Section titled “Ejemplo: del análisis a los datos”Retomamos el salario semanal de un trabajador: el pago por hora (85.00) es un dato conocido, las horas trabajadas son un dato de entrada y el salario semanal es el resultado esperado.
Hoja de trabajo · 3. Diseño de los datos
Constantes
| Identificador | Tipo | Valor |
|---|---|---|
PAGO_POR_HORA | REAL | 85.00 |
Variables
| Identificador | Tipo |
|---|---|
horasTrabajadas | ENTERO |
salarioSemanal | REAL |
El pago por hora lo establece la empresa y no se solicita al usuario. Por eso es constante.
El procedimiento que aplicaremos
Section titled “El procedimiento que aplicaremos”Información del problema ↓¿Dato conocido, dato de entrada o resultado? ↓¿Variable o constante? ↓¿Qué tipo de dato le corresponde? ↓¿Qué identificador lo describe mejor?Práctica 1 · Clasificación de tipos de datos
Section titled “Práctica 1 · Clasificación de tipos de datos”Un sistema requiere almacenar el nombre de un estudiante, su edad, su promedio, la cantidad de materias inscritas y si tiene derecho a presentar una evaluación extraordinaria.
Qué debes hacer: asignar a cada identificador uno de los cinco tipos de la unidad y justificar tu elección en una frase.
| Identificador | Tipo de dato | Justificación |
|---|---|---|
nombreEstudiante | ||
edad | ||
promedio | ||
cantidadMaterias | ||
tieneDerecho |
Trabajo individual · 10 minutos · No desarrolles el pseudocódigo.
Revisión · Clasificación de tipos de datos
Section titled “Revisión · Clasificación de tipos de datos”Comparte tu tabla con un compañero y verifiquen:
- ¿Cada identificador tiene un solo tipo de dato?
- ¿Utilizaron únicamente ENTERO, REAL, CADENA, CARACTER o LOGICO?
- ¿La justificación se basa en la naturaleza de la información?
Pregunta para el grupo: ¿qué diferencia observable existe entre la edad y el promedio que justifica tipos diferentes?
Práctica 2 · Definición de variables y constantes
Section titled “Práctica 2 · Definición de variables y constantes”Una empresa desea calcular el importe total de una compra.
- El precio unitario y la cantidad de productos los proporciona el usuario.
- La tasa de impuesto es del 16 % y permanece constante.
- El algoritmo calcula el subtotal y el importe total.
Qué debes hacer: para cada elemento, define
| Identificador | Naturaleza (VARIABLE / CONSTANTE) | Tipo de dato | Valor inicial (cuando corresponda) |
|---|
Trabajo individual · 15 minutos · No desarrolles el pseudocódigo completo.
Revisión · Definición de variables y constantes
Section titled “Revisión · Definición de variables y constantes”Verifica tu propia tabla:
- ☐ Identifiqué una constante y la escribí en SCREAMING_SNAKE_CASE.
- ☐ Escribí las variables en camelCase.
- ☐ Cada identificador describe la información que representa.
- ☐ No utilicé abreviaturas innecesarias.
- ☐ Cada tipo de dato corresponde a la naturaleza del dato.
Pregunta para el grupo: ¿por qué la tasa de impuesto no debe solicitarse al usuario?
Errores frecuentes
Section titled “Errores frecuentes”| Error | Ejemplo | Corrección |
|---|---|---|
| Constante escrita como variable | tasaImpuesto para un valor fijo | Usar SCREAMING_SNAKE_CASE |
| Variable escrita como constante | HORAS_TRABAJADAS para un dato de entrada | Usar camelCase |
| Identificador no descriptivo | x, dato1, cp | Nombrar la información que representa |
| Tipo que no corresponde | Cantidad de personas como REAL | Una cantidad de elementos es ENTERO |
| Solicitar un dato conocido | Pedir al usuario el pago por hora | Representarlo como constante |
Tarea · Selección de identificadores
Section titled “Tarea · Selección de identificadores”Qué debes hacer: proponer un identificador y un tipo de dato para cada elemento de un sistema académico (cuatro variables y una constante) y verificar que cada identificador cumple las reglas vistas hoy.
| Aspecto | Detalle |
|---|---|
| Instrumento | Hoja de trabajo, sección 3. Diseño de los datos |
| Evidencia | Tabla completa y lista de verificación marcada |
| Entrega | La fecha y el medio los indica el profesor |
Es la continuación de la práctica 2: mismo procedimiento, problema diferente. No desarrolles el pseudocódigo.
Criterios con los que se revisará la tarea
Section titled “Criterios con los que se revisará la tarea”- ☐ Los identificadores son descriptivos.
- ☐ Las variables utilizan camelCase.
- ☐ La constante utiliza SCREAMING_SNAKE_CASE.
- ☐ Los identificadores no contienen espacios.
- ☐ Los identificadores no utilizan caracteres especiales.
- ☐ Los identificadores permiten reconocer la información que representan.
Revisa tu tabla con estos criterios antes de entregarla.
Síntesis
Section titled “Síntesis”Análisis del problema ↓Dato conocido / dato de entrada / resultado ↓Variable o constante ↓Tipo de dato ↓IdentificadorSiguiente tema
Section titled “Siguiente tema”3.2.3 Estrategias de solución
Con el problema descrito y sus datos definidos, compararemos diferentes formas de resolverlo y justificaremos cuál conviene utilizar.
En la etapa 3.2.5 utilizarás estos identificadores para escribir el pseudocódigo de la solución.
Estrategias de solución — Etapa 3.2.3
Section titled “Estrategias de solución — Etapa 3.2.3”Propósito del tema
Section titled “Propósito del tema”Comprender que un problema puede abordarse mediante diferentes estrategias y que la elección debe justificarse.
Un problema, varias estrategias
Section titled “Un problema, varias estrategias”Una vez descrito el problema y definidos sus datos, puede haber más de una forma de llegar al resultado.
Para elegir, comparamos características observables:
Comparar con criterios, no con preferencias
Section titled “Comparar con criterios, no con preferencias”"Me gusta más la estrategia A."
"La B es mejor porque es más corta."
"La A usa identificadores que describen cada dato, por lo que es más fácil verificarla."
Una solución no es necesariamente mejor que otra solamente porque sea más corta.
Instrumento: ficha de comparación
Section titled “Instrumento: ficha de comparación”| Sección | Qué registra |
|---|---|
| Problema | Qué deben resolver ambas soluciones. |
| Solución A y Solución B | Las dos alternativas. |
| Comparación | Una tabla con los criterios establecidos. |
| Diferencias principales | Hechos observables, no opiniones. |
| Análisis | Si producen el mismo resultado y en qué casos podrían diferir. |
Actividad guiada · Comparación de dos algoritmos
Section titled “Actividad guiada · Comparación de dos algoritmos”Ambos algoritmos deben calcular el área de un rectángulo con base 8 y altura 5.
Algoritmo A
Inicio REAL base = 8 REAL altura = 5 REAL area = base * altura Mostrar areaFinAlgoritmo B
Inicio REAL a = 8 REAL b = 5 REAL c = a * b Mostrar cFinFicha de comparación · Comparación y análisis
Section titled “Ficha de comparación · Comparación y análisis”| Criterio | Algoritmo A | Algoritmo B |
|---|---|---|
| Identificadores descriptivos | ||
| Facilidad de comprensión | ||
| Correspondencia entre datos y variables | ||
| Resultado producido |
Diferencias principales: ¿por qué un identificador puede facilitar la comprensión?
Análisis: ¿ambas soluciones producen el mismo resultado? ☐ Sí ☐ No ☐ No se puede determinar
Tarea · Comparación de estrategias de solución
Section titled “Tarea · Comparación de estrategias de solución”Qué debes hacer: comparar dos estrategias para calcular el costo total de cinco productos (una suma directa y una acumulación en la variable total) y explicar la diferencia principal entre ellas.
| Aspecto | Detalle |
|---|---|
| Instrumento | Ficha de comparación |
| Evidencia | Tabla de comparación completa y explicación de la diferencia principal |
| Entrega | La fecha y el medio los indica el profesor |
Continúa la actividad guiada: mismos criterios observables, ahora para comparar estrategias.
Cierre del tema
Section titled “Cierre del tema”Siguiente tema: 3.2.4 Técnicas de análisis.
Técnicas de análisis — Etapa 3.2.4
Section titled “Técnicas de análisis — Etapa 3.2.4”Propósito del tema
Section titled “Propósito del tema”Aplicar técnicas que permiten precisar la estrategia elegida antes de escribir el pseudocódigo.
Dividir un problema en partes o subproblemas más pequeños.
Determinar las situaciones particulares que puede presentar el problema y que pueden requerir un comportamiento diferente.
Descomposición
Section titled “Descomposición”Un subproblema es una parte del problema que puede analizarse o resolverse de manera independiente dentro de la solución general.
Para cada subproblema se determina:
| Pregunta | Ejemplo de respuesta |
|---|---|
| ¿Qué cálculo debe realizarse? | Una operación concreta |
| ¿Qué datos necesita? | Entradas, datos conocidos o resultados de otro subproblema |
| ¿Qué resultado produce? | Un valor que se usa después o se muestra |
Si un subproblema necesita el resultado de otro, el orden entre ellos no es arbitrario.
Actividad guiada · Descomposición de un problema
Section titled “Actividad guiada · Descomposición de un problema”Una tienda calcula el importe de una compra de un solo producto (cantidad de unidades y precio unitario) y después aplica un descuento del 10 %. Debe mostrar el importe antes del descuento, el descuento aplicado y el total a pagar.
| Subproblema | Datos necesarios | Operación | Resultado producido |
|---|---|---|---|
Después escribimos, en lenguaje natural, el orden en que deben resolverse. No se escribe pseudocódigo.
Identificación de casos
Section titled “Identificación de casos”Un caso es una situación particular que puede presentarse durante la ejecución y que puede requerir un comportamiento diferente.
Para identificar casos se eligen valores:
- por debajo de un límite
- exactamente en el límite
- por encima del límite
Hoy solo identificamos los casos. En la Unidad IV profundizarás en las estructuras condicionales que permiten tratarlos en el algoritmo.
Actividad guiada · Identificación de casos
Section titled “Actividad guiada · Identificación de casos”Una universidad determina la situación académica de un estudiante a partir de su calificación final (entero de 0 a 100). Se considera aprobado con una calificación mayor o igual que 60.
| Caso | Valor de calificación | Condición que se cumple | Resultado esperado |
|---|---|---|---|
Debe incluir: un valor inferior a 60, el valor 60 y un valor superior a 60.
Pregunta final: ¿qué condición permite distinguir los dos resultados posibles?
Revisión del tema
Section titled “Revisión del tema”- ¿Qué subproblema debe resolverse primero en la descomposición? ¿Por qué?
- ¿Por qué es indispensable probar el valor 60 en la identificación de casos?
- ¿Qué pasaría con un valor fuera del rango 0–100?
Evidencia: tabla de subproblemas con su orden y tabla de casos.
Cierre del tema
Section titled “Cierre del tema”- Tarea: no se asigna tarea formal en este tema.
Siguiente tema: 3.2.5 Desarrollo de la solución algorítmica (pseudocódigo).
Pseudocódigo — 3.2.5 Desarrollo de la solución algorítmica
Section titled “Pseudocódigo — 3.2.5 Desarrollo de la solución algorítmica”Propósito del tema
Section titled “Propósito del tema”Construir una representación algorítmica estructurada utilizando la notación definida para la unidad.
El pseudocódigo se escribe después de describir, analizar, elegir una estrategia y aplicar técnicas de análisis.
Tres representaciones del mismo algoritmo
Section titled “Tres representaciones del mismo algoritmo”Representación principal. Es la que se enseña y se evalúa.
Representación gráfica del mismo algoritmo.
Herramienta de verificación: ejecutar y comparar resultados.
Problema → Análisis → Pseudocódigo → Diagrama de flujo → Traducción a PSeInt → Ejecución → Prueba y depuraciónPSeInt no es el algoritmo: sirve para comprobar que el algoritmo produce los resultados esperados. El pseudocódigo nunca se modifica para adaptarlo a PSeInt.
Estructura de un algoritmo
Section titled “Estructura de un algoritmo”Inicio Declaraciones → constantes y variables con su tipo Entrada → datos que proporciona el usuario Procesamiento → asignaciones y operaciones Salida → resultados que se muestranFinTodo algoritmo comienza con Inicio y termina con Fin. La indentación muestra la estructura.
Notación de la unidad
Section titled “Notación de la unidad”| Concepto | Notación | Ejemplo |
|---|---|---|
| Inicio y fin | Inicio … Fin | |
| Declaración | <TIPO> <identificador> | REAL altura |
| Constante | <TIPO> <CONSTANTE> = <VALOR> | REAL IVA_GENERAL = 0.16 |
| Entrada | Entrada: | Entrada: edad |
| Salida | Mostrar | Mostrar "El área es:", area |
| Asignación | = | total = precio + impuesto |
| Comentario | // | // Calcular el área |
Tipos: ENTERO, REAL, CADENA, CARACTER, LOGICO.
Qué no se utiliza
Section titled “Qué no se utiliza”No se utilizan instrucciones de lenguajes de programación ni de herramientas específicas:
scanf printf cin cout System.out.println console.logTampoco Leer, Escribir, Definir, Algoritmo ni otras construcciones propias de PSeInt: pertenecen a la traducción, no al pseudocódigo.
En el pseudocódigo, la salida siempre es Mostrar, la entrada siempre es Entrada: y la asignación siempre es =.
Asignación
Section titled “Asignación”area = (base * altura) / 2- Se evalúa la expresión de la derecha.
- El resultado se almacena en el identificador de la izquierda.
Se usan paréntesis para hacer explícito el orden de evaluación cuando exista posibilidad de ambigüedad.
Ejemplo — Área de un triángulo
Section titled “Ejemplo — Área de un triángulo”Hoja de trabajo · 1. Definición del problema
Section titled “Hoja de trabajo · 1. Definición del problema”Desarrolla un algoritmo que calcule el área de un triángulo a partir de su base y su altura.
| Pregunta | Respuesta |
|---|---|
| ¿Qué problema debo resolver? | Calcular el área de un triángulo cuando se conocen su base y su altura. |
| ¿Qué resultado debo obtener? | El área del triángulo. |
Hoja de trabajo · 2. Análisis
Section titled “Hoja de trabajo · 2. Análisis”| Sección | Contenido |
|---|---|
| 2.1 Datos de entrada | La base y la altura del triángulo |
| 2.2 Resultados esperados | El área del triángulo |
| 2.3 Datos conocidos | El divisor de la fórmula del área: 2 |
| 2.4 Proceso | Multiplicar la base por la altura y dividir el resultado entre 2 |
| 2.5 Restricciones | La base y la altura deben ser mayores que cero |
Hoja de trabajo · 3. Diseño de los datos
Section titled “Hoja de trabajo · 3. Diseño de los datos”Constantes
| Identificador | Tipo | Valor |
|---|---|---|
DIVISOR_AREA_TRIANGULO | ENTERO | 2 |
Variables
| Identificador | Tipo |
|---|---|
base | REAL |
altura | REAL |
area | REAL |
Hoja de trabajo · 4. Algoritmo en lenguaje natural
Section titled “Hoja de trabajo · 4. Algoritmo en lenguaje natural”- Solicitar la base.
- Solicitar la altura.
- Calcular el área: multiplicar la base por la altura y dividir entre 2.
- Mostrar el área.
Hoja de trabajo · 4. Algoritmo en pseudocódigo
Section titled “Hoja de trabajo · 4. Algoritmo en pseudocódigo”Inicio
ENTERO DIVISOR_AREA_TRIANGULO = 2
REAL base REAL altura REAL area
Mostrar "Ingrese la base:" Entrada: base
Mostrar "Ingrese la altura:" Entrada: altura
area = (base * altura) / DIVISOR_AREA_TRIANGULO
Mostrar "El área del triángulo es:", area
FinSímbolos del diagrama de flujo
Section titled “Símbolos del diagrama de flujo”- Las declaraciones sin valor (
REAL base) no se representan. - Una constante con valor (
DIVISOR_AREA_TRIANGULO = 2) se representa con un proceso. - Cada
Entrada:es un paralelogramo (entrada). - Cada
Mostrares un símbolo de pantalla (salida), también los mensajes antes de una entrada.
Área de un triángulo: diagrama de flujo
Section titled “Área de un triángulo: diagrama de flujo”Cada símbolo corresponde a una instrucción del pseudocódigo, en el mismo orden. El conector A solo continúa el dibujo en la segunda columna.
Área de un triángulo: traducción a PSeInt
Section titled “Área de un triángulo: traducción a PSeInt”Algoritmo AreaTriangulo Definir DIVISOR_AREA_TRIANGULO Como Entero Definir base, altura, area Como Real DIVISOR_AREA_TRIANGULO = 2 Escribir "Ingrese la base:" Leer base Escribir "Ingrese la altura:" Leer altura area = (base * altura) / DIVISOR_AREA_TRIANGULO Escribir "El área del triángulo es: ", areaFinAlgoritmoSe conservan los identificadores y el orden. Solo cambia la sintaxis: Inicio/Fin → Algoritmo/FinAlgoritmo, Entrada: → Leer, Mostrar → Escribir, declaración → Definir. La asignación = se escribe igual.
En PSeInt utiliza el perfil Flexible.
Área de un triángulo: ejecución en PSeInt
Section titled “Área de un triángulo: ejecución en PSeInt”Caso normal (base = 10, altura = 6):
Ingrese la base:> 10Ingrese la altura:> 6El área del triángulo es: 30La ejecución se realiza después de construir el pseudocódigo. Si el resultado no coincide, se corrige el pseudocódigo y se vuelve a traducir.
Hoja de trabajo · 5. Prueba
Section titled “Hoja de trabajo · 5. Prueba”| Valores utilizados | Resultado esperado | Resultado obtenido en PSeInt | Resultado |
|---|---|---|---|
| base = 10, altura = 6 | area = 30 | 30 | ☑ CORRECTO ☐ NECESITO CORREGIR |
| base = 1, altura = 1 | area = 0.5 | 0.5 | ☑ CORRECTO ☐ NECESITO CORREGIR |
Cada línea del pseudocódigo corresponde a una decisión tomada en el análisis. Cada símbolo del diagrama y cada instrucción de PSeInt corresponden a una línea del pseudocódigo.
Actividad guiada · Área de un rectángulo
Section titled “Actividad guiada · Área de un rectángulo”Desarrolla un algoritmo que calcule el área de un rectángulo a partir de su base y su altura.
Construimos juntos la hoja de trabajo, en orden:
- Definición del problema
- Análisis: datos de entrada, resultados, datos conocidos, proceso y restricciones
- Diseño de los datos: constantes y variables
- Algoritmo: lenguaje natural y pseudocódigo
- Prueba con los casos:
| Caso | Entrada | Resultado esperado |
|---|---|---|
| Normal | base = 8, altura = 5 | area = 40 |
| Límite | base = 1, altura = 1 | area = 1 |
Actividad guiada · De lenguaje natural a pseudocódigo
Section titled “Actividad guiada · De lenguaje natural a pseudocódigo”Un algoritmo debe calcular el perímetro de un rectángulo. El usuario proporciona la base y la altura. El algoritmo calcula el perímetro multiplicando por dos la suma de la base y la altura. Finalmente muestra el perímetro.
Ficha de transformación · 3. Elementos identificados
| Elemento | Lenguaje natural (origen) | Pseudocódigo (destino) |
|---|---|---|
| Inicio | ||
| Entrada | ||
| Proceso | ||
| Salida | ||
| Fin |
Después se escribe el pseudocódigo completo y se verifica que conserva la misma secuencia.
Práctica · Promedio de tres calificaciones
Section titled “Práctica · Promedio de tres calificaciones”Desarrolla un algoritmo que calcule el promedio de tres calificaciones de un estudiante.
- Cada calificación está entre 0 y 100, inclusive.
- Realiza el análisis y desarrolla el pseudocódigo.
- Comprueba tu solución:
| Caso | Entrada | Resultado esperado |
|---|---|---|
| Normal | 80, 90, 70 | promedio = 80 |
| Límite | 0, 0, 0 | promedio = 0 |
Instrumento: hoja de trabajo · Trabajo individual.
Práctica · Pseudocódigo a diagrama de flujo
Section titled “Práctica · Pseudocódigo a diagrama de flujo”Representa cada pseudocódigo mediante un diagrama de flujo.
| Algoritmo | Pseudocódigo de origen |
|---|---|
| Área de un rectángulo | Dos entradas, un cálculo, una salida |
| Promedio de tres calificaciones | Tres entradas, un cálculo, una salida |
Reglas:
- Usa los símbolos vistos: terminal, entrada, salida en pantalla, proceso y línea de flujo.
- Las declaraciones sin valor no se representan.
- Conserva exactamente los identificadores y el orden de las instrucciones.
- No agregues decisiones, repeticiones ni operaciones inexistentes.
Evidencia: diagrama de flujo · Instrumento: ficha de transformación, con el pseudocódigo como representación de origen.
Tareas del tema
Section titled “Tareas del tema”| Tarea | Qué debes hacer |
|---|---|
| Conversión de Celsius a Fahrenheit | Analizar y escribir el pseudocódigo para convertir una temperatura de Celsius a Fahrenheit |
| Costo total de una compra | Analizar y escribir el pseudocódigo del importe total de una compra con impuesto del 16 % |
| Evidencia | Requerida |
|---|---|
| Análisis, diseño de datos y pseudocódigo (hoja de trabajo) | Sí |
| Diagrama de flujo | No |
| Traducción a PSeInt y resultados obtenidos con los casos de prueba | Sí |
Entrega: la fecha y el medio los indica el profesor.
Aplica el procedimiento del ejemplo del área del triángulo: primero el pseudocódigo, después la traducción a PSeInt y la comparación de resultados.
Cierre del tema
Section titled “Cierre del tema”Siguiente tema: 3.2.6 ¿Cómo sabemos que el algoritmo funciona?
Prueba de escritorio y depuración — 3.2.6 Depuración y plan de pruebas
Section titled “Prueba de escritorio y depuración — 3.2.6 Depuración y plan de pruebas”Propósito del tema
Section titled “Propósito del tema”Verificar que un algoritmo produzca los resultados esperados y detectar errores antes de considerarlo terminado.
Ejecución manual y paso a paso de un algoritmo con valores concretos.
Registro sistemático de los valores de las variables mientras se sigue la ejecución.
Proceso de identificar, analizar y corregir errores en una solución.
Resultado esperado y resultado obtenido
Section titled “Resultado esperado y resultado obtenido”| Término | Significado |
|---|---|
| Caso de prueba | Conjunto de valores de entrada para comprobar el comportamiento del algoritmo. |
| Resultado esperado | Resultado que debería producir el algoritmo para ese caso. |
| Resultado obtenido | Resultado que realmente produce el algoritmo durante el trazado. |
Plan de pruebas
Section titled “Plan de pruebas”Un plan de pruebas reúne los casos con los que se verificará la solución. Como mínimo incluye:
Valores habituales del problema.
Valores en el borde de las restricciones.
| Caso | Entrada | Resultado esperado | Resultado obtenido | ¿Coincide? |
|---|
Cómo se realiza un trazado
Section titled “Cómo se realiza un trazado”- Registra el valor inicial de cada identificador.
- Ejecuta las instrucciones en orden, una por una.
- Después de cada instrucción que modifica un valor, anota el nuevo valor.
- Determina qué se muestra al final.
Instrumento: ficha de trazado.
No ejecutes el algoritmo en una computadora: el trazado se realiza manualmente.
Actividad guiada · Trazado de una secuencia de operaciones
Section titled “Actividad guiada · Trazado de una secuencia de operaciones”Ficha de trazado · Algoritmo a analizar:
Inicio REAL precio = 50 ENTERO cantidad = 3 REAL subtotal = precio * cantidad REAL descuento = 20 REAL total = subtotal - descuento Mostrar totalFin2. Trazado paso a paso
| Paso | Instrucción | precio | cantidad | subtotal | descuento | total | Observación |
|---|---|---|---|---|---|---|---|
| 1 |
3. Resultado de la ejecución: ¿qué valor se muestra al finalizar? · 4. Explicación: ¿qué hace el algoritmo?
Cómo se depura
Section titled “Cómo se depura”Comportamiento esperado → Prueba → Localizar el error → Explicar la causa → Corregir → Volver a probarNo basta con indicar que algo está mal: se explica qué ocurre, por qué ocurre y cómo se corrige.
Instrumento: ficha de depuración.
Actividad guiada · Corrección de tipos de datos
Section titled “Actividad guiada · Corrección de tipos de datos”Ficha de depuración · 1. Problema: el algoritmo debe almacenar el nombre de un estudiante, su edad y su promedio.
Inicio ENTERO nombreEstudiante = "Carlos" CADENA edad = 19 ENTERO promedio = 87.5
Mostrar nombreEstudiante Mostrar edad Mostrar promedioFin| Sección de la ficha | Qué registramos |
|---|---|
| 4. Identificación del error | Instrucción donde se encuentra cada error y qué hace incorrectamente |
| 5. Corrección | Algoritmo corregido sin modificar los valores |
| 6. Verificación | ¿El algoritmo corregido almacena cada dato con el tipo adecuado? ☐ Sí ☐ No |
Práctica · Trazado de intercambio de valores
Section titled “Práctica · Trazado de intercambio de valores”Inicio ENTERO primerValor = 15 ENTERO segundoValor = 30 ENTERO auxiliar = primerValor
primerValor = segundoValor segundoValor = auxiliar
Mostrar primerValor Mostrar segundoValorFinRegistra los valores de primerValor, segundoValor y auxiliar después de cada asignación y determina los valores mostrados.
Instrumento: ficha de trazado.
Práctica · Corrección de una fórmula
Section titled “Práctica · Corrección de una fórmula”El algoritmo debe calcular el área de un triángulo a partir de su base y su altura.
Inicio REAL base = 10 REAL altura = 6 REAL area = base + altura Mostrar areaFin- Identifica el error en el cálculo del área.
- Corrige únicamente la instrucción que calcula
area. - Realiza una prueba de escritorio. Resultado esperado:
area = 30.
Instrumento: ficha de depuración.
Prueba de escritorio y PSeInt
Section titled “Prueba de escritorio y PSeInt”Prueba de escritorio → Resultado obtenido (manual) → Traducción a PSeInt → Resultado obtenido (PSeInt) → ComparaciónEjemplo con la fórmula del área corregida (area = (base * altura) / 2):
| Verificación | Resultado esperado | Resultado obtenido |
|---|---|---|
| Prueba de escritorio | 30 | 30 |
| Ejecución en PSeInt | 30 | 30 |
PSeInt no sustituye la prueba de escritorio: en el perfil Flexible, una variable sin inicializar se muestra como 0 sin marcar error. El trazado manual permite ver por qué un resultado es incorrecto.
Tareas del tema
Section titled “Tareas del tema”| Tarea | Qué debes hacer |
|---|---|
| Trazado de operaciones acumuladas | Realizar el trazado de un algoritmo que acumula valores en total |
| Corrección del orden de operaciones | Localizar y corregir un error en el orden de las operaciones de un cálculo con impuesto |
- Instrumentos: ficha de trazado y ficha de depuración.
- Evidencia: ficha de trazado y ficha de depuración completas, realizadas manualmente. No se requiere PSeInt.
- Entrega: la fecha y el medio los indica el profesor.
Continúan las actividades de trazado y de depuración realizadas en clase.
Cierre del tema
Section titled “Cierre del tema”Siguiente tema: 3.2.7 Documentación.
Documentación — Etapa 3.2.7
Section titled “Documentación — Etapa 3.2.7”Propósito del tema
Section titled “Propósito del tema”Documentar una solución de manera que otra persona pueda comprenderla sin reconstruir el proceso desde cero.
Qué se documenta
Section titled “Qué se documenta”Qué problema resuelve.
Qué recibe y qué produce, con su tipo.
Qué representa cada identificador.
Qué valores son válidos y qué se asumió.
Qué relación matemática se utiliza.
Por qué se eligió cada alternativa.
Supuesto y restricción
Section titled “Supuesto y restricción”| Término | Definición | Ejemplo |
|---|---|---|
| Restricción | Condición que limita los valores o situaciones válidas del problema. | La cantidad debe ser un número entero mayor que cero. |
| Supuesto | Decisión tomada cuando el enunciado no proporciona explícitamente cierta información. | Se asume que el número de estudiantes será un entero positivo. |
Los supuestos deben documentarse cuando puedan afectar la solución.
Ejemplo: documentar el promedio de tres calificaciones
Section titled “Ejemplo: documentar el promedio de tres calificaciones”Retomamos el promedio de tres calificaciones (tema Pseudocódigo).
| Elemento | Documentación |
|---|---|
| Propósito | Calcular el promedio de tres calificaciones de un estudiante. |
| Entradas | calificacion1, calificacion2, calificacion3 (REAL) |
| Salida | promedio (REAL) |
| Constante | NUMERO_CALIFICACIONES = 3: cantidad de calificaciones que se promedian. |
| Restricción | Cada calificación está entre 0 y 100, inclusive. |
| Fórmula | Suma de las tres calificaciones dividida entre la cantidad de calificaciones. |
| Decisión | Se usa una constante para que el divisor tenga nombre y significado. |
Práctica · Documentación de una solución
Section titled “Práctica · Documentación de una solución”Documenta el algoritmo proporcionado que calcula el área de un triángulo utilizando la constante MITAD.
Completa: propósito, datos de entrada, resultado esperado, variables, constantes, supuestos, restricciones, fórmula y decisión de diseño.
Decisión de diseño que debes explicar: ¿por qué se utiliza la constante MITAD en lugar del valor 0.5 directamente en la expresión?
Instrumento: propuesta algorítmica extendida · El profesor proporciona el algoritmo completo.
Cierre del tema
Section titled “Cierre del tema”- Tarea: no se asigna tarea formal. El estudio de caso integrador reúne todas las etapas.
Siguiente tema: estudio de caso integrador.
Estudio de caso integrador — 3.2 Etapas de la metodología
Section titled “Estudio de caso integrador — 3.2 Etapas de la metodología”Propósito del tema
Section titled “Propósito del tema”Integrar las siete etapas de la metodología en una propuesta algorítmica completa.
1. Descripción del problema2. Análisis3. Estrategia4. Técnicas de análisis5. Pseudocódigo6. Pruebas y depuración7. DocumentaciónEl caso
Section titled “El caso”Una papelería desea automatizar el cálculo del importe de una compra de un solo producto.
| El usuario proporciona | El sistema calcula |
|---|---|
| Cantidad de unidades | Subtotal |
| Precio unitario | Importe del impuesto |
| Porcentaje de impuesto aplicable | Total a pagar |
Solo se requieren operaciones aritméticas: no se requieren estructuras condicionales ni repetitivas.
Qué debe contener la propuesta
Section titled “Qué debe contener la propuesta”| Etapa | Evidencia |
|---|---|
| Descripción | Problema correctamente delimitado |
| Análisis | Entradas, salidas, datos conocidos y restricciones |
| Estrategia | Procedimiento seleccionado y justificado |
| Técnica de análisis | Descomposición del problema |
| Pseudocódigo | Algoritmo completo con la notación de la unidad |
| Pruebas | Al menos tres casos: normal, mínimo válido y diferente al normal |
| Verificación en PSeInt | Traducción del pseudocódigo y resultados obtenidos de los tres casos |
| Documentación | Supuestos, decisiones y resultados de las pruebas |
Instrumento: propuesta algorítmica extendida.
Organización del trabajo
Section titled “Organización del trabajo”| Momento | Actividad (distribución de etapas sugerida) | Evidencia |
|---|---|---|
| Avance 1 | Aplicación integral de la metodología: etapas 1 a 4 | Avance del estudio de caso |
| Avance 2 | Aplicación integral de la metodología: etapas 5 y 6 | Avance del estudio de caso |
| Trabajo colaborativo | Etapa 7 y revisión | Estudio de caso |
| Retroalimentación | Revisión previa a la entrega | Cuestionario formativo |
| Entrega | Entrega y evaluación del estudio de caso | Estudio de caso (producto requerido) |
Condición de cierre
Section titled “Condición de cierre”El estudiante debe demostrar trazabilidad entre:
Problema → Datos → Proceso → Algoritmo → Pruebas → DocumentaciónCierre de la Unidad III
Section titled “Cierre de la Unidad III”Un procedimiento para pasar de un problema a una solución algorítmica verificada y documentada.
En la Unidad IV profundizarás en las estructuras secuenciales, condicionales y repetitivas, y aplicarás esta metodología para construir soluciones con ellas.

