Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CARRERA:
NIVEL: Tecnológico TIPO DE CARRERA:
Tradicional NOMBRE DE LA SIGNATURA: PROGRAMACIÓN
CÓDIGO DE LA ASIGNATURA:
PRE – REQUISITO: CO – REQUISITO: N/A
TOTAL HORAS: Teoría 36 Práctica 54 Trabajo independiente __8_
NIVEL: SEGUNDO PERIODO ACADÉMICO: junio – octubre 2021
MODALIDAD: Presencial DOCENTE RESPONSABLE: Ing Darwin Sanchez
2
Ing. Darwin Sánchez
Programación
ÍNDICE
GUIA DE ESTUDIOS 2
PRESENTACIÓN 8
DESARROLLO DE ACTIVIDADES 11
Unidad Didáctica I 11
Proceso De Programación 11
Operadores y expresiones 17
3
Actividad de Aprendizaje 3 de la Unidad Didáctica I: 19
Diagramas de flujo 19
Estructuras Repetitivas 21
Unidad Didáctica II 32
Algoritmos 32
La Herramienta Pseint 33
Ambientación a la herramienta 34
Pseint – operadores 36
Estructuras Simples 37
4
Ing. Darwin Sánchez
Programación
Estructuras condicionales 38
Estructuras repetitivas 44
Identificadores 54
Formatos de identificadores 55
Variables 55
Constantes c++ 56
5
Declaración de constantes 57
Constantes definidas 57
Operadores Matemáticos 62
Operadores lógicos 63
Estructuras de control if 63
Unidad Didáctica 4 71
Proceso De Programación 71
6
Ing. Darwin Sánchez
Programación
Comentarios en la Estructura 72
Tipos de funciones 75
Cadenas de Caracteres 77
Recursividad 77
7
8
Ing. Darwin Sánchez
Programación
PRESENTACIÓN
9
de las prácticas de laboratorio y realización de las pruebas de evaluación
continua.
Imagen Significado
Sugerencia
10
Ing. Darwin Sánchez
Programación
Talleres
Reflexión
Apunte clave
Foro
Resumen
Evaluación
11
DESARROLLO DE ACTIVIDADES
Unidad Didáctica I
Título de la Unidad Didáctica I:
Proceso De Programación
Introducción de la Unidad Didáctica I:
La presente unidad de trabajo presenta unidad se trata de lograr que el
estudiante conozca la forma de trabajo de las herramientas de programación.
La programación con diagramas de flujo de datos es un tema muy importante
que permite al estudiante familiarizarse con las herramientas de programación
con diagramas de flujo, la programación que se describe es a través de
diagramación, que representan una funcionalidad en cada proceso de forma
secuencial.
12
Ing. Darwin Sánchez
Programación
13
encarga de traducir las señales que envían los periféricos, para que el
ordenador pueda entender, por así decirlo.
2. Proceso: Luego de la captura de los datos la computadora realiza
procedimientos que ayudan a transformar los datos en información para lo cual
se pueda realizar toma de decisiones.
● Máquina de ejecución secuencial de instrucciones
● Programa=secuencia de instrucciones
● Instrucciones y datos almacenados en memoria
● Memoria organizada en direcciones
● Instrucciones, datos y operaciones en binario
3. Almacenamiento: Cuando los datos han sido procesados el ordenador
necesita almacenarlos ya sea temporal (memoria principal RAM), o ya sea en
almacenamiento masivo (secundario), para que luego sean usados por los
diferentes dispositivos o el mismo procesador.
4. Salida: el computador se comunica con un periférico de salida, a través de
una unidad de entrada y salida de datos (donde se encuentran los drivers),
quien interpreta la salida para que se entregue la información en el formato
adecuado, es decir el formato en que trabaja el periférico.
Para comprender el proceso que realiza un computador, al realizar operaciones
básicas, se observa en la figura 1 que se realiza desde leer la instrucción de
memoria, y sigue el ciclo hasta terminar el proceso.
14
Ing. Darwin Sánchez
Programación
15
….
Inst1: 11101100 MOV X,3
Inst2: 11101011 MOV Z, X
Inst3: 01101101 ADD Z,Y
…
X: 00000000 0
Y: 00000111 7
Z: 00000010 2
16
Ing. Darwin Sánchez
Programación
Lenguajes de alto nivel: Son aquellos que permiten una máxima flexibilidad al
programador a la hora de abstraerse o ser literal. Permiten un cambio
direccional entre el lenguaje maquina y una expresión oral en la escritura del
programa y su posterior compilación. Estos lenguajes están orientados a
objetos. Los objetos se componen de propiedades cuya naturaleza emerge de
procedimientos.
17
4. Es fácil de depurar. 4. Es complejo depurar
comparativamente.
5. Es fácil de mantener. 5. Es complejo de mantener
comparativamente.
6. Es portátil. 6. No es portátil.
7. Puede ejecutarse en cualquier 7. Depende de la máquina.
plataforma.
8. Necesita compilador o intérprete 8. Necesita ensamblador para la
para la traducción. traducción.
9. Se usa ampliamente para No se usa comúnmente en la
programación. actualidad en la programación.
Tipos de datos
Los tipos de datos son considerados que su forma de tratarlo es decir que
dependiendo de su naturaleza, es como debe ser tratado.
Y se clasifican en:
Números enteros
18
Ing. Darwin Sánchez
Programación
Son los datos numéricos de tipo entero finito, ya sean positivos o negativos. No
toman la parte decimal o fraccional
Alfanuméricos
Son los datos que incluyen datos numéricos y alfabéticos si los datos
numéricos pasan a ser un dato alfanumérico estos pierden sus propiedades
matemáticas debido a que ya no se pueden hacer operaciones con ellos.
Caracter
Son los datos que reconoce la computadora las que incluye el teclado y código
aquí pero sólo se usan un solo carácter para ser representados ejemplo, puede
ser una letra, un número, un símbolo, etc.
Cadena de caracteres
Reconocidos como booleanos son los datos que permiten tomar decisiones
entre 2 valores o más y reconocidos como datos condicionales.
19
Operadores y expresiones
Expresiones: constantes, variables, operadores, con lo que se realizan las
operaciones y permite obtener un resultado.
Ejemplo:
Operadores matemáticos
1) ^ **
2) * / div mod
3) + -
Operadores de relación
20
Ing. Darwin Sánchez
Programación
● Igual =
Diagramas de flujo
Un diagrama de flujo es una representación gráfica de un proceso.
21
Diagramas de flujo condicionales
22
Ing. Darwin Sánchez
Programación
23
que se repiten una y otra vez y así evitamos escribir múltiples veces las
mismas sentencias.
Ciclo Para
Esta estructura ejecuta los pasos de la solución del algoritmo un número
definido de veces y de modo automático controla el número de iteraciones o
pasos a través del cuerpo del ciclo.
Para el control se utiliza un contador en el cual se va acumulando el número de
veces que se ha repetido las instrucciones.
Mientras
Este bucle repetitivo se utiliza cuando NO sabemos el número de iteraciones
que se ha de repetir un ciclo, los ciclos se determinan por una condición que se
evalúa al inicio del ciclo, es decir, antes de ejecutarse todos los pasos.
El diagrama es:
24
Ing. Darwin Sánchez
Programación
Diagrama de Flujo
25
Ejercicios propuestos:
● ¿Qué falta en este algoritmo? ¿Qué errores presenta?
● Desarrollar un algoritmo que calcule el área de un cuadrado.
Ejercicio No: 2
Desarrolle un algoritmo que permita determinar el área y volumen de un cilindro
dado su radio (R) y altura (H).
Diagrama de Flujo
Ejercicio propuesto:
a. Realiza un algoritmo que le permita determinar el área de un rectángulo.
26
Ing. Darwin Sánchez
Programación
Desarrolle un algoritmo que permita leer dos valores distintos, determinar cuál
de los dos valores es el mayor y escribirlo.
Diagrama de Flujo
Ejercicios propuestos:
a. Realizar un algoritmo que permita leer dos valores, determinar cuál de los
dos valores es el menor y escríbalo
b. Realizar un algoritmo que sume dos números.
Ejercicio No: 4
27
Diagrama de Flujo
Ejercicios propuestos:
28
Ing. Darwin Sánchez
Programación
Diagrama de Flujo
Ejercicios propuestos:
a. Complete el algoritmo con la instrucción o instrucciones necesarias.
b. Desarrolle un algoritmo que le permita determinar de una lista de
números:
b.1. ¿Cuántos están entre el 50 y 75, ambos inclusive?
b.2. ¿Cuántos mayores de 80?
b.3. ¿Cuántos menores de 30?
El algoritmo debe finalizar cuando n (el total de números de la lista), sea igual
a 0.
29
Ejercicio No: 6
Desarrolle un algoritmo que permita convertir calificaciones numéricas, según
la siguiente tabla:
A = 19 y 20, B =16, 17 y 18, C = 13, 14 y 15, D = 10, 11 y 12, E = 1 hasta el
9. Se asume que la nota está comprendida entre 1 y 20.
Diagrama de Flujo
30
Ing. Darwin Sánchez
Programación
Ejercicio propuesto:
● Realiza el mismo algoritmo utilizando Mientras (While); también hacerlo
utilizando En Caso (Case)
Ejercicio No: 7
Ejercicio Propuesto:
31
Ejercicio No: 8
Desarrolle un algoritmo que permita leer un valor entero positivo N y
determinar si es primo o no.
Diagrama de Flujo
32
Ing. Darwin Sánchez
Programación
Ejercicio propuesto:
● ¿Qué falta en este algoritmo? ¿ Qué errores presenta?
● Realice un algoritmo que determine los veinte primeros números,
¿Cuáles son múltiplos de 2?.
● Realice un algoritmo que determine cuantos minutos hay en 5 horas.
Ejercicio No: 9
Diagrama de Flujo
33
Ejercicios propuestos:
34
Ing. Darwin Sánchez
Programación
35
Unidad Didáctica II
Título de la Unidad Didáctica II:
Algoritmos
Introducción de la Unidad Didáctica II:
La unidad didáctica de Algoritmos se luego de tener conocimientos de
diagramas de flujo aplicando los fundamentos básicos de la programación.
En la unidad se destaca la interpretación del proceso de la programación
basándose en algoritmos, los cuales son procesos escritos de forma lineal (la
cual se llamará sentencia), es decir que se escribirá código en un lenguaje
natural denominado pseudocódigo.
36
Ing. Darwin Sánchez
Programación
Esto en contrapartida con el uso de constantes que son justamente valores que
no cambian.
Hasta ahora se tiene en cuenta que se almacena en una variable un único valor
simple, de un tipo dado, a la vez. Sin embargo, más de una vez será necesario
conservar más de un valor. Esto es fácil de realizar empleando variables para
cada uno de los valores que sean necesarios. Sin embargo, hay veces que
estos datos, por alguna razón, tienen una unidad conceptual y conviene
mantenerlos juntos y no separados en variables distintas. Por ejemplo, todos
los datos que corresponden a una persona, tales como su edad, el estado civil,
su nombre y apellido, dirección, documento de identidad, etc.
Así, estos datos, deberían, entonces, poder ser agrupados en una unidad, que
llamaremos estructura de datos. Una estructura de datos es un conjunto de
datos que se agrupan por alguna razón.
37
La Herramienta Pseint
PSeInt (Pseudo Intérprete) es un Entorno de Desarrollo Integrado (IDE, por sus
siglas en inglés) para Pseudocódigo, un lenguaje de programación imperativa
simple y en castellano.
38
Ing. Darwin Sánchez
Programación
39
Pseint - tipos de datos
En el mundo de la programación se manejan mucha información, la cual esta
conformada por datos.
¿Qué es un carácter?
Los lenguajes de programación han optado en clasificar esos datos para indicar
al ordenador que clase de operación se va a procesar.
Pseint – operadores
Este Pseudo - lenguaje dispone de un conjunto básico de operadores que
pueden ser utilizados para la construcción de expresiones más o menos
complejas.
Las siguientes tablas exhiben la totalidad de los operadores de este lenguaje
reducido:
40
Ing. Darwin Sánchez
Programación
Proceso Lógico
Definir mu1, num2 Como Entero;
Definir resultado Como Lógico;
num1<-67;
num2<-78;
resultado<-num1<num2 | num1 <=num2;
Escribir resultado;
FinProceso
41
Dado un número que es ingresado en segundos, convertir dicho número a
minutos y segundos respectivamente.
Algoritmo Convertidor
Definir n, min,seg Como Entero;
Escribir Sin Saltar "Ingresa un número en segundos: ";
Leer n;
min<-trunc(n/60);
seg <- n-(min*60);
Escribir "Los minutos del número dado son: ", min;
Escribir "Los segundos del número dado son: ", seg;
FinAlgoritmo
Algoritmo
Definir a, b, c Como Entero;
a <-10;
b<-5;
c<-5+3*2/3*3+5;
Escribir c;
Fin Algoritmo
42
Ing. Darwin Sánchez
Programación
Encontrar personas que tengan mayor igual que 18 y menor que 90.
Proceso Lógica
Definir edad Como Entero;
Escribir “Ingrese un número”;
Leer edad;
Si ((edad>=18)y(edad<90)) Entonces
Escribir “Esta es la persona que estamos buscando”
Fin si
FinProceso
43
intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber
cuánto dinero tendrá finalmente en su cuenta.
Algoritmo Inversión
Definir cap,interes capfinal Como Real;
Definir ti Como Entero;
Escribir “Cantidad a invertir”;
Leer cap;
Escribir “Tasa de interes”;
Leer ti;
Interés<- cap*ti/100;
Si interés>7000 Entonces
Capfinal<-cap+interés;
Sino
FinSi
Escribir “su capital es: “, capfinal;
FinAlgoritmo
Ejercicio Propuesto
44
Ing. Darwin Sánchez
Programación
Si <Condición> entonces
Instruciones
(sentencias);
Sino
Instruciones
(sentencias);
FinSi
Ejemplo 1
Análisis
Algoritmo Calificaciones
Definir n1, n2, n3 como Entero;
Definir prom como Real;
Escribir "Ingrese Nota 01 : ";
Leer n1;
Escribir "Ingrese Nota 02 : ";
Leer n2;
Escribir "Ingrese Nota 03 : ";
Leer n3;
Prom <- (n1+n2+n3)/3;
Si prom > 6.99 Entonces
Escribir "APROBADO : ", Prom;
SiNo
Escribir "DESAPROBADO : ", Prom;
FinSi
FinAlgoritmo
Ejemplo 2
45
Programa un algoritmo que lea tres números y los imprima de mayor a menor y
de menor a mayor.
Análisis:
Lo primero sería ordenar por descarte:
Por ejemplo: Si n1 > n2 y n1 > n3, si se sabe que n1 es el
mayor, por lo tanto faltaría preguntar si n2 > n3, si resulta
verdadero n2 es mayor que n3 entonces se sabe que: n1 es
mayor, n2 es intermedio y n3 es el menor y se imprimen en
ese orden
Algoritmo
Algoritmo OrdenarTresNumeros
Definir n1, n2, n3, s, t, p como Entero;
Escribir "Ingrese Número 01 : ";
Leer n1;
Escribir "Ingrese Número 02 : ";
Leer n2;
Escribir "Ingrese Número 03 : ";
Leer n3;
Si (n1 > n2) Y (n1 > n3) Entonces
p <- n1;
Si n2 > n3 Entonces
s <- n2;
t <- n3;
SiNo
s <- n3;
T <- N2;
FinSi
SiNo
Si n2 > n3 Entonces
P <- n2;
Si n1 > n3 Entonces
S <- n1;
T <- n3;
SiNo
s <- n3;
t <- n1;
FinSi
SiNo
p <- n3;
46
Ing. Darwin Sánchez
Programación
Si n1 > n2 Entonces
s <- n1;
t <- n2;
SiNo
s <- n2;
t <- n1;
FinSi
FinSi
FinSi
Escribir "Descendente : ", p, " - ", s, " - ", t;
Escribir "Ascendente : ", t, " - ", s, " - ", p;
FinAlgoritmo
Ejercicio 1
47
Análisis:
Se guarda el número ingresado en una variable y luego
comparar cada variable con un valor de 1 al 12; si
corresponde a un número en ese rango muestra por
pantalla o imprime el mes que corresponde, Ejemplo: 1 =
Enero, 2 = Febrero, 3 = Marzo, etc.
1. Variable de entrada: num - Guarda un número del 1 al
12.
2. Variable de salida: Muestra por pantalla el mes que
corresponde según el valor de num.
3. Proceso: Lee la variable NUM y compara si se
encuentra dentro de la estructura de selección, si la
encuentra muestra el mes que corresponde.
Algoritmo
Proceso mesesAnio
Definir num como Entero;
Escribir "POR FAVOR INGRESE EL MES (NÚMERO) ==> ";
Leer num;
Segun num Hacer
1: Escribir "ENERO";
2: Escribir "FEBRERO";
3: Escribir "MARZO";
4: Escribir "ABRIL";
5: Escribir "MAYO";
6: Escribir "JUNIO";
7: Escribir "JULIO";
8: Escribir "AGOSTO";
9: Escribir "SETIEMBRE";
10: Escribir "OCTUBRE";
11: Escribir "NOVIEMBRE";
12: Escribir "DICIEMBRE";
De Otro Modo:
Escribir "POR FAVOR INGRESE UN NÚMERO DE MES VÁLIDO";
FinSegun
FinProceso
48
Ing. Darwin Sánchez
Programación
49
Para <variable> <- <inicial>
Hasta <final> Con Paso <paso>
Hacer
<instrucciones>
FinPara
Figura 9: Fuente PseInt
Ejemplo 1
Elaborar un programa que permita ingresar un número entero del 1 al 12 y
muestre la tabla de multiplicar de dicho número.
Análisis
En este caso se trabajará con un ciclo repetitivo el cual
irá desde el 1 hasta el 12 y en una variable se guardará
el resultado de la multiplicación con un valor ingresado;
generando así las tablas de multiplicar.
Algoritmo
Algoritmo TablaMultiplicar
Definir i, num como Entero;
Escribir "Ingrese un Número del 1 - 12 : ";
Leer num;
Para i <-1 Hasta 12 Con Paso 1 Hacer
Escribir cont, " X ", i, " = ", (i * num);
50
Ing. Darwin Sánchez
Programación
FinPara
FinAlgoritmo
Ejemplo 2
Análisis
51
Tener en cuenta que para ejecutar una estructura de control
“mientras” se debe realizar controles de ejecución, es decir ser
capaces de controlar la condición, y de no hacerlo el bucle se
torna infinito.
Ejemplo 1
Hacer un programa que calcule la suma de los n primeros números naturales,
dónde n es el número límite ingresado por teclado.
Análisis
Algoritmo
Algoritmo SumaNumeros
Definir Cont, Num, Suma como Entero;
Cont <- 0;
Suma <- 0;
Escribir "Ingrese un Número : ";
Leer Num;
Mientras Cont <= Num Hacer
Suma <- Suma + Cont;
Cont <- Cont + 1;
FinMientras
Escribir "La Suma es : ", Suma;
FinAlgoritmo
Ejercicio 2
Ingresar un número cualquiera de varias cifras y devolver el mismo número con sus
cifras invertidas.
Análisis
52
Ing. Darwin Sánchez
Programación
Algoritmo
Algoritmo NumeroAlReves
53
Actividad de Aprendizaje 4 de la Unidad Didáctica II:
Estructuras repetitivas “repetir’”
La instrucción “Repetir-Hasta Que” ejecuta una secuencia de instrucciones
hasta que la condición sea verdadera.
Ejemplo 1
54
Ing. Darwin Sánchez
Programación
Algoritmo
Proceso login
Definir secreto, clave como cadena;
secreto <- "asdasd";
Repetir
Escribir "Dime la clave:";
Leer clave;
Si clave<>secreto Entonces
Escribir "Clave incorrecta!!!";
FinSi
Hasta Que clave=secreto
Escribir "Bienvenido!!!";
Escribir "Programa terminado";
FinProceso
Sintaxis
Funcion Sumar ()
Fin Funcion
55
Argumentos: los argumentos son variables que requiere la
función, utilizando comas para separarlos, si el subproceso o
función no requiere argumentos puede dejarse en blanco, y de
manera opcional omitir los paréntesis
Ejemplo 1
Funcion datos()
Definir nombre Como Caracter;
Definir edad Como Entero;
Escribir "Ingrese su nombre"
Leer nombre;
Escribir "Ingrese su edad "
Leer edad;
FinFuncion
Algoritmo usuario
Datos();
FinAlgoritmo
Ejemplo 2
SubProceso s<-sumar()
s<-10+5;
FinSubProceso
Algoritmo suma
Escribir "La suma es : " sumar();
FinAlgoritmo
56
Ing. Darwin Sánchez
Programación
57
Unidad Didáctica III
Título de la Unidad Didáctica III:
Introducción al lenguaje de programación C
Introducción de la Unidad Didáctica III:
¿Por qué escribir programas a una computadora es lo que se puede decir una
máquina? o puede decir una máquina de propósito general el uso de la
computadora es lo que puede ser que puede realizar cualquier tarea cualquier
tarea computacional, no cualquier tarea computacional que pueda realizar bien,
pero ¿cómo te comunicas con la computadora? como supongamos que si
quieres sumar dos números, entonces es no así dirás hey computadora quiero
sumar dos números cuatro y cinco así que dime cuál es la edición de cuatro y
cinco ninguna computadora no entenderá tu idioma, así que ahora lo que harás
de ahora en adelante es escribir algunas instrucciones que puedes decir
secuencia de instrucciones.
El lenguaje C++ es un lenguaje de propósito general más avanzado que el
lenguaje C por así decirlo es una colección de comando declaraciones más
adelante veremos por qué para qué se usa se usa para la creación de
programas de computación en el área de la informática.
58
Ing. Darwin Sánchez
Programación
59
Identificadores
Un identificador es el nombre que se le asigna a un elemento de las
instrucciones de un algoritmo o programa, es decir es el nombre que usará
para hacer referencia para las operaciones.
Identificadores predefinidos:
Son aquellos nombres que proporciona el programa es decir que son palabras
reservadas propias del programa las cuales no se pueden utilizar en el
desarrollo de algoritmos.
- el primer carácter debe ser siempre una letra o también puede estar
conformado por un guion (_) cuando se forman dos palabras la segunda
palabra inicia con la letra mayúscula y pegada al nombre, es por
convención.
60
Ing. Darwin Sánchez
Programación
Formatos de identificadores
61
Actividad de Aprendizaje 2 de la Unidad Didáctica III
Variables
Es un espacio que se reserva en memoria para almacenar datos, los datos
pueden variar a lo largo del proceso de un programa
Declaración de Variables
< tipo de dato> < lista de variables (separadas por comas)>; float f,c,d;
Ejemplo
Declaración Ejemplo asignación contenidos
int A; A = 123;
float A; A = - 3323.57;
char A; A = 'p';
char A; A = '1';
int salario; salario = 30500;
float salario; salario = 30500;
int A, B, suma; A = 5 + 2;
B = 32;
suma = A + B; [suma valdrá 39]
int A, B, C, D, A = 5;
E; B = 32;
C = A * B; [C toma el valor 160]
D = A + C; [D toma el valor 165]
E = D; [E toma el valor 165]
int agotamiento = 0; [Usamos un entero para simular un
agotamiento; booleano]
62
Ing. Darwin Sánchez
Programación
Declaración de constantes
Se utiliza la palabra reservada const la cual indica el valor de la variable no se
puede modificar.
Constantes definidas
Para declarar estas se utiliza la palabra reservada #define y la sintaxis se
escribe de la siguiente manera:
63
Actividad de Aprendizaje 4 de la Unidad Didáctica III
Entrada de datos en c++
La entrada de datos significa que que se realizará una interacción con el
usuario es decir se capturará todos los datos que ingrese mediante teclado u
otro dispositivo hacia el computador.
64
Ing. Darwin Sánchez
Programación
Ejemplos
#include "iostream"
#include "string"
using namespace std;
int main()
{
cout << "Por favor ingrese su nombre:" << "\n";
string nombre;
cin >> nombre;
cout << "Bienvenido al sistema " << nombre;
return 0;
}
Instrucción getline();
Este significa que capturara el dato aunque el valor del nombre incluye
espacios no haya fallas y usa el valor completo introducido por el usuario.
Ejemplo
#include "iostream"
#include "string"
using namespace std;
int main()
{
cout << "Hola! Este es un ejemplo en C++";
string nombre;
//cin >> nombre;
getline(cin, nombre);
65
cout << "Bienvenido al sistema ";
return 0;
}
Instrucción scanf()
Ejemplo
#include "string"
int main()
{
char temporal[100];
printf("Tu nombre?\n");
scanf("%100s", temporal);
string nombre = temporal;
printf("Te doy la bienvenida %s", nombre.c_str());
return 0;
}
Ejemplo
#include "iostream"
#include "string"
using namespace std;
int main()
{
string salida1 = "Ejemplo de salida";
int numero = 2;
66
Ing. Darwin Sánchez
Programación
Instrucción cout
Mostrar texto por pantalla en C++ es muy simple. Para imprimir una salida de
texto en C++ se hace uso de la instrucción cout, junto con “<<”,
Ejemplo
#include "iostream"
using namespace std;
int main()
{
cout << "Hola Mundo" << " Desde ProgramarYa." << "\n";
return 0;
}
Ejemplos
#include <iostream>
using namespace std;
int main()
{
67
char x = 'a'; // Declaramos y asignamos en la misma línea
int num; //Declaramos el entero en una línea
num = 5; //Le asignamos un valor en otra línea
int num2 = 8; //Asignacion y declaracion al tiempo
float numero; //Un numero decimal
numero = 3.5; //Le asignamos un valor al decimal
float res = numero + num2; //Sumamos dos variables
res = res + num; //Al valor actual de res le sumamos el
valor de num
//11.5 + 5 = 16.5
return 0;
}
Operadores Matemáticos
Los operadores matemáticos son aquellos que permiten realizar cálculos con
valores numéricos con el fin de obtener resultados. los operadores aritméticos
los más usados son los de suma resta multiplicación y división.
Operador Descripción
Operador = Asignación
Operador * Multiplicación
Operador / División
Operador Residuo de la
% división
Operador + Suma
Operador - Resta
Operador -- Restar 1
Operador Sumar 1
++
68
Ing. Darwin Sánchez
Programación
Ejemplo
#include <stdio.h>
#include <stdlib.h>
int main() {
int a = 11; int b = 3; int c = 9; int d = 5;
printf ("A vale %d, B vale %d, C vale %d, D vale %d\n", a,
b, c, d);
printf ("Operador *: doble de A vale %d\n", a*2);
printf ("Operador +: A mas B vale %d\n", a+b);
printf ("Operador -: A menos B vale %d\n", a-b);
printf ("Operador /: C entre B vale %d\n", c/b);
printf ("Operador mod: Residuo de A entre B es %d\n", a%b);
printf ("Ejecutar A entre B vale %d no es exacto \n", a/b);
//Expresiones abreviadas
a +=b; //Equivale a A=A+B
c *=d; //Equivale a C=C*D;
printf ("A vale %d, B vale %d, C vale %d, D vale %d\n", a, b, c,
d);
return 0;
}
Operadores lógicos
Los operadores lógicos devuelven un resultado booleano, específicamente se
debe utilizar tipos de datos booleanos para resolver expresiones con
operadores lógicos, es decir que se obtiene valores de verdadero y falso, los
operadores lógicos se manifiestan de la siguiente manera:
Operad Descripción
or
&& AND lógico Ejemplo A&&B la operación resulta verdadera solo si
ambos son verdaderos.
69
|| A | | B OR lógico la operación resulta verdadera sólo si al menos uno
de los dos valores que se evalúan es verdadero.
! Es una negación lógica, La operación resulta contraria al valor
asignado.
== Comparación
> Mayor que
< Menor Que
<= Menor o igual
>= Mayor o igual
Estructuras de control if
Una estructura de control if es una estructura que manifiesta una condición las
mismas que permiten tomar una decisión de acuerdo a nuestro algoritmo, es
decir ejecutan ciertas instrucciones cuando la prueba lógica resulta verdadera,
caso contrario sale del if y ejecuta el siguiente código.
Estos procesos en apartados anteriores se han revisado y funcionan de la
misma forma, la única diferencia es la sintaxis del código.
Sintaxis
if(condición a evaluar)
{
....
....
Bloque de Instrucciones si se cumple la condición....
....
....
}
Estructura de control if else
La estructura de control if else funciona de la misma manera que funciona la
estructura condicional if pero se le adiciona la parte del caso contrario, es decir
si la condición ejecutada en el if resulta falso entonces se ejecutará las
instrucciones que se encuentran en el else; y su sintaxis es la siguiente:
if(condición a evaluar)
{
....
Instrucciones si se cumple la condición....
70
Ing. Darwin Sánchez
Programación
....
}
else
{
....
Instrucciones si NO se cumple la condición....
....
}
Ejemplo
#include "iostream"
#include "string"
#include "stdlib.h"
using namespace std;
int main()
{
string password = "";
cout << "Ingrese la contrasenia: ";
cin >> password;
if(password == "myClave")
{
cout << "Contrasenia correcta. Bienvenido";
}
else
{
cout << "Contrasenia incorrecta.";
}
system("PAUSE");
return 0;
}
Estructuras de control Switch
La estructura de control switch es una estructura condicional de control múltiple
en el cual me permite definir múltiples casos que puedan llegar a cumplir una
condición, es decir; si la variable controlada colocada en el switch me da como
resultado un valor puesto en un caso, entonces realizará las instrucciones que
se encuentren en dicho caso; si se da la situación en que no pertenezca en
71
dato obtenido a ningún caso establecido en el switch entonces ejecutará la
instrucción por defecto, que tan bien se debe especificar. y su sintaxis es la
siguiente:
Ejemplo
# include "iostream"
using namespace std;
int main()
{
cout << "Ingrese la Opción a ejecutar: ";
intz op;
cin >> op;
switch(op)
{
case 1: cout << "Usted ha seleccionado la opción a";
break;
case 2: cout << "Usted ha seleccionado la opción b";
break;
case 3: cout << "Usted ha seleccionado la opción c";
break;
default: cout << "Usted ha ingresado una opción
incorrecta";
}
return 0;
}
72
Ing. Darwin Sánchez
Programación
Ejemplo
#include "iostream"
#include "stdlib.h"
for(int i=50;i<=100;i+=2)
{//Notemos que escribir i+=2 es similar a escribir i = i + 2
cout << i << endl;
}
system("PAUSE");
return 0;
}
Los bucles while son también estructuras cíclicas que permiten ejecutar varias
instrucciones de manera iterativa, en este caso sin necesidad de conocer un
valor inicial y un valor final es decir, que dependen directamente de una
condición dada. De este modo este tipo de instrucciones resulta más efectivas
para condiciones indeterminadas lo que significa que dentro del proceso de un
73
programa puedan existir condiciones cambiantes entonces escoger la opción
de bucle while le ayudará a solucionar el problema; y su sintaxis es la siguiente:
Ejemplo
Pedir números por pantalla hasta que alguno sea mayor a 100
#include "iostream"
Los bucles de while son también estructuras cíclicas que permiten ejecutar
varias instrucciones de manera interactiva en este caso sin conocer un valor
inicial y un valor final es decir coma que dependen directamente de una
condición dada de este modo este tipo de instrucciones nos resulta muy útil
para condiciones indeterminadas; y como dato adicional el ciclo do while los
presenta cierta ventaja, ya que ejecuta el código al menos una vez y luego
pregunta en el condicional y si la respuesta es verdadera vuelve a ejecutar el
74
Ing. Darwin Sánchez
Programación
do
{
....
Bloque de Instrucciones....
....
}
while(condición de finalización);
Ejemplo
Pedir números por pantalla hasta que alguno sea mayor a 100
#include "iostream"
using namespace std;
int main()
{
int numero;
do
{
cout << "Ingrese un numero ";
cin >> numero;
}
while(numero <= 100);
system("PAUSE");
return 0;
}
#include<iostream>
using namespace std;
int main() {
float costo;
int edad, interruptor;
75
string sexo;
cout << "Ingrese el Sexo (H/M) : ";
cin >> sexo;
cout << "Ingrese la Edad : ";
cin >> edad;
if(sexo == "H"){
interruptor = 1;
}else{
interruptor = 2;
}
costo = 0;
switch(interruptor){
case 1:
if(edad < 25){
costo = 3;
}else{
costo = 2;
}
break;
case 2:
if(edad < 21){
costo = 1;
}
break;
}
cout << "\n EDAD : " << edad<< “ Años”;
cout << "\n SEXO : " << sexo;
cout << "\n PAGO : " << costo << “ Dolares”;
return 0;
}
Ejercicios de Taller
1. Ejercicio Porcentaje de notas de un alumno
La calificación final de un estudiante es la media ponderada de
tres notas: la nota de prácticas que cuenta un 30% del total, la
nota teórica que cuenta un 60% y la nota de participación que
cuenta el 10% restante. Escriba un programa que lea de la
entrada estándar las tres notas de un alumno y escriba en la
salida estándar su nota final.
2. Ejercicio Número mágico
Realice un programa que solicite al usuario que piense un
número entero entre el 1 y el 100. El programa debe generar un
76
Ing. Darwin Sánchez
Programación
77
Unidad Didáctica 4
Título de la Unidad Didáctica 4:
Proceso De Programación
Introducción de la Unidad Didáctica 4:
La presente unidad de trabajo presenta unidad se trata de lograr que el
estudiante conozca la forma de trabajo de las herramientas de programación.
La programación en lenguaje C++de datos es un tema muy importante que
permite al estudiante familiarizarse con las herramientas de programación
estructurada, la programación que se describe es a través de codificación de
algoritmos, que representan una funcionalidad en cada proceso de forma
secuencial.
78
Ing. Darwin Sánchez
Programación
79
Comentarios en la Estructura
Se refiere a establecer secciones de código en las cuales estas no se
ejecutarán porque solo se encuentran comentadas con los símbolos //, /**/,
entonces al realizar la secuencia de instrucciones el compilador las pasará por
alto, es decir no se ejecutará ninguna instrucción que se encuentre como
comentario, y se utiliza de la siguiente manera:
Analizando
# include <iostream>
80
Ing. Darwin Sánchez
Programación
int main()
retrun 0
82
Ing. Darwin Sánchez
Programación
Tipos de funciones
Vectores
Son espacios en memoria nombrados con un identificador el mismo que
almacena más de un dato del mismo tipo, es decir que podemos almacenar
varios datos que sean de lo mismo y su sintaxis es la siguiente:
Ejemplo
int my_vector1[10];
float my_vector2[25];
string my_vector3[500];
bool my_vector4[1000];
char my_vector5[2];
84
Ing. Darwin Sánchez
Programación
int vector[4];
vector[0] = 2;
vector[1] = 4;
vector[2] = 6;
vector[3] = 8;
cout<<vector[2];
Cadenas de Caracteres
Las cadenas de caracteres se manejan con una librería llamada String, este
tipo de dato por su naturaleza es cualquier carácter que se digite por teclado,
cuando se digitan números y el tipo de dato es string, éste pierde su propiedad
numérica, es decir no se puede realizar operaciones matemáticas.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string cadena1 = "Ejemplo de cadena 1";
int num = 7;
string cadena2 = "Ejemplo de cadena 2";
printf("%s %d. %s \n", cadena1.c_str(), numero,
cadena2.c_str());
return 0;
}
Recursividad
Es una opción que puede adoptar una función, al resolver un ejercicio, bajo la
modalidad de llamarse Así mismo, es decir la misma función se ejecuta una y
otra vez como un bucle o iteración, como se muestra en el siguiente ejemplo:
/* Función recursiva*/
int funcionr(int n) {
if(n < 0) return 0;
85
else if(n > 1) return n*funcionr(n-1);
return 1;
}
86
Ing. Darwin Sánchez