Conceptos Fundamentales de Programación: Algoritmos y Estructuras de Datos

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 6,94 KB

Fundamentos de Programación: Conceptos Clave

Sección 1: Tipos de Datos y Estructuras de Control Básicas

1. ¿Qué definen los tipos de datos?

Definen el conjunto de valores que una variable puede recibir y el conjunto de operadores que pueden actuar sobre ella.

2. ¿Cómo se clasifican los tipos de datos primitivos?

Se clasifican en:

  • Numéricos: Números enteros y reales.
  • Alfanuméricos: Carácter y cadena de texto.
  • Lógicos: Verdadero o Falso (Booleanos).

3. ¿Cuáles son las instrucciones primitivas? Explique y dé un ejemplo de cada una.

Las instrucciones primitivas son:

  • Entrada de datos: Permiten al usuario proporcionar los datos necesarios para ejecutar el programa.
    Ejemplo: LEA (NUM)
  • Asignación: Permiten almacenar información en una variable.
    Ejemplo: X <- 5
  • Salida de datos: Son los medios por los cuales la información en la memoria se muestra en los dispositivos de salida para que el usuario pueda verla.
    Ejemplo: ESCRIBIR ('La suma es', SUM)

4. ¿Qué caracteriza a un algoritmo puramente secuencial?

Es un algoritmo en el que las instrucciones se ejecutan secuencialmente, una tras otra. Cada instrucción se ejecuta solo una vez y el algoritmo solo utiliza las tres instrucciones primitivas (entrada, asignación, salida).

5. Proporcione la sintaxis y el funcionamiento de la estructura de selección simple (IF-THEN-ELSE).

Sintaxis:

SI <condición> ENTONCES
    <comandos1>
[SINO
    <comandos2>] (opcional)
FIN_SI

Funcionamiento:

La <condición>, que debe ser una expresión lógica, se evalúa, resultando en un valor lógico (Verdadero o Falso).

  • Si el resultado de evaluar la condición es Verdadero, entonces el/los <comandos1> se ejecuta(n).
  • Si el resultado de evaluar la condición es Falso, entonces el/los <comandos2> (si existen) se ejecuta(n).

Después de ejecutar el/los comando(s) 1 o el/los comando(s) 2, el flujo de ejecución continúa con la siguiente sentencia después de FIN_SI.

6. Defina qué es una condición en una estructura de selección y dé tres ejemplos.

Una condición es una expresión lógica que se evalúa como un valor lógico (Verdadero o Falso).

Ejemplos:

  • X >= 10
  • (NUM >= 1) Y (NUM <= 3)
  • NOMBRE = 'María'

7. Proporcione la sintaxis y el funcionamiento de la estructura de repetición MIENTRAS (WHILE).

Sintaxis:

MIENTRAS <condición> HACER
    <comandos>
FIN_MIENTRAS

Funcionamiento:

La <condición> se evalúa. Si el resultado es Verdadero, el/los <comandos> se ejecuta(n). Al llegar a FIN_MIENTRAS, la condición se evalúa nuevamente. Este proceso se repite hasta que la condición sea Falsa, momento en el que la ejecución continúa con la siguiente sentencia después de FIN_MIENTRAS.

¿Por qué es crucial que la condición pueda modificarse dentro del bucle?

Porque si la condición no se modifica, el programa entrará en un bucle infinito, repitiendo los comandos indefinidamente, lo cual es un error grave.

Sección 2: Variables, Contadores, Acumuladores y Estructuras de Datos Avanzadas

1. ¿Qué es la inicialización?

Es el proceso de asignar un valor inicial a una variable. No se pueden utilizar variables sin tener control sobre su valor.

2. Diferencie entre variables contador y acumulador.

  • Acumulador: Es una variable numérica que recibe un valor inicial y se incrementa (o decrementa) en un valor variable en cada repetición.
  • Contador: Es una variable numérica que recibe un valor inicial y se incrementa (o decrementa) en una cantidad fija en cada repetición.

3. ¿Qué es una variable bandera (flag)?

Es una variable lógica (booleana) que se utiliza para establecer y probar una condición, con el fin de controlar el flujo de un programa o la repetición de un bucle.

4. ¿Qué tipos de control existen para el valor final en una estructura de repetición?

Existen tres tipos principales:

  1. Número fijo y conocido de repeticiones.
  2. Número variable de repeticiones, conocido durante la ejecución del algoritmo.
  3. Número de repeticiones desconocido a priori.

5. ¿Cuándo se utiliza la estructura PARA (For)? Explique su funcionamiento.

Se utiliza solo cuando se conoce de antemano el número exacto de repeticiones.

Funcionamiento: Se asigna un valor inicial a una variable de control. En cada iteración, el valor de esta variable se compara con un valor final. Si la condición de continuación se cumple, el/los comando(s) se ejecuta(n). Al finalizar la iteración, la variable de control se actualiza (incrementa o decrementa) y la condición se evalúa nuevamente hasta que no se cumpla.

6. ¿Qué son los vectores y cómo se accede a sus elementos?

Un vector (o arreglo unidimensional) es un conjunto de variables del mismo tipo de datos, agrupadas bajo un mismo nombre, y a las cuales se accede mediante un índice (posición).

7. ¿Qué son las matrices? Declare una matriz de 3x4.

Las matrices (o arreglos multidimensionales) son estructuras de datos homogéneas (todos sus elementos son del mismo tipo) y multidimensionales.

Declaración de una matriz de 3x4 de tipo REAL:

VAR
    MAT: VECTOR [1 .. 3, 1 .. 4] DE REAL

8. ¿Qué son las matrices cuadradas? ¿Cómo se identifican los elementos de la diagonal principal y secundaria?

Una matriz cuadrada es aquella en la que el número de filas es igual al número de columnas.

  • Para identificar los elementos de la diagonal principal: la fila y la columna tienen el mismo índice (ej., para una matriz M, los elementos son M[i,i]).
  • Para identificar los elementos de la diagonal secundaria: la suma del índice de la fila y el índice de la columna es igual a n + 1, donde n es el tamaño de la matriz cuadrada (asumiendo índices base 1). Por ejemplo, para una matriz M de tamaño n x n, los elementos son M[i, n - i + 1].

Entradas relacionadas: