PROGRAMACIÓN I - SA - SA25-5
Topic outline
- BIENVENIDA
BIENVENIDA
Estimados estudiantes,
Es un gusto darles la más cordial bienvenida a esta asignatura en modalidad virtual, un espacio pensado para desarrollar su capacidad de razonamiento lógico a un lenguaje de programación que es catalogado como nivel medio ya que su fundamento es C, el análisis estructurado y representación de procesos a través de sintaxis básica harán que las habilidades fundamentales de cualquier profesional del área informática se pueda beneficiar con el conocimiento de C++. - COMPETENCIA ESPECíFICA
- DATOS DEL DOCENTE:This topic
DATOS DEL DOCENTE:
Profesor: Lcda Minerva Taborda
Semestre: 1ero
Sede: Valencia
Datos de Contacto:
* Número de Teléfono: 04244329119
* Número de Teléfono de Habitación: 04244329119
* Correo: taboraminerva@gmail.com
HORARIO DE ATENCIÓN:
Asesoría: Explicación para actividades o contenidos asignados.
– Viernes de 05:00 PM a 08:30 PM
Consulta: Dudas y preguntas breves con respecto a actividades o contenidos asignados.
– Lunes a Viernes Los días Domingos no atiendo llamadas, ni whatsapp solo via E-MAIL de ser muy urgente en las tardes. - DISTRIBUCIÓN DEL PRIMER SEMESTRE
DISTRIBUCIÓN DEL PRIMER SEMESTRE
EL DOCENTE asignara en esta sección el formato de planificación de la asignatura
- I CORTE O MODULO: Inicia 22/11/2025 Termina 14/02/2026
- Semana No. 1: breve historia de C++ y sintaxys: Desde 22/11/2025 al 28/11/2025
Semana No. 1: breve historia de C++ y sintaxys: Desde 22/11/2025 al 28/11/2025
Historia Breve de C++
El lenguaje de programación C++ es un lenguaje de propósito general con una rica historia que se remonta a principios de la década de 1980.
- Origen: Fue desarrollado por Bjarne Stroustrup en los Laboratorios Bell de AT&T.
- Base: Inicialmente se llamó "C con Clases" (C with Classes), ya que fue diseñado como una extensión del lenguaje C. Stroustrup buscaba agregar características de la Programación Orientada a Objetos (POO) a la eficiencia y el bajo nivel de C.
- Nombre: El nombre C++ se adoptó en 1983. El ++ proviene del operador de incremento en C, simbolizando que es una versión incrementada y mejorada de C.
- Características Principales: C++ es conocido por ser un lenguaje híbrido que soporta:
- Programación Orientada a Objetos (POO): Con conceptos como clases, herencia, polimorfismo y encapsulamiento.
- Programación Imperativa: Heredada de C.
- Programación Genérica: Introducida por las plantillas (templates).
- Uso: C++ es ampliamente utilizado en sistemas operativos, desarrollo de juegos (motores como Unreal Engine), sistemas embebidos, software de alto rendimiento, y aplicaciones con restricciones de recursos o de tiempo.
Concepto de Variable en C++
Una variable es un contenedor que almacena información en la memoria del computador.
Para declararla en C++ se indica primero el tipo de dato, luego el nombre de la variable, y opcionalmente un valor inicial.
Tipos de Variables Básicas en C++
Tipo Descripción Ejemplo int Números enteros (positivos o negativos, sin decimales). int edad = 25;float Números decimales de precisión simple. float precio = 5.99;double Números decimales de doble precisión (más exactos que float). double altura = 1.75;char Un solo carácter (letra, número o símbolo). char inicial = 'A';bool Valores lógicos: true(verdadero) ofalse(falso).bool esMayor = true;string Texto o cadenas de caracteres (requiere #include).string nombre = "Jorge";Check Video Aquí
- Semana No. 2: C++ Variables y tipos: Int, Char, Float, Double, Cadena y bool Desde 29/11/2025 al 05/11/2025
Semana No. 2: C++ Variables y tipos: Int, Char, Float, Double, Cadena y bool Desde 29/11/2025 al 05/11/2025
Tipos básicos de variables en C++
Estos son los tipos básicos de C++ variables:
int:
Un número entero es un literal numérico (asociado con números) sin ninguna parte fraccionaria o exponencial. Ejemplo. 120, -90, etc.
Double:
Es un valor de punto flotante de doble precisión. Ejemplo: 11.22, 2.345
Carbonizarse:
Un literal de carácter se crea encerrando un solo carácter entre comillas simples. Por ejemplo: 'a', 'm', 'F', 'P', '}' etc.
Flotador:
Un literal de punto flotante es un literal numérico que tiene forma fraccionaria o exponente. Por ejemplo: 1.3, 2.6
Literales de cadena:
Una cadena literal es una secuencia de caracteres entre comillas dobles. Por ejemplo: “¿Cómo estás?”
booleano:
Mantiene el valor booleano verdadero o falso.
- Semana No. 3: Varibles Camel_Case snake_case Desde 06/12/2025 al 12/12/2025
- Semana No. 4: Estructura Básica de un Programa 12/01/2026 al 17/01/2026
Semana No. 4: Estructura Básica de un Programa 12/01/2026 al 17/01/2026
Estructura básica de un programa en C++
Un programa en C++ mínimo tiene la siguiente estructura:
cpp#include <iostream> int main() { // Tu código aquí return 0; }#include <iostream>: Esta es una directiva del preprocesador. Le dice al compilador que incluya la biblioteca estándar de entrada/salida (iostream), que nos permite realizar operaciones de entrada y salida, como imprimir en la consola o leer datos del teclado.int main(): Esta es la función principal. Todo programa en C++ debe tener una funciónmain. La ejecución del programa comienza aquí. El tipo de retornointindica que la función debe devolver un valor entero. Por convención, un retorno de 0 indica que el programa terminó exitosamente.{ }: Las llaves delimitan el cuerpo de la función.return 0;: Esta sentencia devuelve el valor 0 al sistema operativo, indicando que el programa terminó sin errores.
Hola Mundo
El clásico "Hola Mundo" en C++ se vería así:
cpp#include <iostream> int main() { std::cout << "Hola Mundo!" << std::endl; return 0; }std::cout: Es el objeto de flujo de salida estándar (standard output) que se utiliza para imprimir en la consola. Los datos se envían acoutusando el operador de inserción<<."Hola Mundo!": Es una cadena de caracteres (string) que queremos imprimir.std::endl: Inserta un salto de línea y vacía el buffer de salida. También se puede usar el carácter\npara un salto de línea, pero sin vaciar el buffer. Por ejemplo:"Hola Mundo!\n".std::: Indica quecoutyendlpertenecen al espacio de nombres estándar (std). Podemos evitar escribirstd::cada vez si usamosusing namespace std;al principio del programa, aunque no siempre es recomendable en proyectos grandes por posibles conflictos de nombres.
4. Variables y Tipos de Datos
En C++, las variables son contenedores para almacenar datos. Cada variable tiene un tipo, que determina el tamaño y la forma en que se almacena.
Algunos tipos básicos:
int: Números enteros.float: Números de punto flotante (precisión simple).double: Números de punto flotante (precisión doble).char: Un solo carácter.bool: Valores booleanos (true o false).
// Directiva del preprocesador
#include <iostream>
// Espacio de nombres estándar
using namespace std;
// Función principal - Punto de entrada del programa
int main() {
// Instrucciones
cout << "¡Hola Mundo!" << endl;
// Valor de retorno (0 = éxito)
return 0;
}
- Semana No. 5: Primeros Programas en C ++ Desde 19/01/2026 al 24/01/2026
Semana No. 5: Primeros Programas en C ++ Desde 19/01/2026 al 24/01/2026
Las operaciones aritméticas en C++ se realizan utilizando operadores estándar que actúan sobre variables numéricas (enteros y flotantes).
Operadores Básicos
Operación Operador Ejemplo (int a = 10, b = 3) Resultado
Suma + a + b 13
Resta - a - b 7
Multiplicación * a * b 30
División / a / b 3 (en enteros)
Módulo (Residuo) % a % b 1
Consideraciones Importantes
División Entera vs. Flotante: Si divides dos números enteros, el resultado será un entero (se pierde la parte decimal). Para obtener decimales, al menos uno de los valores debe ser float o double.
Ejemplo: 10 / 3 es 3, pero 10.0 / 3.0 es 3.3333.
Operador Módulo (%): Solo se puede utilizar con tipos de datos enteros (int, char, long). No funciona con float o double.
Precedencia: C++ sigue el orden matemático estándar (PEMDAS): multiplicación, división y módulo se ejecutan antes que la suma y la resta, a menos que se usen paréntesis ().
Ejemplo de Código
cpp
#include <iostream>
int main() {
int x = 15;
int y = 4;
std::cout << "Suma: " << x + y << std::endl; // 19
std::cout << "Resta: " << x - y << std::endl; // 11
std::cout << "Multiplicación: " << x * y << std::endl; // 60
std::cout << "División: " << x / y << std::endl; // 3
std::cout << "Residuo: " << x % y << std::endl; // 3
return 0;
}
Usa el código con precaución.
Operadores de Asignación Compuesta
C++ permite abreviar operaciones que actualizan el valor de una variable:
a += b; es equivalente a a = a + b;
a -= b; es equivalente a a = a - b;
a *= b; es equivalente a a = a * b;
a /= b; es equivalente a a = a / b;
- Semana No. 6: Evaluacion Práctica y Manual 26/01/2026 al 31/01/2026
Semana No. 6: Evaluacion Práctica y Manual 26/01/2026 al 31/01/2026
Buenas noches estimados alumnos paso por acá para dejarle la próxima actividad que tiene que ver con una evaluación en c++, el cual deberán entregar en un formato zip en la plataforma y adicional tomarle foto al código y adjuntarlo en el mismo archivo. Zip en la fecha pautada el enunciado o los enunciados están en el archivo PDF que se encuentra en la descripción.
- Semana No. 7: Operadores Relacionales Desde 02/02/2026 al 07/02/2026
Semana No. 7: Operadores Relacionales Desde 02/02/2026 al 07/02/2026
Básicamente, los operadores relacionales son los "jueces" de la programación. Su único trabajo es tomar dos valores, compararlos y decirnos si la relación entre ellos es verdadera o falsa.
En el mundo de la lógica y el código, el resultado de estas comparaciones siempre es un valor booleano: True (Verdadero) o False (Falso).

En C++, los operadores relacionales funcionan casi igual que en otros lenguajes, pero tienen un par de detalles "de bajo nivel" que es bueno conocer si quieres dominar el lenguaje.
Aquí tienes el desglose técnico pero digerible:
La lista oficial en C++
C++ utiliza estos seis operadores estándar. Todos devuelven un valor de tipo
bool(trueofalse).Operador Nombre Ejemplo Resultado si a=5, b=10==Igualdad a == bfalse!=Desigualdad a != btrue>Mayor que a > bfalse<Menor que a < btrue>=Mayor o igual b >= 10true*<=Menor o igual a <= 5trueTres cosas que debes saber (El "toque" C++)
1. ¿Booleanos o Números?
En C++, los booleanos están muy ligados a los enteros.
Internamente,
falsees 0.truees 1 (o cualquier número que no sea 0). Si haces uncout << (5 > 3);, C++ imprimirá un 1, no la palabra "true", a menos que uses el manipuladorstd::boolalpha.
2. El operador "Spaceship" (
<=>)Si usas C++20 o más reciente, existe un nuevo juguete llamado Three-way comparison operator. Se ve así:
<=>.Te dice de un solo golpe si algo es menor, igual o mayor, devolviendo un objeto que puedes comparar con
0. Es súper eficiente para ordenar estructuras de datos complejas.
3. Cuidado con los punteros y C-Strings
Este es el error donde todos caemos:
Si comparas dos
std::stringcon==, C++ compara el contenido (lo cual está perfecto).Si comparas dos cadenas de "vieja escuela" (
char*), C++ comparará las direcciones de memoria, no el texto. ¡Ojo ahí!
- Semana No. 8: Estructura condiconal CASE 09/02/2026 14/02/2026
Semana No. 8: Estructura condiconal CASE 09/02/2026 14/02/2026
Clase: Estructura Condicional switch (CASE) en C++
Objetivo: Que el estudiante aprenda a seleccionar una opción entre múltiples alternativas utilizando switch, evitando cadenas largas de if-else.
Primero aclara esto (MUY importante)
En C++ no existe CASE como palabra clave independiente.
Lo correcto es:
switch → estructura
case → cada opción
Muchos alumnos dicen “case”, pero debes enseñarles el nombre real:
Estructura SWITCH
¿Cuándo usar switch?
Usa switch cuando:
Existe una variable
Tiene varios valores posibles
Debes elegir uno
- Semana No. 9: Tipos de Ciclos en C++ Desde 16/02/2026 al 21/02/2026
Semana No. 9: Tipos de Ciclos en C++ Desde 16/02/2026 al 21/02/2026
Ciclo
whileSe utiliza cuando no sabemos exactamente cuántas veces se repetirá el bloque, ya que depende de una condición lógica. Si la condición es falsa desde el inicio, el código nunca se ejecuta.

while (condicion) { // Código a repetir }Ciclo
do-whileEs el hermano rebelde del
while. La diferencia clave es que se ejecuta al menos una vez, porque la condición se evalúa al final del bloque.C++do { // Código a repetir } while (condicion);Ciclo
forEs el estándar cuando sabemos el número exacto de iteraciones (por ejemplo, del 1 al 100). Agrupa la inicialización, la condición y el incremento en una sola línea.

for (inicializacion; condicion; incremento) { // Código a repetir }Ciclo
forbasado en rangos (C++11 en adelante)Ideal para recorrer contenedores (como vectores o arreglos) de forma elegante y segura.
C++for (tipo elemento : contenedor) { // Uso de elemento }
- Semana No. 10: Ciclos Desde 23/02/2026 al 28/02/2026
Semana No. 10: Ciclos Desde 23/02/2026 al 28/02/2026
Revisa el material multimedia Click
Para culminar con el 1er Corte le hago una invitación a desarrollar en C++ en cualquier IDE los siguientes ejercicios los deberán enviar en formato cpp y comprimidos en 1 solo archivo Zip Con su código Apellido y nombre
- Modulo II 28/02 al 09/ 05 /26 ARRAYS en C++
Modulo II 28/02 al 09/ 05 /26 ARRAYS en C++
ARRAYSCuando declaramos una variable estamos apartando en memoria espacio para guardar sus posibles valores dependiendo del tipo de dato que se trata.Un array o arreglo son una serie de localidades en memoria consecutivas que están asignadas a un solo nombre y un mismo tipo de datos.Declaración:La forma de declarar un arreglo de cualquier tipo de datos es la siguiente:tipo nombre [tamaño];Por ejemplo, podemos declarar un arreglo de enteros con 12 elementosint MiArreglo [12] ;El compilador se encargará de asignar la memoria requerida para almacenar determinados valores.Cuando se declara un arreglo de caracteres se trata entonces de una cadena.char nombre[20]Al momento de declarar un arreglo de cualquier tipo, podemos inicializarlo con los valores que queramos.Para inicializar un arreglo de enteros:int MiArreglo[5] ={2,34,78,1,9};Así, estos valores estarán almacenados en cada elemento del array.Es muy importante hacer notar que el primer elemento de un arreglo es el elemento 0, entonces, MiArreglo[0] contendrá el número 2, el segundo ( MiArreglo[1] ) contendrá el número 34 y así sucesivamente hasta MiArreglo[4] que es el último elemento del array.Si un arreglo cuenta con menos inicalizadores que elementos entonces el resto se inicializará a 0. Y en caso de que se trate de una cadena de caracteres podemos hacerlo de 2 formas:char MiCadena[13]= “hola a todos”;o bien, declarar cada elementochar MiArray[5]={'h','o','l','a','\0'};ejemplo:ejemplo con caracteres:Escribir un programa que pida una palabra al usuario, la almacene en un array de caracteres y luego la muestre al revés.#include <iostream> // librería#include <cstring> // Para usar strlen()using namespace std;int main() {// Definimos un array de caracteres con capacidad para 50 elementoschar palabra[50];cout << "Introduce una palabra: ";cin >> palabra;// Calculamos la longitud de la cadenaint n = strlen(palabra); cout << "La palabra invertida es: ";// Recorremos el array desde el último carácter hasta el primerofor (int i = n - 1; i >= 0; i--) {cout << palabra[i];} cout << endl;return 0;}ExplicaciónDeclaración:
char palabra[50];reserva espacio para 49 letras más el carácter nulo (\0).El Carácter Nulo: En C++, las cadenas de caracteres terminan siempre con un
\0. Es la señal para que el programa sepa dónde acaba el texto.Función
strlen(): Viene de la librería<cstring>y nos dice cuántas letras tiene la palabra (sin contar el\0).El Índice: Recuerda que los arrays empiezan en 0. Si una palabra tiene 4 letras, sus posiciones son 0, 1, 2 y 3. Por eso empezamos el bucle en
n - 1. - Tipos de Arrays en C++
Tipos de Arrays en C++
Para entender los vectores (arrays unidimensionales) y las matrices (arrays bidimensionales) en C++, lo más fácil es visualizarlos como filas de casillas y cuadrículas, respectivamente.
Aquí te explico ambos con ejemplos claros y directos.
1. Vectores (Arrays Unidimensionales)
Un vector es una secuencia de elementos del mismo tipo almacenados en posiciones contiguas de memoria.
En C++, los vectores (arrays) tienen un tamaño fijo y se guardan en posiciones de memoria contiguas. Vamos a ver cómo dominarlos con un toque de nivel avanzado.A diferencia de lenguajes de otros lenguajes de programación, en C++ debes declarar el tipo de dato y el tamaño de antemano
ejemplo:
C++
int energia[5] = {20, 45, 80, 10, 100};ejemplo:
Comparar parejas de números adyacentes. Si el de la izquierda es mayor que el de la derecha, los intercambiamos.
#include <iostream>
using namespace std;
int main() {
int numeros[] = {45, 2, 18, 50, 31};
int n = 5; // Tamaño del vector
int aux; // Algoritmo de Burbuja
for(int i = 0; i < n; i++) {
for(int j = 0; j < n - 1; j++) {
if(numeros[j] > numeros[j+1]) { // Si el actual es mayor al siguiente // Intercambio de valores
aux = numeros[j];
numeros[j] = numeros[j+1];
numeros[j+1] = aux;
}
}
}
// Mostrar el vector ordenado
cout << "Vector ordenado: ";
for(int i = 0; i < n; i++) {
cout << numeros[i] << " ";
} return 0;
}
- Matrices en C++ semana III
Matrices en C++ semana III
Matrices en C++
Si un vector era una fila de casillas, una matriz es una tabla con filas y columnas. Para acceder a un dato, ya no necesitas un número, sino dos: [fila][columna].
Sintaxis:
int tablero[3][3]; // Una matriz de 3 filas y 3 columnas (9 espacios en total)
ejemplo:
El bucle externo maneja las filas y el interno las columnas.
#include <iostream>
using namespace std;
int main() {
int matriz[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
cout << "Visualizando la matriz:" << endl;
for(int i = 0; i < 3; i++) { // Recorre filas
for(int j = 0; j < 3; j++) { // Recorre columnas
cout << matriz[i][j] << " "; }
cout << endl; // Salto de línea al terminar cada fila
}
return 0;
}
- Arreglos y Punteros en C++ semana IV
Arreglos y Punteros en C++ semana IV
Arreglos Bidimensionales
Los arreglos bidimensionales son estructuras de datos que permitenalmacenar datos en una tabla, es decir, en filas y columnas.Ejemplo en C++*#include <iostream>using namespace std;int main() {int matriz[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };// Imprimir la matrizfor (int i = 0; i < 3; i++) {for (int j = 0; j < 3; j++) {cout << matriz[i][j] << " ";}cout << endl;}return 0;}Arreglos Multidimensionales
Los arreglos multidimensionales son extensiones de los arreglosbidimensionales y pueden tener más de dos dimensiones.Ejemplo en C++:#include <iostream>using namespace std;int main() {int cubo[2][2][2] = { {{{1, 2}, {3, 4}}, {{5, 6}, {7, 8}}} };// Imprimir el cubofor (int i = 0; i < 2; i++) {for (int j = 0; j < 2; j++) {for (int k = 0; k < 2; k++) {cout << cubo[i][j][k] << " ";}cout << endl;}cout << endl;}return 0;}
Creación de PunterosLos punteros son variables que almacenan la dirección de otra variable.En C++, se utilizan con el operador `*` para declarar un puntero.Ejemplo en C++:#include <iostream>using namespace std;int main() {int numero = 42;int* puntero = № // Puntero que apunta a la dirección de 'numero'cout << "Valor de numero: " << numero << endl;cout << "Dirección de numero: " << &numero << endl;cout << "Valor a través del puntero: " << *puntero << endl;return 0;}La administración de punteros implica el uso de punteros para accedery manipular datos en memoria.Ejemplo en C++:```cpp#include <iostream>using namespace std;void incrementar(int* ptr) {(*ptr)++; // Incrementa el valor al que apunta el puntero}int main() {int valor = 10;cout << "Valor antes de incrementar: " << valor << endl;incrementar(&valor); // Pasar la dirección de 'valor'cout << "Valor después de incrementar: " << valor << endl;return 0;} - Topic 20
- Topic 21
- Topic 22
- Topic 23
- Topic 24
- Topic 25
- Topic 26
