Software">
Nothing Special   »   [go: up one dir, main page]

Prog1 01

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 114

UNIVERSIDAD AUTÓNOMA DEL

ESTADO DE MÉXICO
FACULTAD DE GEOGRAFÍA
LICENCIATURA EN GEOINFORMÁTICA (2023-B) 1-I

PROGRAMACIÓN I
M. en C.A JOSAFAT MONDRAGÓN MACEDO

prog1.geoinfo@gmail.com
WhatsApp: 7225123045 Horarios
Martes: 10 – 13
Jueves: 10 - 12
• 1I_NOMBRE_COMPLETO_ALUMNO_PROGRAMA01
• 1I_JUAN_DAMIAN_GOMEZ_VILCHIS_PROGRAMA01
Evaluación: Cel: 7225123045

Primer Parcial: Unidad I, Unidad II


• Actividades: Tareas, Ejercicios en clase(prácticas), Si el grupo en general se aplica, se puede
asistencia, participación 40 cambiar el examen del primer parcial, por un
• Examen: Teórico – práctico 60 proyecto final.
Hora de entrada:
100 Martes: 10 – 13
Jueves: 10 – 12

Tolerancia: 5 minutos, después de las


Segundo Parcial: Unidad I, Unidad II 10:05 se coloca falta
• Actividades: Tareas, Ejercicios en clase(prácticas),
asistencia, participación 40 Para tener derecho primer y segundo parcial:
• Práctico – Proyecto Final 60 • 80 % de asistencia: ordinario
• 60 % de asistencia: extraordinario
100 • 40 % de asistencia: Título
Herramientas a utilizar

• Pseint: pseudocódigo
• Python: Programas de escritorio

Entrega de trabajos:

1I_NOMBRE_APELLIDO1_APELLIDO2
1I_ALBERTO_HERNÁNDEZ_HERNÁNDEZ
Unidad 1. Fundamentos de la programación de
computadoras.
Objetivo: Distinguir los conceptos relacionados con la programación de
computadoras, los lenguajes de programación y el diseño de programas, a
través de casos prácticos.
Temas:
1.1 Definiciones básicas
1.2 Forma de trabajo del software
1.3 Proceso de ejecución de los programas de computadora
1.4 Herramientas para el diseño y construcción de programas
1.4.1 Diseño de algoritmos
1.4.2 Estructura de un programa de computadora
1.4.3 Construcción de un pseudocódigo
Preguntas

• ¿Es necesario saber inglés para programar?


• ¿Son importantes las matemáticas para programar?
• ¿Qué necesito para aprender a programar?
• ¿Es difícil aprender a programar?
• ¿Cuánto tiempo me va a tomar aprender a programar?
• ¿Qué debo hacer para aprender a programar?
• ¿Con qué lenguaje de programación debo comenzar?
Fundamentos de la
programación de
computadoras
Introducción

Los fundamentos de la programación de computadoras se refieren a los conceptos


básicos y principios que sustentan la creación de programas informáticos. Estos
fundamentos son esenciales para comprender y desarrollar soluciones de software de
manera efectiva. Algunos de los principales fundamentos de la programación de
computadoras incluyen:
Lógica y estructuras de control: La programación implica la habilidad de crear algoritmos y utilizar estructuras de
control, como bucles y condicionales, para controlar el flujo de ejecución de un programa y tomar decisiones.

Tipos de datos y variables: Los programas manejan Programación orientada a objetos: La programación
diferentes tipos de datos, como números enteros, orientada a objetos (POO) es un paradigma que se basa
decimales, cadenas de texto, booleanos, entre otros. en la creación de objetos que encapsulan datos y
Las variables se utilizan para almacenar y manipular funciones relacionadas. La POO se centra en la
estos datos en la memoria de la computadora. reutilización de código, la abstracción y la organización
estructurada del software.
Estructuras de datos: Las estructuras de datos son
formas de organizar y almacenar datos en la memoria Depuración y manejo de errores: La depuración es el
de una computadora. Algunos ejemplos comunes son proceso de identificar y corregir errores en un
arreglos, listas enlazadas, pilas y colas. Estas programa. Aprender a manejar y solucionar los errores
estructuras son fundamentales para la eficiencia y es fundamental para mejorar la calidad y la
organización de los programas. confiabilidad del software.

Funciones y módulos: Las funciones son bloques de


código reutilizables que realizan tareas específicas. Los Pruebas y control de calidad: La programación implica
módulos son archivos que agrupan funciones y otros realizar pruebas exhaustivas para verificar el correcto
elementos relacionados. La modularidad facilita la funcionamiento del software. El control de calidad se
división de un programa en partes más pequeñas y enfoca en asegurar que el software cumpla con los
manejables. estándares y requisitos establecidos.
Definiciones básicas
Algoritmo Ciclos / bucles

Compilador Condicionales

Lenguaje de programación Programación Orientada a Objetos

Depuración Bibliotecas y Frameworks

Interfaz de Programación de
Variables
Aplicaciones

Funciones Paradigmas de Programación


Fundamentos de la
Software (Programas) programación de
computadoras

• El software de una computadora es un conjunto de instrucciones de programa


detalladas que controlan y coordinan los componentes hardware de una
computadora y controlan las operaciones de un sistema informático.
• Las operaciones que debe realizar el hardware son especificadas por una lista
de instrucciones, llamadas programas, o software. Un programa de software es
un conjunto de sentencias o instrucciones a la computadora. El proceso de
escritura o codificación de un programa se denomina programación y las
personas que se especializan en esta actividad se denominan programadores.
• Existen dos tipos importantes de software: software del sistema y software de
aplicaciones. Cada tipo realiza una función diferente.
Fundamentos de la
Software del sistema programación de
computadoras

• El software del sistema es el conjunto de programas indispensables para que


la máquina funcione; se denominan también programas del sistema. Estos
programas son, básicamente, el sistema operativo, los editores de texto, los
compiladores/intérpretes (lenguajes de programación) y los programas de
utilidad.
Fundamentos de la
Software de aplicación programación de
computadoras

• El software de aplicación tiene como función principal asistir y ayudar a un


usuario de una computadora para ejecutar tareas específicas. Los programas
de aplicación se pueden desarrollar con diferentes lenguajes y herramientas de
software.
• Los lenguajes de programación sirven para escribir programas que permitan la
comunicación usuario/máquina. Unos programas especiales llamados
traductores (compiladores o intérpretes) convierten las instrucciones escritas
en lenguajes de programación en instrucciones escritas en lenguajes máquina
(0 y 1, bits) que ésta pueda entender.
Fundamentos de la
Sistema operativo programación de
computadoras

• Un sistema operativo SO (Operating System, OS) es tal vez la parte más


importante del software del sistema y es el software que controla y gestiona
los recursos de la computadora. En la práctica el sistema operativo es la
colección de programas de computadora que controla la interacción del
usuario y el hardware de la computadora.
• El sistema operativo asigna recursos, planifica el uso de recursos y tareas de la
computadora, y monitoriza las actividad es del sistema informático.
Fundamentos de la
Lenguajes de programación programación de
computadoras

• Cuando el procesador es una computadora, el algoritmo se ha de expresar en


un formato que se denomina programa, ya que el pseudocódigo o el diagrama
de flujo no son comprensibles por la computadora, aunque pueda entenderlos
cualquier programador. Un programa se escribe en un lenguaje de
programación y las operaciones que conducen a expresar un algoritmo en
forma de programa se llaman programación. Así pues, los lenguajes utilizados
para escribir programas de computadoras son los lenguajes de programación y
programadores son los escritores y diseñadores de programas. El proceso de
traducir un algoritmo en pseudocódigo a un lenguaje de programación se
denomina codificación, y el algoritmo escrito en un lenguaje de programación
se denomina código fuente.
Fundamentos de la
programación de
computadoras

Proceso de transformación de un algoritmo en pseudocódigo en un programa ejecutable.


Fundamentos de la
Principales Lenguajes de Programación programación de
computadoras
Fundamentos de la
Lenguajes de programación programación de
computadoras

• Un lenguaje de programación es el entorno donde se escribe una serie de


instrucciones para que el hardware del ordenador efectúe cualquier operación.
• Un lenguaje de programación es el que la máquina entiende.
• Los programadores escriben instrucciones en diversos lenguajes de
programación, algunos de los cuales los comprende directamente la
computadora, mientras que otros requieren pasos intermedios de traducción.
Estos se dividen en tres tipos:
❑Lenguajes máquina
❑Lenguajes de bajo nivel
❑Lenguajes de alto nivel
Fundamentos de la
Lenguaje Máquina programación de
computadoras

Lenguaje Máquina
• Cualquier computadora puede entender de manera directa
sólo su propio lenguaje máquina, el cual se define según su
diseño de hardware. Por lo general, los lenguajes máquina
consisten en cadenas de números (1 y 0) que instruyen a las
computadoras para realizar sus operaciones más elementales,
una a la vez. Los lenguajes máquina son dependientes de la
máquina (es decir, un lenguaje máquina en particular puede
usarse sólo en un tipo de computadora). Dichos lenguajes son
difíciles de comprender para los humanos. Por ejemplo, he
aquí la sección de uno de los primeros programas en lenguaje
máquina, el cual suma el pago de las horas extras al sueldo
base y almacena el resultado en el sueldo bruto:
• +1300042774
• +1400593419
• +1200274027
Fundamentos de la
Lenguaje de Bajo Nivel (Ensamblador) programación de
computadoras

Lenguaje de bajo nivel (ensamblador)


• su funcionalidad era manejar el hardware de una manera más
amena. Su estructura corresponde a la identificación total de
cada uno de los elementos del ordenador y representarlos
sobre una serie de registros o campos en la memoria. Para este
tipo de lenguaje se necesita un conocimiento extenso de cada
uno de los registros para evitar borrar o modificar alguno sin
verse afectado la integridad del sistema.
• La siguiente sección de un programa en LENGUAJE
ENSAMBLADOR también suma el pago de las horas extras al
sueldo base y almacena el resultado en el sueldo bruto.
• Load sueldobase
• Add sueldoextra
• Store sueldobruto
Fundamentos de la
Lenguaje de Alto Nivel programación de
computadoras

• Lenguaje de Alto Nivel


• Este tipo de lenguajes emplean términos más cercanos a
las estructuras gramaticales de los lenguajes del hombre.
Es decir, existen palabras y gramática que son usadas
comúnmente por las distintas lenguas de habla, por
ejemplo, si se desea mostrar un mensaje por pantalla
que diga “Hola”, se diría simplemente, muestre o escriba
“Hola” ahora veamos la similitud que tienen algunos
lenguajes:
Traductores de lenguaje: el proceso de traducción de
un programa (compilación)

• El proceso de traducción de un programa fuente escrito en un lenguaje de alto


nivel a un lenguaje máquina comprensible por la computadora, se realiza
mediante programas llamados “traductores”. Los traductores de lenguaje son
programas que traducen a su vez los programas fuente escritos en lenguajes de
alto nivel a código máquina. Los traductores se dividen en compiladores
e intérpretes.
¿cómo me comunico con
la computadora?
Información - Teclado, pantalla,
monitor, mouse, cámaras,
datos teléfonos, micrófonos,
etc.. Modem → internet Fundamentos de la
Texto, dibujo, sónido, programación de
imágenes computadoras

computadora Lenguaje binario: 0-1

programas
Entrada salida Conjunto de
Hardware Software instrucciones

Programas de computadora

Software del SO Software de APP


Lenguajes de
Programadores programas programación
De computadoras
interpretes

traductores compiladores
System.out.println(“HOLA, BIENVENIDO A TÚ CLASE DE PROGRAMACIÓN I”);

Print (“HOLA, BIENVENIDO A TÚ CLASE DE PROGRAMACIÓN I”);


Fundamentos de la
¿Qué es programar? programación de
computadoras

• La programación requiere escribir instrucciones para realizar una serie de


acciones que se irán ejecutando una a una hasta obtener una solución; sin
embargo, antes de ello es necesario aprender a realizar algoritmos.
Fundamentos de la

Algoritmo - Problema programación de


computadoras

• Casi inconscientemente, los humanos efectuamos cotidianamente una serie de


pasos, procedimientos o acciones que nos permiten alcanzar un resultado o
resolver un problema.
• Esta serie de pasos, procedimientos o acciones, comenzamos a aplicarlas muy
temprano en la mañana cuando, por ejemplo decidimos tomar un baño.
Posteriormente cuando pasamos a desayunar también seguimos una serie de
pasos que nos permiten alcanzar un resultado específico: tomar el desayuno.
La historia se repite innumerables veces durante el día. Continuamente
seguimos una serie de pasos o conjunto de acciones que nos permiten
alcanzar un resultado. Estamos en realidad aplicando un algoritmo para
resolver un problema.
Fundamentos de la

Algoritmo - Problema programación de


computadoras

• El proceso de resolución de un problema con una computadora conduce a la


escritura de un programa y a su ejecución en la misma. Aunque el proceso de
diseñar programas es, esencialmente, un proceso creativo, se puede considerar
una serie de fases o pasos comunes, que generalmente deben seguir todos los
programadores.
Fundamentos de la

Algoritmo programación de
computadoras

• Beber agua
• “formalmente definimos un algoritmo como un conjunto de 1.Sacar vaso del mueble
pasos ordenados de forma lógica, procedimientos o acciones 2.Buscar recipiente
que nos permiten alcanzar un resultado o resolver un
problema” donde se tiene el agua
3.Lleno el vaso
• Es una secuencia ordenada y cronológica de pasos que llevan 4.Llevar el vaso a mi
a la solución de un problema o a la ejecución de una tarea.
Los pasos deben ser simples, claros y exactos seguir un orden boca
lógico y, además, tener un principio y un fin.
5.Trago el líquido
Fundamentos de la

Fases en la resolución de problemas programación de


computadoras

Codificación Ejecución,
Análisis del Diseño del
- verificación y Mantenimiento Documentación
problema algoritmo
implementación depuración
Fundamentos de la
Características de los algoritmos programación de
computadoras
Fundamentos de la
Secciones que debe cumplir un algoritmo programación de
computadoras

Algoritmo

ENTRADA PROCESO
Conocer el problema (instrucciones) SALIDA – FIN
Variables Procesos involucrados Resultados esperados
Datos que se necesitan restricciones

Sección 1 Sección 2 Sección 3


Fundamentos de la
Formas de representar un algoritmo programación de
computadoras

Palabras
Lenguaje natural

Pseudocódigo Gráficos

Diagramas de
flujo
Fundamentos de la
Palabras o Lenguaje Natural programación de
computadoras

SEMAFORO
1.INICIO
2.Paro frente al semáforo
3.Identifico en que color está
4.Si se encuentra en color rojo
4.1 ALTO
5 SI ESTA EN COLOR VERDE
5.1 VOLTEO A LOS LADOS
5.1.1 SI NO VIENE CARRO,
CRUZO
6 HE CRUZADO
7. FIN
Fundamentos de la
Diagrama de Flujo programación de
computadoras

• Representa la esquematización gráfica de un algoritmo, es decir,


muestra gráficamente los pasos o procesos a seguir para alcanzar la
solución de un problema.
inicio
Fundamentos de la
programación de
computadoras

N1, N2

Resultado  N1 + N2

“Imprime” + Resultado

inicio
Etapas para la construcción de un
diagrama de flujo
Fundamentos de la
Pseudocódigo programación de
computadoras

• El pseudocódigo es una técnica para diseño de programas (algoritmos) que


permite definir las estructuras de datos, las operaciones que se aplican a los
datos y la lógica que tendrá el programa de computadora para solucionar un
determinado problema. El pseudocódigo es muy parecido a nuestro idioma,
pero respeta las directrices y los elementos de los lenguajes de programación
estructurados. (Antes de escribir un programa, debo de pensar en el
algoritmo).
• Un concepto más es el de programa, el cual es un conjunto de instrucciones en
un lenguaje de programación que sigue la computadora para alcanzar un
resultado específico. Es la expresión de un algoritmo en un lenguaje de
programación.
• Programar, Indicar a la computadora qué es lo que tiene que hacer.
Fundamentos de la
Escritura de pseudocódigo programación de
computadoras

• Inicio
• Declaración de variables(tipo de dato);
• Expresiones y operaciones;
• REULTADO
• Fin
Fundamentos de la
Variables programación de
computadoras

• Las variables son objetos que pueden cambiar su valor durante la ejecución de
un programa. Dicha variable, cuenta con un nombre, tipo de dato y una
ubicación en memoria.
• Características para definir una variable
• Ejemplos para declarar variables

• No utilizar caracteres raros para las variables _


• canción_opera
• Identificador: los datos a procesar por una computadora, deben almacenarse en
casillas o celdas de memoria para su posterior utilización. Estas casillas o
celdas de memoria (constantes o variables) tienen un nombre que permiten su Fundamentos de la
programación de
identificación. computadoras

• Identificador, es el nombre que se les da a las casillas en memoria.

SUMA ACUM

Memoria
AUX NUM_1
Constantes
Variables
X7

Casillas en Memoria con nombres de identificadores


Fundamentos de la
Tipos de Datos programación de
computadoras

Tipo de dato Subtipo Descripción Variables Valores

nroEstudiantes
40
N Son un subconjunto finito de los números enteros. No
2015
u Enteros tienen componentes fraccionarios. Pueden ser positivos anio
3
m o negativos.
é nroLados
r
i sueldo 354,25
Variables cuyos VALORES TIENEN PARTE DECIMAL, aunque
c
al mismo tiempo puede contener valores enteros. Así el
o Reales lado de un triángulo puede ser 3,5 (0,5 es la parte
area 12,56
s decimal).
valorRadio 3,0
Tipo de Subtipo Descripción Variables Valores
dato
Fundamentos de la
En este tipo de dato se encuentran todos programación de
los caracteres conocidos, una letra, un computadoras
número, un símbolo especial. Por lo
tanto, está conformado por los

T
DÍGITOS:'0', '1', '2', ... , '9'; LETRAS: 'a', 'b',
’40’
'c', ... , 'z'; MAYÚSCULAS: 'A', 'B', 'C', ... , paralelo
‘2015’
Caracteres 'Z'; y CARACTERES ESPECIALES: '%', '*', '?',
‘3’

e
... , '/'. En algunos lenguajes de opcion
programación como Java y C#, se utiliza
la comilla simple (' ') para identificar un

x
caracter, sin embargo esto puede cambiar
dependiendo del lenguaje de
programación

t Constituyen conjuntos de caracteres, es


direccion
"Calle Juan León
Mera"
o Cadenas
decir la UNIÓN DE VARIOS CARACTERES,
que pueden ser palabras o frases. El valor
de este tipo de datos se encierra
nombre
"Sandra Vásquez"
generalmente entre comillas (" ").
"soltero"
estadoCivil
Fundamentos de la
programación de
computadoras

Tipo de Subtipo Descripción Variables Valores


dato
Los booleanos o tipos de datos lógicos,
L únicamente reciben dos valores: true ó
Ó false. Se utilizan generalmente como
banderas, para identificar si se realizó o
G
no un proceso. Más adelante se podrán True
I Boolean aplicar en ejemplos y comprender su bandera
C funcionamiento. Lo importante por ahora
es conocer que únicamente pueden tomar
O DOS VALORES: VERDADERO (true) o FALSO
S (false)
Operadores Fundamentos de la

aritméticos y programación de
computadoras

relacionales

div
10 Div 3 = 3 16

10 / 3 = 3.3333 6 97
- 96
LÓGICOS
1
RELACIONALES
ARITMÉTICOS
mod
DE INCREMENTO
DECREMENTO
Fundamentos de la
Jerarquía de Operadores aritméticos programación de
computadoras

Jerarquía de operadores aritméticos


Operador Jerarquía Operación
** Mayor potencia
*, /, mod, div Multiplicación, división, módulo, división entera
+,- Menor Suma, resta
Fundamentos de la
programación de
computadoras

Jerarquía de operadores

• ()
• Potencias
-Productos y Divisiones
-Sumas y restas
-Concatenación
-Relacionales
-Negación
-Conjunción
-Disyunción

La evaluación de los operadores de


igual orden se realiza siempre de
IZQUIERDA A DERECHA.
inicio

Impresión en Fundamentos de la
programación de
pantalla “Introduzca la base y la computadoras
altura
Ejemplo: Realizar el pseudocódigo de un programa que permita calcular el área de un
rectángulo. Se debe introducir la base y la altura para poder realizar“Introduzca
el cálculo..
la
Programa; Area base y la altura”

Entorno: BASE, ALTURA, AREA son número enteros


Algoritmo: AREA  BASE * ALTURA
1. Inicio
2.escribir “Introduzca la base y la altura”
“El área del rectángulo
3.leer BASE, ALTURA es: “ + AREA
4.calcular AREA = BASE * ALTURA
5.escribir “El área del rectángulo es: “ + AREA
6.Fin FINI
Ejemplos de Jerarquía de CASO C: 7 * 5 **3 / 4 div 3
Operadores
7 * 125 / 4 div 3 Fundamentos de la
programación de
computadoras
875 / 4 div 3
218.75 div 3
CASO A: 7+5–6 72
12 – 6
6
CASO B: 9 + 7 * 8 – 35 / 5
9 + 56 – 35 / 5 Expresiones lógicas con los operadores
9 + 56 – 7 relacionales
CASO D: A = 5 B = 16
65 – 7 (A ** 2) > (B * 2)
58 25 > (B * 2)
25 > 32
FALSO
Ejemplos de Jerarquía de
Operadores Fundamentos de la
programación de
CASO E: 5*6+3/7*9-4/7 = 33.28 computadoras

CASO F: 5*(((6+3)/7)*9)-4/7 = 57.28

CASO G: ((5*6)+3/(7*9)-4)/7 = 3.72

CASO H: (5*(6+(3/7))*9-(4/7)) = 288.71


Fundamentos de la
EJERCICIOS CLASE programación de
computadoras

1. 7 * 8 * (160 mod 3 ** 3) div 5 *13 – 28 = 3612


2. 15 / 2 *(7 +(68 – 15 * 33 + (45 ** 2 / 16) / 3 ) / 15) + 19 = -120.9062
3. X = 6 B = 7.8 (X * 5 + B ** 3 / 4) <=(X ** 3 div B) →resultado FALSO
4. ((1580 mod 6 * 2 ** 7) >( 7 + 8 * 3 ** 4)) > ((15 * 2) = (60 * 2 / 4)) →resultado
FALSO
Fundamentos de la
EJERCICIO TAREA programación de
computadoras

1. NO (15 >= 7) O (43 – 8 * 2 div 4 <> 3 * 2 div 2) →resultado VERDADERO


Fundamentos de la
programación de
computadoras

Algoritmo Escribir programa en


¿Qué quiero hacer? Diagrama de flujo algún lenguaje de
pseudocódigo programación
Fundamentos de la
programación de
computadoras

Definir numero1 como real


Fundamentos de la
LENGUAJE PERSONA
programación de
Para ir a la escuela computadoras

ALGORITMO-LENGUAJE PERSONA PSEUDOCÓDIGO


• 1. Levantarse
1. INICIO Proceso SUMA
• 2. Bañarse 2. obtener numero 1 a sumar Definir A, B, C
• 3. Vestirse 3. guardar el numero 1 ESCRIBIR “Ingrese el primer numero”;
4. obtener numero 2 para sumar Leer A;
• 4. Desayunar 5. Guardar numero 2 ESCRIBIR “Ingrese el segundo número”;
• 5. Cepillarse los dientes 6. sumar los dos números y guardarlos en Leer B;
una variable
• 6. Salir de casa 7. Mostrar el resultado C <-- A + B;
• 7. Tomar el autobús 8. FIN ESCRIBIR “El resultado es: ”, B;

• 8. Llegar a la Universidad
• 9. Buscar el aula
• 10. Ubicarse en un asiento
CONCATENACIÓN
Inicio
Fundamentos de la
programación de
computadoras
“Ingresar valor a
sumar 1 y 2”

A, b. c

C  a+b

fin
Fundamentos de la
programación de
computadoras

• Dadas dos vriables numéricas A y B, que el usuario debe teclear, se pide realizar un programa que intercambie
los valores de ambas variables y muestre cuanto valen al final las dos variables (recordar la asignación)
1. Inicio
2. Escribir (“introduce el valor de A”)
3. Leer A
4. Escribir (“Introduce el valor de B”)
5. Leer B
6. C  A
7. A  B
8. B  C
9. Escribir (“valor de A: ”, A “ valor de B”, B )
10. FIN
Construya un algoritmo, pseudocódigo y diagrama de flujo INICIO
tal que dado los datos enteros A y B, escriba el resultado
de la siguiente expresión: Fundamentos de la
programación de
A, B, RES computadoras

CORRIDA DE ESCRITORIO

NUMERO DATOS RESULTADO RES(A + B)**2/3


DE
CORRIDA A B RES
1 2 3 8.3
2 6 5 40.33 “El resultado es: ”, RES

3 9 7 85.3
4 12 9 147
FIN

CONOCER EL PROBLEMA ALGORITMO PROGRAMO


ANALIZO
Fundamentos de la
Corrida de escritorio programación de
computadoras

No. matricula Cal1 cal2 cal3 cal4 cal5 matricula Prom


corridas
1 123 9 7 5 10 8 123 7.8 Declaración de variables
2 124 7 10 6 9 10 124 8.4
3 125 6 8 6 10 10 125 8
4 126 10 10 10 5 8 126 8.6

inicio
Matricula  123
Cal19
Identificar el problema Cal27
Cal35
Identificar variables Cal410
Analizo el problema Cal58
Corrida de escritorio Prom (cal1+cal2+cal3+cal4+cal5)/5
Mostrar “Tú matricula es: ”, Matricula, “ y tu promedio es: ”, Prom
Ejecuto en raptor mi diagrama de flujo fin
inicio
16/08/2022
Fundamentos de la
Base, altura,
programación de
superficie computadoras

Superficie  base *altura


Perimetro  2*(base+altura) No. base altura superficie perimetro
corrida
1 4 9 36 26
2 7.9 15.3 120.87 46.4

“La superficie es: ” + Superficie + “ Y el perímetro es: ” + 3 6.2 5.4 33.48 23.2
perimetro 4 16.9 24.5 414.05 82.8

fin
Repaso…
Operadores y expresiones

• Un operador es un símbolo que permite realizar una operación con números o


con datos que se encuentran almacenados en las variables y constantes. En
lógica de programación, existen 3 tipos de operadores: aritméticos,
relacionales y lógicos.
• Una expresión es una instrucción que puede estar compuesta por operadores,
variables, constantes y números, que generalmente produce un resultado, ya
sea numérico o lógico.
Operadores aritméticos

• Se utilizan para realizar operaciones aritméticas entre datos de tipo entero o


real, su resultado es de tipo numérico. Los operadores aritméticos son los
siguientes:

▪ + Suma
▪ - Resta
▪ * Multiplicación
▪ / División real o entera
▪ % Módulo o Resto de la división entera Aclaración:
▪ ** Potencia Cuando se use el operador / o %, el operando de la
derecha, no debería tener el valor de 0, ya que
generaría un error, debido a que la división entre
cero, matemáticamente, no está definida.
Operadores Relacionales

• Estos operadores se utilizan para escribir expresiones relacionales o de


comparación, las cuales producen un resultado lógico o booleano: Verdadero o
Falso.

▪ < Menor que


▪ > Mayor que
▪ <= Menor o igual que
▪ >= Mayor o igual que
▪ != Diferente a Aclaración:
▪ == Igual a Se usa un ´solo igual (=) para realizar asignación de
valores en variables o constantes. Se utiliza doble
igual (==)para realizar comparaciones entre dos
operandos.
Operadores Lógicos

• Estos operadores se utilizan para crear expresiones lógicas o booleanas cuyo


resultado es de tipo lógico: Verdadero o Falso.

▪ Y Conjunción
▪ O Disyunción
▪ NO Negación
Jerarquía de operadores
inicio
Fundamentos de la
No. precio pago cambio programación de
computadoras
corrida
Precio, pago, cambio 1 30 200 170
2 150 500 350
3 45 100 55
Cambio  Pago - precio

“El cambio es: ” + cambio

fin
inicio
Fundamentos de la
programación de
computadoras

Galones, total

n.corrida galones total


1 35 2517.025
total Galon * 3.785 * 19 2 12 862.98
3 8 575.32
4 5 359.575

“Tl total a pagar es: ” + total

fin
• Realizar un programa que solicite que se ingresen 5 calificaciones y que genere
el promedio de las mismas Fundamentos de la
programación de
• Algoritmo que lea dos números, calculando y escribiendo el valor de su suma, computadoras
resta, producto y división.
Fundamentos de la
programación de
computadoras

DIAGRAMAS DE FLUJO
Y PSEUDOCÓDIGO
Etapas de la construcción de un diagrama de Fundamentos de la
programación de

flujo Inicio
computadoras

Lectura de datos

Procesamiento de los datos

Impresión de resultados

fin
Ejemplos de diagrama de flujo Fundamentos de la
programación de
computadoras

1. Construya un Inicio
diagrama de flujo
tal que dado los DATOS: A,B,C,D (Variables de tipo
datos A, B, C y D entero) A,B,C,D
que representan los
números enteros,
escriba los mismos 1. Leer A,B,C,D D,C,B,A
en orden inverso. 2. Escribir D,C,B,A

fin
2. Construya un diagrama de flujo tal que dado los
datos enteros A y B, escriba el resultado de la siguiente Inicio Fundamentos de la
expresión: programación de
computadoras
(A + B) ** 2 / 3
A=5,B=3
Datos: A,B (variables de tipo entero)
recordar lo siguiente:
• para realizar un proceso se utiliza el símbolo RES = (A + B) ** 2 / 3

RES

{A y B son variables de tipo entero. RES


variable de tipo real}
fin
1. Leer A, B
2. Hacer RES  (A + B) ** 2/3
3. Escribir RES
5 CORRIDAS DIFERENTES
NÚMERO DATOS RESULTAD
Fundamentos de la
programación de
computadoras

DE O
CORRIDA A B RES
1 5 6 40.33
2 7 10 96.33
3 0 3 3.00
4 12 2 65.33
5 14 -5 27.00
3. Dada la matrícula y 5 calificaciones de un alumno obtenidas a lo
largo del semestre, construya un diagrama de flujo que imprima la
matrícula del alumno y el promedio de sus calificaciones. Fundamentos de la
programación de
computadoras

Explicación de las variables


mat, variable de tipo entero
Cal1,cal2,cal3,cal4,cal5,
variables de tipo real
pro, variable de tipo real,
almacena el promedio de las
calificaciones

Hacer Pseudocódigo
“Calcula”
4. Escriba un diagrama de flujo que permita calcular e imprimir el Fundamentos de la
programación de
Inicio
cuadrado y el cubo de un número entero positivo. computadoras

Num, cua, cub


Explicación de las variables
Num: variable de tipo entero
Cua: variable de tipo real (decimal)
Cub: variable de tipo real (decimal) Cua = num * num
Cub = num**3

Cua,cub

Hacer Pseudocódigo
“Cuadrado_Cubo” fin
5.Construya un diagrama de flujo tal que dado como datos Fundamentos de la
la base y la altura de un rectángulo, calcule el perímetro y programación de
la superficie del mismo. Inicio computadoras

Base, Altu

La superficie se calcula de la sig.


Sup = Base * altu
Forma:
Per = 2 * (Base + Altu)
Superficie = base * altura

Sup, Per

Hacer Pseudocódigo
“Perimetro_Superficie_Rectangulo” fin
Fundamentos de la
programación de
computadoras

• Construya un diagrama de flujo tal que dado el costo de un artículo vendido y


la cantidad de dinero entregada por el cliente, calcule e imprima el cambio
que se debe entregar al mismo.
variables: prepro, pago, devo = real
1. leer prepro y pago
2. hacer devo = pago – prepro
3, escribir devo
Hacer Diagrama de flujo

Vuelto_de_un_pago
ejercicios
1. Construya un diagrama de flujo (y su respectivo pseudocódigo) que Fundamentos de la

resuelva el problema que tienen en una gasolinera. Los surtidores de la programación de


computadoras
misma registran lo que “surten” en galones, pero el precio de la gasolina
está fijado en litros. El diagrama de flujo debe calcular e imprimir lo que
hay que cobrarle al cliente.
2. Construya diagrama de flujo y pseudocódigo, tal que dado como datos el
radio y la altura de un cilindro, calcule e imprima el área y su volumen.
3. Construya diagrama de flujo y pseudocódigo, que calcule e imprima el
número de segundos que hay en un determinado numero de días.
4. Construya diagrama de flujo y pseudocódigo, tal que dados los tres lados
de un triángulo, pueda determinar su área.
inicio

Fundamentos de la
X1, x2, y1, y2, distancia programación de
computadoras

((x1-x2)**2 +(y1-y2)**2)**0.5

“LA DISTANCIAS ES: ”, distancia

fin
Implementación de
Programas de
Computadora

Unidad 2. Implementación de programas de computadora


Objetivo: Construir programas de computadora para la resolución de problemas
aplicando métodos algorítmicos y lenguajes de programación específicos

Temas:
2.1 Sintaxis de programación
2.2 Tipos de datos, identificadores, variables y constantes
2.3 Expresiones y operadores
2.4 Lógica de programación y control de flujo
2.4.1 Estructuras algorítmicas de control
2.4.2 Manipulación de cadenas
2.4.3 Procedimientos y funciones
2.5 Rastreo, depuración y validación de instrucciones en un programa de computadora
Estructuras de Control

• Las estructuras de control determinan el comportamiento de un programa;


permiten instrucciones o sentencias individuales de una simple unidad lógica
con un punto de entrada y otro de salida, se organizan en tres tipos que sirven
para controlar el flujo de la ejecución: secuencia, selección o decisión y
repetición.
ESTRUCTURA CONDICIONAL ESTRUCTURA ITERATIVA
Pseudocódigo Diagramas de flujo Pseudocódigo Diagramas de flujo
si (e. selectiva simple) if repita - mientras do - while
si – sino (e. selectiva doble) if - else mientras while
si múltiple (e. selectiva múltiple) switch - case para for
Implementación de
Estructuras de control (algorítmicas) Programas de
Computadora

Las estructuras lógicas selectivas se les encuentra en la solución algorítmica de todo tipo de
problema. Las utilizamos cuando en el desarrollo de la solución de un problema, debemos de tomar una
decisión, para establecer un proceso o señalar un camino alternativo a seguir.
Esta toma de decisión (expresada en el diagrama de flujo como rombo) se basa en la evaluación de una o
más condiciones que nos señalaran como alternativa o consecuencia, la rama o camino a seguir.
Hay situaciones en que la toma de decisiones se toma en cascada. Es decir se toma una decisión, se marca
la rama correspondiente a seguir, se vuelve a tomar otra decisión y así sucesivamente. Por lo que para
alcanzar la solución de un problema o subprograma, debemos aplicar prácticamente un árbol de decisión.

Estructuras de control – SELECTIVAS(secuenciales)


Pseudocódigo Diagramas de flujo – Lenguajes de
Programación
Si (E. selectiva Simple) if
Si – sino (E. Selectiva Doble) if - else
Si múltiple (E. Selectiva Múltiple) switch - case
Implementación de
Estructura selectiva simple (SI ENTONCES) Programas de
Computadora

• La estructura selectiva si entonces permite que el flujo del diagrama siga por
un camino específico si se cumple una condición o conjunto de condiciones. Si
al evaluar la condición, el resultado es verdadero, entonces se ejecutan ciertas
operación (es). Luego continua la secuencia normal del diagrama.

.
.
.
CONDICION
CONDICION: expresa la
FALSA
NO condición o conjunto de SI condición entonces
VERDADERA condiciones a evaluar.
SI OPERACIÓN: expresa la
Hacer operación
operación o conjunto de Fin del condicional
OPERACION operaciones a realizar si la .
condición resulta verdadera. .
.
• Construya un diagrama de flujo y pseudocódigo tal que dado como dato la
calificación de un alumno de programación I, escriba “APROBASTE
PROGRAMACIÓN I” en caso de que esa calificación sea mayor a 8 y la palabra Implementación de
Programas de
reprobaste, si la calificación es menor 8. Computadora

Pseudocódigo Corrida de escritorio


NO

SI
2. Dado como dato el sueldo de un trabajador, aplíquele un aumento del 15% si
su sueldo es inferior a $1000. Imprima en este caso el nuevo sueldo del
trabajador.
Estructura selectiva doble “si entonces / sino”

La estructura selectiva si entonces/sino permite que el flujo del diagrama se


bifurque por dos ramas diferentes en el punto de la toma de decisión(es). Si al
evaluar la condición (o condiciones) el resultado es verdadero, entonces se sigue
por un camino específico y se ejecuta(n) cierta(s) operación(es). Por otra parte si
el resultado es falso, entonces se sigue por otro camino y se ejecuta(n) otra(s)
operación(es). En ambos casos, luego de ejecutarse la(s) operación(es)
indicada(s), se continua con la secuencia normal del diagrama
Estructura selectiva doble “si entonces / sino”
Ejercicio 1. Estructura selectiva doble “si entonces /
sino”
Construir un diagrama de flujo, pseudocódigo tal que dado como dato la calificación de
un alumno en un examen, escriba “aprobado” si su calificación es mayor o igual que 8 y
“reprobado” en caso contrario.
Ejercicio 2. Estructura selectiva doble “si entonces /
sino”

• Dado como dato el sueldo de un trabajador, aplicarle un aumento del 15% si su


sueldo es inferior a $1000 y 12% en caso contrario. Imprimir el sueldo del
trabajador.
Estructura selectiva múltiple “si multiple”

• La estructura selectiva múltiple permite que el flujo del diagrama se bifurque


por varias ramas en el punto de la toma de decisión(es), esto en función del
valor que tome el selector. Así si el selector toma el valor 1 se ejecutará la
acción 1, si toma el valor 2 se ejecutará la acción 2, si toma el valor N se
realizará la acción N, y si toma un valor distinto de los valores comprendidos
entre 1 y N, se continuará con el flujo normal del diagrama realizándose la
acción N+1.
Estructura selectiva múltiple “si multiple”
Estructura selectiva múltiple “si multiple”

• La estructura selectiva múltiple es muy flexible, lo que permite aplicarse de


diferentes formas. Observar los siguientes ejemplos:
Ejercicio 1. Estructura selectiva múltiple
• Dado como datos dos variables de tipo entero, obtener el resultado de la
siguiente función:
Ejercicio 2. Estructura selectiva múltiple
• Dado como datos la categoría y el sueldo de un trabajador, calcule el aumento
correspondiente, teniendo en cuenta la siguiente tabla. Imprima la categoría
del trabajador y su nuevo sueldo.
Estructuras Selectivas múltiples en cascada
(Anidadas)
• Encontramos numerosos casos en el desarrollo de la solución de problemas en
el que luego de tomar una decisión y marcar el camino correspondiente a
seguir, es necesario tomar otra decisión. Se señala, luego de evaluar las
condiciones, la rama correspondiente a seguir, y nuevamente podemos tener
que tomar otra decisión. El proceso puede repetirse numerosas veces. En este
caso, para resolver el problema, estamos aplicando estructuras selectivas en
cascada o anidadas.
Estructuras Selectivas múltiples en cascada
(Anidadas)
• Analicemos el siguiente
caso, donde dentro de la
estructura selectiva si
entonces encontramos la
estructura selectiva si
entonces / sino.
Estructuras Selectivas múltiples en cascada
(Anidadas)
• Analicemos el siguiente caso
• Último caso…
Dado los datos A, B y C que representan números enteros diferentes, crear un
programa para escribir estos números en forma descendente.
• Se requiere un programa que muestre por pantalla el nombre y la clave de los
estados de la República Mexicana.
• A) el usuario ingresa la clave de un estado y por pantalla se debe de mostrar el nombre de
dicho estado y su población Total (de acuerdo al censo de población y vivienda 2020)
DISTINTOS EJERCICIOS – E. SELECTIVAS
(CONDICIONALES)
• Crear un programa, que dado como datos los valores enteros P y Q, determine si los
mismos satisfacen la siguiente expresión: en caso afirmativo
debe imprimir los valores P y Q.
• Las raíces reales de la expresión a𝑥 2 + bx + c = 0 se obtienen a través de la
fórmula:

• Hacer un programa para calcular las raíces reales, de ser posible, de una
ecuación de segundo grado.
Un programa que dado como datos la matrícula y 5 calificaciones de un alumno;
imprima la matrícula, el promedio y la palabra “aprobado” si el alumno tiene un
promedio mayor o igual a 6, y la palabra “no aprobado” en caso contrario.
Crear un programa que dado como dato un número entero, determine e imprima si el mismo es
positivo, negativo o nulo.
Dado un número entero A, hacer un programa para determinar si el mismo es par, impar
o nulo.
Crear un programa, que dado como datos de entrada tres números enteros, determine si los
mismos están en orden creciente.
• En una tienda efectúan un descuento a los clientes dependiendo del monto de
la compra. El descuento se efectúa con base al siguiente criterio:
• Si el monto es menor que $5000 → no hay descuento
• Si el monto está comprendido entre $500 y $1000 → 5% de descuento
• Si el monto está comprendido entre $1000 y $7000 → 11% de descuento
• Si el monto está comprendido entre $7000 y $15000 → 18% de descuento
• Si el monto es mayor a $15000 → 25% de descuento
• Crear un programa, que dado el monto de la compra de un cliente, determine lo que el
mismo debe pagar
Ciclos (para, mientras)

• Se requiere imprimir la palabra hola, 5 veces

• Escribir”Hola”
• Escribir”Hola”
• Escribir”Hola” Repetir instrucciones N
veces
• Escribir”Hola”
• Escribir”Hola”
¿Cuándo utilizar un ciclo? inicio

Nuestro ciclo se va a Ciclo (condición){


condición
//sentencias a
repetir, tantas veces, verdadero //ejecutar
hasta que mi condición }
sea verdadera.
Sentencias a repetir

inicio
Tipos de ciclos

• Mientras (while)
• Repetir hasta (do while)
• Para – hasta (for)
Repetir hasta
inicio

condición

verdadero

Sentencias a repetir

inicio
REPETIR HASTA (DO WHILE)
ARREGLOS

• Un arreglo es un conjunto de elementos que accedemos con el mismo nombre.

edades 17 25 16 18 20
0 1 2 3 4

Edad[2]

También podría gustarte