SlideShare una empresa de Scribd logo
1 de 65
Descargar para leer sin conexión
Introducción a la programación
Conceptos generales de programación
 Antes de iniciar el tema, es conveniente, sobre todo para aquellos que
comienzan su instrucción informática, hacer un breve repaso de
conceptos fundamentales que se han de tomar en cuenta cuando se
desarrollan programas que se utilizarán en computadoras.
Introducción a la programación
 Se incluye la metodología que se requiere para diseñar algoritmos de
manera sencilla y funcional.
¿Qué es una computadora?
Es un dispositivo electrónico utilizado para procesar información y
obtener resultados.
Los datos y la información se pueden introducir en la computadora por
la entrada y a continuación se procesan para producir una salida
(resultados).
Los datos de entrada y los datos de salida pueden ser, realmente,
cualquier cosa, texto, dibujos, o sonidos.
Introducción a la programación
cualquier cosa, texto, dibujos, o sonidos.
¿Qué es el software?
Conjunto de programas escritos para una computadora.
¿Qué es el hardware?
Componentes físicos que constituyen la computadora, junto con los
dispositivos que realizan las tareas de entrada y salida
¿Qué es un programa?
Conjunto de instrucciones que hacen funcionar a la computadora.
Organización física de la computadora
Introducción a la programación
Unidad de control
Memoria principal
Unidad aritmética lógica
Dispositivos de
entrada
Dispositivos de
salida
Memoria externa
Almacenamiento
permanente
UPC (procesador)
Dispositivos de Entrada/Salida
 Los dispositivos de Entrada/Salida permiten la comunicación entre la
computadora y el usuario para introducir datos (información) para su
proceso. Los datos se leen de los dispositivos de entrada y se
almacenan en la memoria principal, convierten la información de entrada
en señales eléctricas que se almacenan en la memoria principal.
Introducción a la programación
en señales eléctricas que se almacenan en la memoria principal.
Tipos de dispositivos de entrada:
• Teclados.
• Lápices ópticos.
• Palancas de mando (joystick).
• Lectores de códigos de barra.
• Micrófonos.
• Mouse
• Cámaras de video, etc
Los dispositivos de salida permiten representar resultados (salida) del
proceso de los datos.
Tipos de dispositivos de salida:
• Pantalla.
• Impresoras.
• Trazadores gráficos (plotters).
Introducción a la programación
• Trazadores gráficos (plotters).
• Reconocedores de voz, etc.
Memoria principal
 Conocida como RAM (Random Access Memory), almacena información
(instrucciones de un programa y los datos con los que operan las
instrucciones) de manera transitoria, es decir, durante la ejecución de un
programa.
Unidad Central de Proceso (UPC)
 Dirige y controla el proceso de información realizado por la
computadora, esta conformada por:
• Unidad de control (UC).- coordina las actividades de la computadora y
determina que operaciones se deben realizar y en que orden; así mismo
Introducción a la programación
determina que operaciones se deben realizar y en que orden; así mismo
controla y sincroniza todo el proceso de la computadora.
• Unidad aritmética Lógica (ALU).- realiza operaciones aritméticas y
lógicas, tales como sumas, restas, multiplicaciones divisiones y
comparaciones. Los datos se pueden leer (recuperar) o escribir
(cambiar) por la upc.
Memoria auxiliar (externa)
 Cuando un programa se ejecuta, se debe situar primero en la memoria
principal de igual modo que los datos, sin embargo, la información
almacenada en la memoria se pierde (borra) cuando se apaga la
computadora y, por otra parte, la memoria principal es limitada en
Introducción a la programación
computadora y, por otra parte, la memoria principal es limitada en
capacidad. Por esta razón, para poder disponer de almacenamiento
permanente, tanto para programas como para datos se necesitan
dispositivos de almacenamiento secundario, auxiliar o masivo.
 Los dispositivos de almacenamiento secundario o memorias auxiliares
(externas o secundarias) más comúnmente utilizadas son CD-ROM,
DVD, cintas y discos magnéticos, USB, etc.
Tipos de Lenguajes
 Para que un procesador realice un proceso se le debe suministrar en
primer lugar un algoritmo adecuado. El procesador debe ser capaz de
interpretar el algoritmo, lo que significa:
• Comprender las instrucciones de cada paso.
Introducción a la programación
• Comprender las instrucciones de cada paso.
• Realizar las operaciones correspondientes.
 Cuando el procesador es una computadora, el algoritmo se ha de
expresar en un formato que se denomina programa.
 Un programa se escribe en un lenguaje de programación y las
operaciones que conducen a expresar un algoritmo en forma de
programa se llama 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.
 Los principales tipos de lenguajes utilizados en la actualidad son:
• Lenguajes máquina.
Introducción a la programación
• Lenguajes máquina.
• Lenguajes de bajo nivel (ensamblador)
• Lenguajes de alto nivel.
Lenguajes máquina
 Son aquellos que están escritos en lenguajes directamente inteligibles
por la máquina (computadora), ya que sus instrucciones son cadenas
binarias (cadenas o series de dígitos 0’s y 1’s) que especifican una
operación.
Introducción a la programación
 Las posiciones (dirección) de memoria implicadas en la operación se
denominan instrucciones de máquina o código máquina (código binario).
 Las instrucciones en lenguaje máquina dependen del hardware de la
computadora y, por lo tanto, diferirán de una computadora a otra.
Lenguajes máquina
Introducción a la programación
Ventajas
 Cargar programas a la
memoria sin necesidad de
Desventajas
 Dificultad y lentitud en la
codificación
memoria sin necesidad de
traducción
 Velocidad de ejecución
codificación
 Poca fiabilidad
 Dificultad grande de verificar y
poner a punto los programas
 Los programas sólo son
ejecutables en el mismo
procesador
Lenguajes de bajo nivel
 Son más fáciles de utilizar que los lenguajes máquina, pero, al igual,
que ellos, dependen de la máquina en particular.
 El lenguaje de bajo nivel por excelencia es el ensamblador.
Las instrucciones en lenguaje ensamblador son instrucciones conocidas
Introducción a la programación
 Las instrucciones en lenguaje ensamblador son instrucciones conocidas
como nemotécnicos. Por ejemplo, típicos de operaciones aritméticas:
ADD, SUB, DIV.
 Un programa escrito en lenguaje ensamblador no puede ser ejecutado
directamente por la computadora, en esto se diferencia esencialmente
del lenguaje máquina, sino que requiere una fase de traducción al
lenguaje máquina.
Lenguajes de bajo nivel
 El programa original escrito en lenguaje ensamblador se denomina
programa fuente y el programa traducido en lenguaje máquina se
conoce como programa objeto, ya directamente inteligible por la
computadora.
Introducción a la programación
computadora.
 El traductor de programas fuente a objeto es un programa llamado
ensamblador.
Lenguajes de alto nivel
 Son los más utilizados por los programadores, están diseñados para que
las personas escriban y entiendan los programas de un modo más fácil
que los lenguajes máquina y ensambladores.
 Un programa escrito en lenguaje de alto nivel es independiente de la
Introducción a la programación
 Un programa escrito en lenguaje de alto nivel es independiente de la
máquina; esto es, las instrucciones del programa de la computadora no
dependen del diseño del hardware o de una computadora en particular.
 Los programas escritos en lenguaje de alto nivel son portables o
transportables, lo que significa la posibilidad de poder ser ejecutados con
poca o ninguna modificación en diferentes tipos de computadoras.
 Los programas fuente en lenguaje de alto nivel tiene que ser traducidos
por los programas traductores, llamados en este caso compiladores.
Lenguajes de alto nivel
Introducción a la programación
Ventajas
 Tiempo de formación de los
programadores relativamente
Desventajas
 Incremento del tiempo de
puesta a punto, al necesitarse
programadores relativamente
corto
 Similar al lenguaje humano
 Transportabilidad
 Reducción del costo de los
programas
puesta a punto, al necesitarse
diferentes traducciones
 No se aprovechan los recursos
internos de la máquina
 Aumento de la ocupación de
memoria
 Tiempo de ejecución mucho
mayor
Tipos de lenguajes de alto nivel:
C, C++, Fortran, C#, VisualBasic, Java
Muy extendidos:
Modula-2, Prolog, LISP, Smaltalk
Introducción a la programación
Modula-2, Prolog, LISP, Smaltalk
Gran uso en el mundo profesional:
Borland Delphi, C++ Builder, Power Builder
Aunque hoy en día el mundo de Internet consume gran cantidad de
recursos en forma de lenguajes de programación como:
HTML, XML, JavaScript, etc.
Tipos de datos
 Los datos a procesar por una computadora pueden clasificarse en:
 Simples
 Estructurados
Los datos simples se caracterizan porque ocupan sólo una casilla de
Conceptos fundamentales
 Los datos simples se caracterizan porque ocupan sólo una casilla de
memoria, por lo tanto una variable simple hace referencia a un único
valor a la vez. dentro de este grupo de datos encontramos:
 Enteros
 Reales (flotantes)
 Caracteres
 Cadena de caracteres
 Booleanos
Los datos estructurados se caracterizan por el hecho de que con un
nombre se hace referencia a un grupo de casillas de memoria.
 Es decir, un dato estructurado tiene varios componentes. Cada uno de
sus componentes puede ser a su vez un dato simple. Dentro de este
grupo de datos se encuentran:
Conceptos fundamentales
grupo de datos se encuentran:
 Arreglos
 Cadena de caracteres
 Registros
Dato simple Dato estructurado
Identificador Identificador
Datos simples
Enteros.- son números que no contienen componentes fraccionarias y,
por lo tanto, no incluyen el punto decimal, pueden estar
precedidos del signo + o -. Por ejemplo:
465 -387 9 99 -1578 125550
Conceptos fundamentales
465 -387 9 99 -1578 125550
Reales (flotantes).- son números que contienen una parte fraccionaria
y, por lo tanto, incluyen el punto decimal, pueden esta
precedidos del signo + o -. Por ejemplo:
125.87 -124.0 158000.75 -38.5879
Carácter.- contiene un solo carácter y va encerrado entre comillas
simples. Por ejemplo:
‘a’ ‘A’ ‘$’ ‘#’ ‘7’ ‘+’ ‘h’ ‘H’
Cadena de caracteres.- contiene un conjunto de caracteres alfabéticos,
numéricos, y especiales, que sirven para representar y
manejar datos como: nombres, descripciones de artículos,
direcciones, etc. Van encerrados entre comillas dobles, por
ejemplo:
Conceptos fundamentales
ejemplo:
“abc” “Carlos Jiménez” “83-15-24-65” “$8#2”
Booleanos.- toma los valores de verdadero (true) o falso (false), no
puede ser leído o escrito, sólo asignado, es útil para
plantear cierto tipo de condiciones en el manejo de las
estructuras lógicas de control.
Identificadores, constantes y variables
Identificadores.
son nombres que se usamos para referirnos a variables, constantes,
funciones o cualquier objeto definido por el usuario.
Conceptos fundamentales
Un identificador se forma de acuerdo a ciertas reglas básicas:
 El primer carácter que forma un identificador debe ser una
letra o el símbolo de subrayado ( _ ).
 Los demás caracteres pueden ser letras, dígitos o símbolo de
subrayado.
 La longitud del identificador depende del lenguaje de
programación a utilizar.
Constantes
 Son datos que no cambian durante la ejecución de un programa.
Existen tipos de constantes como tipos de datos, por lo tanto, puede
haber constantes enteras, reales (flotantes), de carácter, de cadenas de
caracteres, booleanas, etc.
Variables
Conceptos fundamentales
Variables
 Es un identificador que puede cambiar su valor durante la ejecución de
un programa.
 Se utiliza para representar un dato tipo entero, real (flotante), o una
constante de carácter. Por ejemplo:
Variable i es de tipo entero
variable prom es de tipo real (flotante)
Variable opción es de tipo carácter
Operaciones aritméticas
 Para poder realizar operaciones aritméticas necesitamos de operadores
aritméticos.
 Estos operadores nos permiten realizar operaciones aritméticas entre
Conceptos fundamentales
 Estos operadores nos permiten realizar operaciones aritméticas entre
operandos: números, constantes o variables. El resultado de una
operación aritmética es un número.
 A continuación presentamos en una tabla los operadores aritméticos, la
operación que puede realizar y, un ejemplo de su uso y su resultado:
Operadores Aritméticos
Operador
Aritmético
Operación Ejemplo Resultado
** o ^ Potencia 3**2 o 3^2 9
* Multiplicación 5.25*3 15.75
Conceptos fundamentales
* Multiplicación 5.25*3 15.75
/ División 17/4 4.25
+ Suma 58+79 137
- Resta 25.96 -11.25 14.71
Mod Módulo (residuo) 21 mod 2 1
div División entera 19/3 6
Al evaluar expresiones que contienen operadores aritméticos debemos
respetar la jerarquía en el orden de aplicación. Es decir, si tenemos en
una expresión más de un operador, debemos aplicar primero el
operador de mayor jerarquía, resolver esa operación y así
sucesivamente.
Conceptos fundamentales
Jerarquía de los operadores aritméticos
Operad
or
Jerarqu
ía
Operación
** o ^ (Mayor)
(menor)
Potencia
*, /,
mod,
div
Multiplicación, división, módulo,
división entera
+, - Suma, resta
Reglas para resolver una expresión aritmética:
1. Si una expresión contiene subexpresiones entre paréntesis, éstas se
evalúan primero, respetando claro la jerarquía de los operadores
aritméticos en esta subexpresión.
Si las subexpresiones se encuentran anidadas por paréntesis, primero
Conceptos fundamentales
Si las subexpresiones se encuentran anidadas por paréntesis, primero
se evalúan las subexpresiones que se encuentran en el último nivel de
anidamiento.
2. Los operadores aritméticos se aplican teniendo en cuenta la jerarquía
y de izquierda a derecha.
Por ejemplo:
 Dados los siguientes casos, resolver cada caso aplicando las reglas
correspondientes:
1). 7 + 5 – 6 2). 9 +7 * 8 – 36 / 5 3). 7 * 5 ** 3 / 4 div 3
1 1 1
Conceptos fundamentales
1 1 1
12 – 6 9 + 56 – 36 / 5 7 * 125 / 4 div 3
2 2 2
= 6 9 + 56 – 7.2 875 / 4 div 3
3 3
65 – 7.2 218.75 div 3
4 4
= 57.8 = 72
4). 7 * 8 * (160 mod 3 ** 3) div 5 * 13 – 28 3640 - 28
1 7
7 * 8 * (160 mod 27) div 5 * 13 – 28 = 3612
2
7 * 8 * 25 div 5 * 13 – 28
Conceptos fundamentales
7 * 8 * 25 div 5 * 13 – 28
3
56 * 25 div 5 * 13 – 28
4
1400 div 5 * 13 – 28
5
280 * 13 – 28
6
Expresiones lógicas
 Las expresiones lógicas o booleanas, están constituidas por números,
constantes o variables y operadores lógicos o relacionales. El valor que
pueden tomar estas expresiones es de verdadero o falso.
Se utilizan con frecuencia en las estructuras selectivas y en las
Conceptos fundamentales
Se utilizan con frecuencia en las estructuras selectivas y en las
estructuras repetitivas.
Operadores relacionales
 Son operadores que permiten comparar dos operandos, los operandos
pueden ser números, caracteres, constantes o variables.
Las constantes o variables, a su vez, pueden ser de tipo entero, real
(flotante), carácter o cadena de caracteres.
El resultado de una expresión con operadores relacionales es verdadero
o falso.
Operadores Relacionales
Operador Operación Ejemplo Resultado
Conceptos fundamentales
Operador Operación Ejemplo Resultado
== Igual que “lalo” == “lola” Falso
  Diferente a ‘x’   ‘y’ Verdadero
 Menor que 14  25 Verdadero
 Mayor que 35  10 Verdadero
 = Menor o igual que 5 = 6 Verdadero
= Mayor o igual que 15 = 7 Verdadero
Operadores lógicos
 Son operadores que permiten formular condiciones complejas a partir de
condiciones simples.
 Los operadores lógicos son de:
Conjunción (y).- relaciona dos operandos booleanos. Proporciona un
valo verdadero (V), si los dos son verdaderos; en caso
Conceptos fundamentales
valo verdadero (V), si los dos son verdaderos; en caso
contrario da un resultado falso (F).
Disyunción (o).- relaciona dos operandos booleanos. Proporciona un
valor verdadero (V), si uno de los dos es verdadero; en
caso contrario da un resultado falso (F).
Negación (No).- este operador relaciona sólo un operando booleano y
da como resultado un valor opuesto al que tenga
el operando.
Operadores Lógicos
Operador Jerarquía Expresión lógica
No (~) (Mayor) No P
Y (^) P y Q
Jerarquía de todos los Operadores
Operadores Jerarquía
( ) (Mayor)
**
Conceptos fundamentales
(Menor)
o P o Q
Tabla de verdad de los Operadores Lógicos
P Q P ^Q P o Q ~ P ~ Q
V V V V F F
V F F V F V
F V F V V F
F F F F V V
(Menor)
**
*, /, div, mod
==,  , , ,  =,  =
No ( ~ )
y ( ^ )
o
Por ejemplo:
 Dados los siguientes casos, resolver cada caso aplicando las reglas
correspondientes:
1). A = 5, B = 16 2). X = 6, B = 7.8
(A ** 2)  (B * 2) (X * 5 + B ** 3 / 4)  = (X ** 3 div B)
1 1
Conceptos fundamentales
1 1
25  (B * 2) (X * 5 + 474.552 / 4)  = (X ** 3 div B)
2 2
25  32 (30 + 474.552 / 4)  = (X ** 3 div B)
3 3
(30 + 118.638)  = (X ** 3 div B)
Falso 4
Continua
Continuación 2)
148.638  = (X ** 3 div B)
5
148.638  = (216 div B)
6
Conceptos fundamentales
6
148.638  = 27
Falso
3). ~(15  = 7 ** 2) o (43 – 8 * 2 div 4   3 * 2 div 2)
1
~(15  = 49) o (43 – 8 * 2 div 4   3 * 2 div 2)
2 3 Continua
Continua 3).
~ Falso o (43 – 16 div 4   3 * 2 div 2) Verdadero o Verdadero
4 10
~ Falso o (43 – 4   3 * 2 div 2) Verdadero
5
Conceptos fundamentales
5
~ Falso o (43 – 4   6 div 2)
6
~ Falso o (43 – 4   3)
7
~ Falso o (39   3)
8
~ Falso o Verdadero
9
Operación de Asignación
Consiste en atribuir un valor a una variable o Constante.
Su representación
En algunos Lenguajes la asignación esta representada por = ó :=
Ejemplo:
Conceptos fundamentales
Ejemplo:
Asignar a la variable A el valor de 5.
A 5
El proceso de asignación se realiza en 2 fases:
 Se evalúa la expresión de la parte derecha de la asignación
obteniéndose un único valor.
 Se asigna ese valor a la variable de la parte izquierda.
Operación de Asignación
Se debe tener en cuenta:
 En la parte izquierda sólo puede haber una variable.
 La variable a la que se le asigna el valor pierde su valor anterior.
 La variable que aparece en la derecha ya que como se evalúa primero
Conceptos fundamentales
 La variable que aparece en la derecha ya que como se evalúa primero
la de la derecha cuando se tenga que evaluar el valor de esa variable se
tomara su valor antiguo.
 El tipo del valor que se obtiene al evaluar la parte derecha tiene que ser
el mismo que el tipo de la variable de la parte izquierda, es decir a una
variable solo se le pueden dar valores de su mismo tipo
 Ejemplo
A: entero
A 2
A 3*A + A = 8
Tipos de Operación de Asignación
Asignación variable numérica
En una variable numérica (declarada como entero o real) sólo se podrán
guardar datos numéricos.
Conceptos fundamentales
guardar datos numéricos.
Asignación de un número (constante numérica) a una variable numérica.
Asumamos que la variable A ha sido declarada de tipo entero, si
queremos asignar el valor de 5 en ella lo haríamos de la siguiente
manera.
A 5
Tipos de Operación de Asignación
Asignación del resultado de una expresión aritmética a una variable
numérica. Asumamos que las variable A ha sido declarada de tipo
entero y queremos copiar en ella el resultado de la expresión aritmética
Conceptos fundamentales
entero y queremos copiar en ella el resultado de la expresión aritmética
5*2 +1 se haría de la siguiente manera.
A 5* 2 +1 luego A = 11
Es posible que la expresión aritmética este formada con variables
numéricas, para ilustrarlo asumamos que A, B y C han sido declaradas
de tipo entero y que en B ya hemos asignado un 10 (B 10) y en C
hemos copiado un dos (C 2). si queremos asignar en A lo que tiene B
mas lo que tiene C, se haría de la siguiente manera:
A B + C luego es resultado es A = 12
Tipos de Operación de Asignación
Asignación variable tipo de cadena
En una variable de tipo cadena se pueden guardar cadenas
directamente o el resultado de evaluar una expresión de cadena.
Conceptos fundamentales
directamente o el resultado de evaluar una expresión de cadena.
Asumamos que la variable NOMBRE ha sido declarada de tipo cadena,
si queremos copiar en ella el nombre María lo haríamos de la siguiente
manera.
NOMBRE María
Tipos de Operación de Asignación
Asignación variable tipo lógico
En una variable lógica sólo se podrán guardar datos lógicos (
verdadero o falso) o el resultado de evaluar una expresión lógica.
Conceptos fundamentales
verdadero o falso) o el resultado de evaluar una expresión lógica.
Asumamos que la variable BANDERA ha sido declarada de tipo lógico,
si queremos copiar en ella el resultado de la expresión lógica 2  10, lo
haríamos de la siguiente manera.
BANDERA 2  10
Copiaría en la variable BANDERA el valor de falso, pues 2 no es
mayor que 10.
Entrada y salida de información
 Las operaciones de entrada permiten leer determinados valores y
asignarlos a determinadas variables. Esta entrada se conoce como
operación de lectura.
Conceptos fundamentales
operación de lectura.
 La salida puede aparecer en un dispositivo de salida. La operación de
salida se denomina escritura
Concepto de algoritmo
 Los seres humanos realizamos una serie de pasos, procedimientos o
acciones que nos permiten alcanzar un resultado o resolver un
problema, esto se repite innumerables veces durante el día. En realidad
estamos aplicando un algoritmo para resolver un problema.
Algoritmos y diagramas de flujo
estamos aplicando un algoritmo para resolver un problema.
Definición de Algoritmo.- secuencia ordenada y cronológica de pasos
que llevan a la solución de un problema o a la ejecución de una tarea (o
actividad).
El algoritmo debe tener las siguientes características:
 Tener un principio
 Ser simples, claros, precisos, exactos.
 Tener un orden lógico.
 Debe ser finito.
Algoritmos y diagramas de flujo
 Debe ser finito.
 Tener un fin.
• La definición de un algoritmo debe describir tres partes:
 Entrada.
 Proceso.
 Salida
La serie de pasos, procedimientos o acciones que nos permiten alcanzar
un resultado o resolver un problema a través de algoritmos, los
desarrollamos por medio de pseudocódigo.
 El pseudocódigo describe un algoritmo utilizando una mezcla de frases
en lenguaje común, instrucciones de programación y palabras clave que
definen las estructuras básicas.
Algoritmos y diagramas de flujo
definen las estructuras básicas.
 El objetivo del pseudocódigo es permitir que el programador se centre en
los aspectos lógicos de la solución, evitando las reglas de sintaxis de los
lenguajes de programación.
 No siendo el pseudocódigo un lenguaje formal, los pseudocódigos varían
de un programador a otro, es decir, no hay un pseudocódigo estándar.
Algoritmos y diagramas de flujo
Diagramas de flujo
 Un diagrama de flujo representa la esquematización gráfica de un
algoritmo.
 En realidad muestra gráficamente los pasos o procesos a seguir para
alcanzar la solución de un problema.
 Su correcta construcción es sumamente importante porque, a partir del
mismo se escribe un programa en algún lenguaje de programación.
 Si el diagrama de flujo está completo y correcto, el paso del mismo a un
lenguaje de programación es relativamente simple y directo.
 A continuación, presentamos los símbolos que utilizaremos y una
explicación de los mismos. Estos satisfacen las recomendaciones de la
ISO y la ANSI.
Símbolo utilizado para marcar el inicio y el fin del diagrama
flujo.
Símbolo utilizado para introducir los datos de entrada. Expresa
lectura.
Algoritmos y diagramas de flujo
Símbolo utilizado para representar un proceso. En su interior
se expresan asignaciones, operaciones aritméticas, cambios
de valor de celdas en memoria, etc.
Símbolo utilizado para representar una decisión. En su
interior se almacena una condición y dependiendo del
resultado de la evaluación de la misma se sigue por una de
las ramas o caminos alternativos: verdadero o falso.
Símbolo utilizado para representar la impresión de un
resultado. Expresa escritura.
Símbolo utilizado para expresar conexión dentro de una misma
página.
Algoritmos y diagramas de flujo
página.
Símbolos utilizados para expresar la dirección del flujo del
diagrama
Símbolo utilizado para expresar conexión entre páginas
diferentes.
Símbolo utilizado para representar una
decisión múltiple. En su interior se
Algoritmos y diagramas de flujo
decisión múltiple. En su interior se
almacena un selector y dependiendo del
valor de dicho selector se sigue por una de
las ramas o caminos alternativos.
Estructura y diseño de un algoritmo
 Existe una gran cantidad de problemas que requieren de un análisis
profundo y de un pensamiento flexible y estructurado para la solución.
 La idea es ofrecer un conjunto de técnicas y herramientas metodológicas
Construcción de algoritmos y
diagramas de flujo
La idea es ofrecer un conjunto de técnicas y herramientas metodológicas
que permitan flexibilizar y estructurar el razonamiento utilizado en la
solución de problemas, esto provocará finalmente la construcción de
algoritmos eficientes.
 A continuación en la figura podemos observar las etapas que debemos
seguir para la solución de un problema
Construcción de algoritmos y
diagramas de flujo
Problema
Análisis
profundo del
problema
Construcción
del
algoritmo
Verificación
el
algoritmo
Etapa 1 Etapa 2 Etapa 3
Nota.- Por verificación del algoritmo entendemos el seguimiento del
mismo con datos que sean representativos del problema que queremos
resolver
Construcción de algoritmos y
diagramas de flujo
 La secuenciación es una estructura de control que permite a la
computadora ejecutar una acción, después otra, luego la que sigue y así
sucesivamente hasta la última.
 Dichas acciones pueden consistir en operaciones primitivas elementales
como declaraciones de variables, leer datos, imprimir datos o calcular
como declaraciones de variables, leer datos, imprimir datos o calcular
alguna expresión.
 Es conveniente etiquetar cada acción con números desde el uno en
forma ascendente de uno en uno, para denotar el orden secuencial.
 Por lo tanto los elementos básicos que integran la estructura de un
algoritmo son:
Construcción de algoritmos y
diagramas de flujo
1. Encabezado.- todo algoritmo debe tener un encabezado como
identificación, el cual debe empezar con la palabra Algoritmo seguida
por una descripción del problema a resolver.
2. Inicio.- todo algoritmo debe empezar con la etiqueta 1, que marca el
inicio del mismo.
inicio del mismo.
3. Declaraciones.- después de marcar el inicio se debe hacer las
declaraciones que se necesiten como: variables, constantes, tipos de
datos, etc.
4. Leer, calcular e imprimir.- los siguientes pasos pueden consistir en
acciones tales como: leer datos, calcular algunas expresiones
aritméticas e imprimir datos tantas veces como se requiera y en el
orden apropiado para resolver el problema en cuestión.
5. Fin del algoritmo.- el último paso del algoritmo consiste en incluir la
indicación fin.
Construcción de algoritmos y
diagramas de flujo
Ejemplo No 1 de algoritmos secuenciales
Calcular e imprimir el sueldo de un empleado, se pedirá la clave del
empleado, las horas trabajadas y el pago por hora trabajada.
Algoritmo Calcular el sueldo de un empleado
1. Inicio
1. Inicio
2. Declaración de variables:
cve, ht: entero
pht, sueldo: real (flotante)
3. Leer cve, ht, pht
4. sueldo ht * pht
5. Imprimir cve, sueldo
6. Fin
Construcción de algoritmos y
diagramas de flujo
Ejemplo No 2.- desarrollar un algoritmo que permita leer un número en
radianes e imprima su equivalencia en grados; así mismo, leer un
número en grados e imprima su equivalencia en radianes.
Algoritmo Convierte radianes a grados y grados a radianes
1. Inicio
2. Declaración de variables:
PI 3.1415926536: real (flotante)
rad, grad, numrad, numgrad: real (flotante)
3. Leer rad, grad
4. numgrad rad * (180 / PI)
5. numrad grad * (PI / 180)
6. Imprimir numgrad, numrad
7. Fin
Construcción de algoritmos y
diagramas de flujo
Ejemplo No 3.- desarrollar un algoritmo para calcular el promedio de un
estudiante, se pedirá la matricula del estudiante y cuatro calificaciones
de los exámenes. Se imprimirá la matricula del estudiante y el promedio.
Algoritmo calcular promedio de un estudiante
1. Inicio
1. Inicio
2. Declaración de variables
matest: entero
cal1, cal2, cal3, cal4, calfin: real (flotante)
3. Leer matest, cal1, cal2, cal3, cal4
4. calfin (cal1 + cal2 + cal3 + cal4) / 4
5. Imprimir matest, calfin
6. Fin
Construcción de algoritmos y
diagramas de flujo
Reglas para la construcción de diagramas de flujo
 Debemos recordar que un diagrama de flujo debe ilustrar gráficamente
los pasos o procesos a seguir para alcanzar la solución de un
problema.
 Los símbolos colocados adecuadamente, permiten crear una
 Los símbolos colocados adecuadamente, permiten crear una
estructura gráfica flexible que ilustra los pasos a seguir para alcanzar
un resultado específico.
 El diagrama de flujo facilitará más tarde la escritura del programa en
algún lenguaje de programación.
Reglas
1. Todo diagrama de flujo debe tener un inicio y un fin.
Construcción de algoritmos y
diagramas de flujo
2. Las líneas utilizadas para indicar la dirección del flujo del diagrama
deben ser rectas, verticales y horizontales.
3. Todas las líneas utilizadas para indicar la dirección del flujo del
diagrama deben estar conectadas. La conexión puede ser a un
símbolo que exprese lectura, proceso, decisión, impresión, conexión o
fin de diagrama.
fin de diagrama.
4. El diagrama de flujo debe ser construido de arriba hacia abajo (top-
down) y de izquierda a derecha (right to left).
5. La notación utilizada en el diagrama de flujo debe ser independiente
del lenguaje de programación.
6. Es conveniente cuando realizamos una tarea compleja poner
comentarios que expresen o ayuden a entender lo que hicimos.
Construcción de algoritmos y
diagramas de flujo
7. Si el diagrama de flujo requiere más de una hoja para su
construcción, debemos utilizar los conectores adecuados y enumerar
las páginas convenientemente.
8. No puede llegar más de una línea a un símbolo.
8. No puede llegar más de una línea a un símbolo.
Construcción de algoritmos y
diagramas de flujo
Diagrama de flujo del algoritmo, ejemplo 1:
inicio
cve, ht
cve, ht
pht
sueldo ht * pht
cve
sueldo
fin
Construcción de algoritmos y
diagramas de flujo
Diagrama de flujo del algoritmo, ejemplo 2:
inicio
PI 3.1415926536
rad
grad
numgrad rad * (180 / PI)
numgrad
numrad
fin
numrad grad * (PI / 180)
PI 3.1415926536
Construcción de algoritmos y
diagramas de flujo
Diagrama de flujo del algoritmo, ejemplo 3:
inicio
matest, cal1
cal2, cal3
cal2, cal3
cal4
calfin (cal1 + cal2 + cal3 + cal4) / 4
matest
calfin
fin
Esta actividad se debe realizar en grupo de 2 personas y enviar al correo:
clasesjavierpereira@gmail.com
1. Con que valor quedaría asignada la variable A
A (3*2^5 mod 1 + 8*(3-5)  (2+8-1 mod 1)
Actividades
A (3*2^5 mod 1 + 8*(3-5)  (2+8-1 mod 1)
A A o (3+5*8)  3 y ((-6/3 div 4)*2  2)
B 3 mod 2 div 3
C (-B*2  8*3 mod 4) y (‘A’’B’)
A C o no (3=5) y (8  3+B)
2. El maestro de la clase de matemáticas, le solicita desarrollar un
algoritmo y diagrama de flujo que le permita calcular el valor de Y de la
ecuación: Y = 3X2 + 7X – 15, con el motivo de tener una respuesta
más precisa y rápida.
3. La gasolinera Muralla, le acaban de llegar 6 bombas despachadoras
de gasolina normal, el problema es que al despachar cierta cantidad
de gasolina lo registra en galones, pero el precio de la gasolina está
fijado en litros. Desarrollar un algoritmo y diagrama de flujo que calcule
e imprima lo que hay que cobrarle al cliente, se introducirá la cantidad
de galones y el precio por litro.
Actividades
de galones y el precio por litro.
4. El Zoológico la Pastora desea tener un informe estadístico de sus
rinocerontes con respecto a su longevidad, tal que da como datos el
nombre de un rinoceronte, su edad, su peso, y su longitud, expresados
estos dos últimos en libras y pies respectivamente. Desarrollar un
algoritmo y diagrama de flujo que imprima el nombre del rinoceronte,
su edad, su peso expresado en kilogramos y su longitud expresada en
metros.

Más contenido relacionado

Similar a Introducción programación conceptos 40

Introduccion a la_programacion
Introduccion a la_programacionIntroduccion a la_programacion
Introduccion a la_programacionDIGENARO
 
que es software
que es softwareque es software
que es softwarezenaida
 
PresentacióN Informatica
PresentacióN InformaticaPresentacióN Informatica
PresentacióN InformaticaIngrid
 
Peresentacion hardware jennifer muñoz
Peresentacion hardware jennifer muñozPeresentacion hardware jennifer muñoz
Peresentacion hardware jennifer muñozcarloscastro756613
 
Conceptos Basicos Programacion
Conceptos Basicos ProgramacionConceptos Basicos Programacion
Conceptos Basicos ProgramacionMichele André
 
Diapositivas Sobre Hadware y Software Sistema Operativo 1
Diapositivas Sobre Hadware y Software Sistema Operativo 1Diapositivas Sobre Hadware y Software Sistema Operativo 1
Diapositivas Sobre Hadware y Software Sistema Operativo 1Carlos Pavon Materan
 
Presentación de oswaldo
Presentación de oswaldoPresentación de oswaldo
Presentación de oswaldoOswaldo Orosco
 
Clase Ocho TecnologíA 2009
Clase Ocho  TecnologíA 2009Clase Ocho  TecnologíA 2009
Clase Ocho TecnologíA 2009infosistemasuno
 
Introduccion a la Programacion
Introduccion a la ProgramacionIntroduccion a la Programacion
Introduccion a la ProgramacionEduardo Uvidia
 
Software de aplicación
Software de aplicaciónSoftware de aplicación
Software de aplicaciónAndyHP
 
Software de aplicación
Software de aplicaciónSoftware de aplicación
Software de aplicaciónAndyHP
 
Software de aplicación
Software de aplicaciónSoftware de aplicación
Software de aplicaciónAndyHP
 

Similar a Introducción programación conceptos 40 (20)

Introduccion a la_programacion
Introduccion a la_programacionIntroduccion a la_programacion
Introduccion a la_programacion
 
que es software
que es softwareque es software
que es software
 
Software
SoftwareSoftware
Software
 
El computador
El computadorEl computador
El computador
 
Software
SoftwareSoftware
Software
 
Unidad I.
Unidad I.Unidad I.
Unidad I.
 
PresentacióN Informatica
PresentacióN InformaticaPresentacióN Informatica
PresentacióN Informatica
 
Peresentacion hardware jennifer muñoz
Peresentacion hardware jennifer muñozPeresentacion hardware jennifer muñoz
Peresentacion hardware jennifer muñoz
 
Conceptos Basicos Programacion
Conceptos Basicos ProgramacionConceptos Basicos Programacion
Conceptos Basicos Programacion
 
Diapositivas Sobre Hadware y Software Sistema Operativo 1
Diapositivas Sobre Hadware y Software Sistema Operativo 1Diapositivas Sobre Hadware y Software Sistema Operativo 1
Diapositivas Sobre Hadware y Software Sistema Operativo 1
 
Software Y Hardware
Software Y HardwareSoftware Y Hardware
Software Y Hardware
 
Presentación de oswaldo
Presentación de oswaldoPresentación de oswaldo
Presentación de oswaldo
 
Clase Ocho TecnologíA 2009
Clase Ocho  TecnologíA 2009Clase Ocho  TecnologíA 2009
Clase Ocho TecnologíA 2009
 
Introduccion a la Programacion
Introduccion a la ProgramacionIntroduccion a la Programacion
Introduccion a la Programacion
 
Clase 1
Clase 1Clase 1
Clase 1
 
Lab algoritmos 1
Lab algoritmos 1Lab algoritmos 1
Lab algoritmos 1
 
Informática elemental
Informática elemental Informática elemental
Informática elemental
 
Software de aplicación
Software de aplicaciónSoftware de aplicación
Software de aplicación
 
Software de aplicación
Software de aplicaciónSoftware de aplicación
Software de aplicación
 
Software de aplicación
Software de aplicaciónSoftware de aplicación
Software de aplicación
 

Más de Neftaly Niño Villarreal (13)

uml - GGGGGGGGGGGGGGGGGuniremintong.pptx
uml - GGGGGGGGGGGGGGGGGuniremintong.pptxuml - GGGGGGGGGGGGGGGGGuniremintong.pptx
uml - GGGGGGGGGGGGGGGGGuniremintong.pptx
 
Introduccion_a_la_programacion_II.pdf
Introduccion_a_la_programacion_II.pdfIntroduccion_a_la_programacion_II.pdf
Introduccion_a_la_programacion_II.pdf
 
Int_Bases_Datos_III (1).pdf
Int_Bases_Datos_III (1).pdfInt_Bases_Datos_III (1).pdf
Int_Bases_Datos_III (1).pdf
 
Int_Bases_Datos_III (1).pdf
Int_Bases_Datos_III (1).pdfInt_Bases_Datos_III (1).pdf
Int_Bases_Datos_III (1).pdf
 
Int_Bases_Datos_II.pdf
Int_Bases_Datos_II.pdfInt_Bases_Datos_II.pdf
Int_Bases_Datos_II.pdf
 
Actividad 8
Actividad 8Actividad 8
Actividad 8
 
Actividad 1
Actividad 1Actividad 1
Actividad 1
 
Prototipo
Prototipo Prototipo
Prototipo
 
Prototipo
PrototipoPrototipo
Prototipo
 
Diseño instruccional matematicas
Diseño instruccional matematicasDiseño instruccional matematicas
Diseño instruccional matematicas
 
Estrategias%20docentes%20para un-aprendizaje-significativo
Estrategias%20docentes%20para un-aprendizaje-significativoEstrategias%20docentes%20para un-aprendizaje-significativo
Estrategias%20docentes%20para un-aprendizaje-significativo
 
Medición, validez y confiabilidad
Medición, validez y confiabilidadMedición, validez y confiabilidad
Medición, validez y confiabilidad
 
Medición, validez y confiabilidad
Medición, validez y confiabilidadMedición, validez y confiabilidad
Medición, validez y confiabilidad
 

Último

electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejerciciosEfrain Yungan
 
FICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUD
FICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUDFICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUD
FICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUDAlexHoyosCachay
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasPaulina Cargua
 
PRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptx
PRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptxPRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptx
PRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptxciteagrohuallaga07
 
Submodulo III- Control de cloro residual OK.pptx
Submodulo III- Control de cloro residual OK.pptxSubmodulo III- Control de cloro residual OK.pptx
Submodulo III- Control de cloro residual OK.pptxMiltonEPalacios
 
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosRevista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosJeanCarlosLorenzo1
 
SESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdf
SESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdfSESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdf
SESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdfEsvinAlvares
 
elaboración de doc EXPEDIENTE TECNICO.ppt
elaboración de doc EXPEDIENTE TECNICO.pptelaboración de doc EXPEDIENTE TECNICO.ppt
elaboración de doc EXPEDIENTE TECNICO.pptMiltonEPalacios
 
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdfINFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdfsolidalilaalvaradoro
 
GeoS4344444444444444444444444444444444.pdf
GeoS4344444444444444444444444444444444.pdfGeoS4344444444444444444444444444444444.pdf
GeoS4344444444444444444444444444444444.pdffredyflores58
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptxJOSLUISCALLATAENRIQU
 
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalCapacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalamador030809
 
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptxACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptxaxelalejossantos
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTAvanessaecharry2511
 
MATEMATICA BÁSICA FUNCIONES LOGARITMICAS
MATEMATICA BÁSICA FUNCIONES LOGARITMICASMATEMATICA BÁSICA FUNCIONES LOGARITMICAS
MATEMATICA BÁSICA FUNCIONES LOGARITMICASSALVADOR ALTEZ PALOMINO
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSLuisLopez273366
 
224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdf
224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdf224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdf
224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdfLUISSANDOVALJIMENEZ
 
Análisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadísticaAnálisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadísticaJoellyAlejandraRodrg
 
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfSESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfElenaNagera
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfrudy cabezas
 

Último (20)

electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicios
 
FICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUD
FICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUDFICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUD
FICHA TECNICA SIMPLIFICADA APLICADA A UN PROYECTO DE CENTRO DE SALUD
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicas
 
PRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptx
PRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptxPRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptx
PRESENTACION Y PROGRAMAS PRE-REQUISITOS DEL SISTEMA HACCP BPM Y PHS 2023.pptx
 
Submodulo III- Control de cloro residual OK.pptx
Submodulo III- Control de cloro residual OK.pptxSubmodulo III- Control de cloro residual OK.pptx
Submodulo III- Control de cloro residual OK.pptx
 
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de ProyectosRevista estudiantil, trabajo final Materia ingeniería de Proyectos
Revista estudiantil, trabajo final Materia ingeniería de Proyectos
 
SESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdf
SESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdfSESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdf
SESION 2- 2 ATOMO Y ESTRUCTURA ATÓMICA.pdf
 
elaboración de doc EXPEDIENTE TECNICO.ppt
elaboración de doc EXPEDIENTE TECNICO.pptelaboración de doc EXPEDIENTE TECNICO.ppt
elaboración de doc EXPEDIENTE TECNICO.ppt
 
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdfINFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
INFORME DE LA DE PROBLEMÁTICA AMBIENTAL 2 UNIDAD FINAL. PDF.pdf
 
GeoS4344444444444444444444444444444444.pdf
GeoS4344444444444444444444444444444444.pdfGeoS4344444444444444444444444444444444.pdf
GeoS4344444444444444444444444444444444.pdf
 
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx5. MATERIAL COMPLEMENTARIO - PPT  de la Sesión 02.pptx
5. MATERIAL COMPLEMENTARIO - PPT de la Sesión 02.pptx
 
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacionalCapacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
Capacitación Anexo 6 D.s. 023 seguridad y salud ocupacional
 
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptxACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
 
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTACUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
CUENCAS HIDROGRAFICAS CARACTERIZACION GEOMORFOLOGIAS DE LA CUENTA
 
MATEMATICA BÁSICA FUNCIONES LOGARITMICAS
MATEMATICA BÁSICA FUNCIONES LOGARITMICASMATEMATICA BÁSICA FUNCIONES LOGARITMICAS
MATEMATICA BÁSICA FUNCIONES LOGARITMICAS
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
 
224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdf
224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdf224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdf
224154649-Diseno-Por-Flexion-de-Zapata-Aislada-y-de-Hormigon-Simple.pdf
 
Análisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadísticaAnálisis de Varianza- Anova y pruebas de estadística
Análisis de Varianza- Anova y pruebas de estadística
 
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfSESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdf
 

Introducción programación conceptos 40

  • 1. Introducción a la programación
  • 2. Conceptos generales de programación Antes de iniciar el tema, es conveniente, sobre todo para aquellos que comienzan su instrucción informática, hacer un breve repaso de conceptos fundamentales que se han de tomar en cuenta cuando se desarrollan programas que se utilizarán en computadoras. Introducción a la programación Se incluye la metodología que se requiere para diseñar algoritmos de manera sencilla y funcional. ¿Qué es una computadora? Es un dispositivo electrónico utilizado para procesar información y obtener resultados.
  • 3. Los datos y la información se pueden introducir en la computadora por la entrada y a continuación se procesan para producir una salida (resultados). Los datos de entrada y los datos de salida pueden ser, realmente, cualquier cosa, texto, dibujos, o sonidos. Introducción a la programación cualquier cosa, texto, dibujos, o sonidos. ¿Qué es el software? Conjunto de programas escritos para una computadora. ¿Qué es el hardware? Componentes físicos que constituyen la computadora, junto con los dispositivos que realizan las tareas de entrada y salida
  • 4. ¿Qué es un programa? Conjunto de instrucciones que hacen funcionar a la computadora. Organización física de la computadora Introducción a la programación Unidad de control Memoria principal Unidad aritmética lógica Dispositivos de entrada Dispositivos de salida Memoria externa Almacenamiento permanente UPC (procesador)
  • 5. Dispositivos de Entrada/Salida Los dispositivos de Entrada/Salida permiten la comunicación entre la computadora y el usuario para introducir datos (información) para su proceso. Los datos se leen de los dispositivos de entrada y se almacenan en la memoria principal, convierten la información de entrada en señales eléctricas que se almacenan en la memoria principal. Introducción a la programación en señales eléctricas que se almacenan en la memoria principal. Tipos de dispositivos de entrada: • Teclados. • Lápices ópticos. • Palancas de mando (joystick). • Lectores de códigos de barra. • Micrófonos. • Mouse • Cámaras de video, etc
  • 6. Los dispositivos de salida permiten representar resultados (salida) del proceso de los datos. Tipos de dispositivos de salida: • Pantalla. • Impresoras. • Trazadores gráficos (plotters). Introducción a la programación • Trazadores gráficos (plotters). • Reconocedores de voz, etc. Memoria principal Conocida como RAM (Random Access Memory), almacena información (instrucciones de un programa y los datos con los que operan las instrucciones) de manera transitoria, es decir, durante la ejecución de un programa.
  • 7. Unidad Central de Proceso (UPC) Dirige y controla el proceso de información realizado por la computadora, esta conformada por: • Unidad de control (UC).- coordina las actividades de la computadora y determina que operaciones se deben realizar y en que orden; así mismo Introducción a la programación determina que operaciones se deben realizar y en que orden; así mismo controla y sincroniza todo el proceso de la computadora. • Unidad aritmética Lógica (ALU).- realiza operaciones aritméticas y lógicas, tales como sumas, restas, multiplicaciones divisiones y comparaciones. Los datos se pueden leer (recuperar) o escribir (cambiar) por la upc.
  • 8. Memoria auxiliar (externa) Cuando un programa se ejecuta, se debe situar primero en la memoria principal de igual modo que los datos, sin embargo, la información almacenada en la memoria se pierde (borra) cuando se apaga la computadora y, por otra parte, la memoria principal es limitada en Introducción a la programación computadora y, por otra parte, la memoria principal es limitada en capacidad. Por esta razón, para poder disponer de almacenamiento permanente, tanto para programas como para datos se necesitan dispositivos de almacenamiento secundario, auxiliar o masivo. Los dispositivos de almacenamiento secundario o memorias auxiliares (externas o secundarias) más comúnmente utilizadas son CD-ROM, DVD, cintas y discos magnéticos, USB, etc.
  • 9. Tipos de Lenguajes Para que un procesador realice un proceso se le debe suministrar en primer lugar un algoritmo adecuado. El procesador debe ser capaz de interpretar el algoritmo, lo que significa: • Comprender las instrucciones de cada paso. Introducción a la programación • Comprender las instrucciones de cada paso. • Realizar las operaciones correspondientes. Cuando el procesador es una computadora, el algoritmo se ha de expresar en un formato que se denomina programa. Un programa se escribe en un lenguaje de programación y las operaciones que conducen a expresar un algoritmo en forma de programa se llama programación.
  • 10. 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. Los principales tipos de lenguajes utilizados en la actualidad son: • Lenguajes máquina. Introducción a la programación • Lenguajes máquina. • Lenguajes de bajo nivel (ensamblador) • Lenguajes de alto nivel.
  • 11. Lenguajes máquina Son aquellos que están escritos en lenguajes directamente inteligibles por la máquina (computadora), ya que sus instrucciones son cadenas binarias (cadenas o series de dígitos 0’s y 1’s) que especifican una operación. Introducción a la programación Las posiciones (dirección) de memoria implicadas en la operación se denominan instrucciones de máquina o código máquina (código binario). Las instrucciones en lenguaje máquina dependen del hardware de la computadora y, por lo tanto, diferirán de una computadora a otra.
  • 12. Lenguajes máquina Introducción a la programación Ventajas Cargar programas a la memoria sin necesidad de Desventajas Dificultad y lentitud en la codificación memoria sin necesidad de traducción Velocidad de ejecución codificación Poca fiabilidad Dificultad grande de verificar y poner a punto los programas Los programas sólo son ejecutables en el mismo procesador
  • 13. Lenguajes de bajo nivel Son más fáciles de utilizar que los lenguajes máquina, pero, al igual, que ellos, dependen de la máquina en particular. El lenguaje de bajo nivel por excelencia es el ensamblador. Las instrucciones en lenguaje ensamblador son instrucciones conocidas Introducción a la programación Las instrucciones en lenguaje ensamblador son instrucciones conocidas como nemotécnicos. Por ejemplo, típicos de operaciones aritméticas: ADD, SUB, DIV. Un programa escrito en lenguaje ensamblador no puede ser ejecutado directamente por la computadora, en esto se diferencia esencialmente del lenguaje máquina, sino que requiere una fase de traducción al lenguaje máquina.
  • 14. Lenguajes de bajo nivel El programa original escrito en lenguaje ensamblador se denomina programa fuente y el programa traducido en lenguaje máquina se conoce como programa objeto, ya directamente inteligible por la computadora. Introducción a la programación computadora. El traductor de programas fuente a objeto es un programa llamado ensamblador.
  • 15. Lenguajes de alto nivel Son los más utilizados por los programadores, están diseñados para que las personas escriban y entiendan los programas de un modo más fácil que los lenguajes máquina y ensambladores. Un programa escrito en lenguaje de alto nivel es independiente de la Introducción a la programación Un programa escrito en lenguaje de alto nivel es independiente de la máquina; esto es, las instrucciones del programa de la computadora no dependen del diseño del hardware o de una computadora en particular. Los programas escritos en lenguaje de alto nivel son portables o transportables, lo que significa la posibilidad de poder ser ejecutados con poca o ninguna modificación en diferentes tipos de computadoras. Los programas fuente en lenguaje de alto nivel tiene que ser traducidos por los programas traductores, llamados en este caso compiladores.
  • 16. Lenguajes de alto nivel Introducción a la programación Ventajas Tiempo de formación de los programadores relativamente Desventajas Incremento del tiempo de puesta a punto, al necesitarse programadores relativamente corto Similar al lenguaje humano Transportabilidad Reducción del costo de los programas puesta a punto, al necesitarse diferentes traducciones No se aprovechan los recursos internos de la máquina Aumento de la ocupación de memoria Tiempo de ejecución mucho mayor
  • 17. Tipos de lenguajes de alto nivel: C, C++, Fortran, C#, VisualBasic, Java Muy extendidos: Modula-2, Prolog, LISP, Smaltalk Introducción a la programación Modula-2, Prolog, LISP, Smaltalk Gran uso en el mundo profesional: Borland Delphi, C++ Builder, Power Builder Aunque hoy en día el mundo de Internet consume gran cantidad de recursos en forma de lenguajes de programación como: HTML, XML, JavaScript, etc.
  • 18. Tipos de datos Los datos a procesar por una computadora pueden clasificarse en: Simples Estructurados Los datos simples se caracterizan porque ocupan sólo una casilla de Conceptos fundamentales Los datos simples se caracterizan porque ocupan sólo una casilla de memoria, por lo tanto una variable simple hace referencia a un único valor a la vez. dentro de este grupo de datos encontramos: Enteros Reales (flotantes) Caracteres Cadena de caracteres Booleanos
  • 19. Los datos estructurados se caracterizan por el hecho de que con un nombre se hace referencia a un grupo de casillas de memoria. Es decir, un dato estructurado tiene varios componentes. Cada uno de sus componentes puede ser a su vez un dato simple. Dentro de este grupo de datos se encuentran: Conceptos fundamentales grupo de datos se encuentran: Arreglos Cadena de caracteres Registros Dato simple Dato estructurado Identificador Identificador
  • 20. Datos simples Enteros.- son números que no contienen componentes fraccionarias y, por lo tanto, no incluyen el punto decimal, pueden estar precedidos del signo + o -. Por ejemplo: 465 -387 9 99 -1578 125550 Conceptos fundamentales 465 -387 9 99 -1578 125550 Reales (flotantes).- son números que contienen una parte fraccionaria y, por lo tanto, incluyen el punto decimal, pueden esta precedidos del signo + o -. Por ejemplo: 125.87 -124.0 158000.75 -38.5879 Carácter.- contiene un solo carácter y va encerrado entre comillas simples. Por ejemplo: ‘a’ ‘A’ ‘$’ ‘#’ ‘7’ ‘+’ ‘h’ ‘H’
  • 21. Cadena de caracteres.- contiene un conjunto de caracteres alfabéticos, numéricos, y especiales, que sirven para representar y manejar datos como: nombres, descripciones de artículos, direcciones, etc. Van encerrados entre comillas dobles, por ejemplo: Conceptos fundamentales ejemplo: “abc” “Carlos Jiménez” “83-15-24-65” “$8#2” Booleanos.- toma los valores de verdadero (true) o falso (false), no puede ser leído o escrito, sólo asignado, es útil para plantear cierto tipo de condiciones en el manejo de las estructuras lógicas de control.
  • 22. Identificadores, constantes y variables Identificadores. son nombres que se usamos para referirnos a variables, constantes, funciones o cualquier objeto definido por el usuario. Conceptos fundamentales Un identificador se forma de acuerdo a ciertas reglas básicas: El primer carácter que forma un identificador debe ser una letra o el símbolo de subrayado ( _ ). Los demás caracteres pueden ser letras, dígitos o símbolo de subrayado. La longitud del identificador depende del lenguaje de programación a utilizar.
  • 23. Constantes Son datos que no cambian durante la ejecución de un programa. Existen tipos de constantes como tipos de datos, por lo tanto, puede haber constantes enteras, reales (flotantes), de carácter, de cadenas de caracteres, booleanas, etc. Variables Conceptos fundamentales Variables Es un identificador que puede cambiar su valor durante la ejecución de un programa. Se utiliza para representar un dato tipo entero, real (flotante), o una constante de carácter. Por ejemplo: Variable i es de tipo entero variable prom es de tipo real (flotante) Variable opción es de tipo carácter
  • 24. Operaciones aritméticas Para poder realizar operaciones aritméticas necesitamos de operadores aritméticos. Estos operadores nos permiten realizar operaciones aritméticas entre Conceptos fundamentales Estos operadores nos permiten realizar operaciones aritméticas entre operandos: números, constantes o variables. El resultado de una operación aritmética es un número. A continuación presentamos en una tabla los operadores aritméticos, la operación que puede realizar y, un ejemplo de su uso y su resultado:
  • 25. Operadores Aritméticos Operador Aritmético Operación Ejemplo Resultado ** o ^ Potencia 3**2 o 3^2 9 * Multiplicación 5.25*3 15.75 Conceptos fundamentales * Multiplicación 5.25*3 15.75 / División 17/4 4.25 + Suma 58+79 137 - Resta 25.96 -11.25 14.71 Mod Módulo (residuo) 21 mod 2 1 div División entera 19/3 6
  • 26. Al evaluar expresiones que contienen operadores aritméticos debemos respetar la jerarquía en el orden de aplicación. Es decir, si tenemos en una expresión más de un operador, debemos aplicar primero el operador de mayor jerarquía, resolver esa operación y así sucesivamente. Conceptos fundamentales Jerarquía de los operadores aritméticos Operad or Jerarqu ía Operación ** o ^ (Mayor) (menor) Potencia *, /, mod, div Multiplicación, división, módulo, división entera +, - Suma, resta
  • 27. Reglas para resolver una expresión aritmética: 1. Si una expresión contiene subexpresiones entre paréntesis, éstas se evalúan primero, respetando claro la jerarquía de los operadores aritméticos en esta subexpresión. Si las subexpresiones se encuentran anidadas por paréntesis, primero Conceptos fundamentales Si las subexpresiones se encuentran anidadas por paréntesis, primero se evalúan las subexpresiones que se encuentran en el último nivel de anidamiento. 2. Los operadores aritméticos se aplican teniendo en cuenta la jerarquía y de izquierda a derecha.
  • 28. Por ejemplo: Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes: 1). 7 + 5 – 6 2). 9 +7 * 8 – 36 / 5 3). 7 * 5 ** 3 / 4 div 3 1 1 1 Conceptos fundamentales 1 1 1 12 – 6 9 + 56 – 36 / 5 7 * 125 / 4 div 3 2 2 2 = 6 9 + 56 – 7.2 875 / 4 div 3 3 3 65 – 7.2 218.75 div 3 4 4 = 57.8 = 72
  • 29. 4). 7 * 8 * (160 mod 3 ** 3) div 5 * 13 – 28 3640 - 28 1 7 7 * 8 * (160 mod 27) div 5 * 13 – 28 = 3612 2 7 * 8 * 25 div 5 * 13 – 28 Conceptos fundamentales 7 * 8 * 25 div 5 * 13 – 28 3 56 * 25 div 5 * 13 – 28 4 1400 div 5 * 13 – 28 5 280 * 13 – 28 6
  • 30. Expresiones lógicas Las expresiones lógicas o booleanas, están constituidas por números, constantes o variables y operadores lógicos o relacionales. El valor que pueden tomar estas expresiones es de verdadero o falso. Se utilizan con frecuencia en las estructuras selectivas y en las Conceptos fundamentales Se utilizan con frecuencia en las estructuras selectivas y en las estructuras repetitivas. Operadores relacionales Son operadores que permiten comparar dos operandos, los operandos pueden ser números, caracteres, constantes o variables. Las constantes o variables, a su vez, pueden ser de tipo entero, real (flotante), carácter o cadena de caracteres.
  • 31. El resultado de una expresión con operadores relacionales es verdadero o falso. Operadores Relacionales Operador Operación Ejemplo Resultado Conceptos fundamentales Operador Operación Ejemplo Resultado == Igual que “lalo” == “lola” Falso Diferente a ‘x’ ‘y’ Verdadero Menor que 14 25 Verdadero Mayor que 35 10 Verdadero = Menor o igual que 5 = 6 Verdadero = Mayor o igual que 15 = 7 Verdadero
  • 32. Operadores lógicos Son operadores que permiten formular condiciones complejas a partir de condiciones simples. Los operadores lógicos son de: Conjunción (y).- relaciona dos operandos booleanos. Proporciona un valo verdadero (V), si los dos son verdaderos; en caso Conceptos fundamentales valo verdadero (V), si los dos son verdaderos; en caso contrario da un resultado falso (F). Disyunción (o).- relaciona dos operandos booleanos. Proporciona un valor verdadero (V), si uno de los dos es verdadero; en caso contrario da un resultado falso (F). Negación (No).- este operador relaciona sólo un operando booleano y da como resultado un valor opuesto al que tenga el operando.
  • 33. Operadores Lógicos Operador Jerarquía Expresión lógica No (~) (Mayor) No P Y (^) P y Q Jerarquía de todos los Operadores Operadores Jerarquía ( ) (Mayor) ** Conceptos fundamentales (Menor) o P o Q Tabla de verdad de los Operadores Lógicos P Q P ^Q P o Q ~ P ~ Q V V V V F F V F F V F V F V F V V F F F F F V V (Menor) ** *, /, div, mod ==, , , , =, = No ( ~ ) y ( ^ ) o
  • 34. Por ejemplo: Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes: 1). A = 5, B = 16 2). X = 6, B = 7.8 (A ** 2) (B * 2) (X * 5 + B ** 3 / 4) = (X ** 3 div B) 1 1 Conceptos fundamentales 1 1 25 (B * 2) (X * 5 + 474.552 / 4) = (X ** 3 div B) 2 2 25 32 (30 + 474.552 / 4) = (X ** 3 div B) 3 3 (30 + 118.638) = (X ** 3 div B) Falso 4 Continua
  • 35. Continuación 2) 148.638 = (X ** 3 div B) 5 148.638 = (216 div B) 6 Conceptos fundamentales 6 148.638 = 27 Falso 3). ~(15 = 7 ** 2) o (43 – 8 * 2 div 4 3 * 2 div 2) 1 ~(15 = 49) o (43 – 8 * 2 div 4 3 * 2 div 2) 2 3 Continua
  • 36. Continua 3). ~ Falso o (43 – 16 div 4 3 * 2 div 2) Verdadero o Verdadero 4 10 ~ Falso o (43 – 4 3 * 2 div 2) Verdadero 5 Conceptos fundamentales 5 ~ Falso o (43 – 4 6 div 2) 6 ~ Falso o (43 – 4 3) 7 ~ Falso o (39 3) 8 ~ Falso o Verdadero 9
  • 37. Operación de Asignación Consiste en atribuir un valor a una variable o Constante. Su representación En algunos Lenguajes la asignación esta representada por = ó := Ejemplo: Conceptos fundamentales Ejemplo: Asignar a la variable A el valor de 5. A 5 El proceso de asignación se realiza en 2 fases: Se evalúa la expresión de la parte derecha de la asignación obteniéndose un único valor. Se asigna ese valor a la variable de la parte izquierda.
  • 38. Operación de Asignación Se debe tener en cuenta: En la parte izquierda sólo puede haber una variable. La variable a la que se le asigna el valor pierde su valor anterior. La variable que aparece en la derecha ya que como se evalúa primero Conceptos fundamentales La variable que aparece en la derecha ya que como se evalúa primero la de la derecha cuando se tenga que evaluar el valor de esa variable se tomara su valor antiguo. El tipo del valor que se obtiene al evaluar la parte derecha tiene que ser el mismo que el tipo de la variable de la parte izquierda, es decir a una variable solo se le pueden dar valores de su mismo tipo Ejemplo A: entero A 2 A 3*A + A = 8
  • 39. Tipos de Operación de Asignación Asignación variable numérica En una variable numérica (declarada como entero o real) sólo se podrán guardar datos numéricos. Conceptos fundamentales guardar datos numéricos. Asignación de un número (constante numérica) a una variable numérica. Asumamos que la variable A ha sido declarada de tipo entero, si queremos asignar el valor de 5 en ella lo haríamos de la siguiente manera. A 5
  • 40. Tipos de Operación de Asignación Asignación del resultado de una expresión aritmética a una variable numérica. Asumamos que las variable A ha sido declarada de tipo entero y queremos copiar en ella el resultado de la expresión aritmética Conceptos fundamentales entero y queremos copiar en ella el resultado de la expresión aritmética 5*2 +1 se haría de la siguiente manera. A 5* 2 +1 luego A = 11 Es posible que la expresión aritmética este formada con variables numéricas, para ilustrarlo asumamos que A, B y C han sido declaradas de tipo entero y que en B ya hemos asignado un 10 (B 10) y en C hemos copiado un dos (C 2). si queremos asignar en A lo que tiene B mas lo que tiene C, se haría de la siguiente manera: A B + C luego es resultado es A = 12
  • 41. Tipos de Operación de Asignación Asignación variable tipo de cadena En una variable de tipo cadena se pueden guardar cadenas directamente o el resultado de evaluar una expresión de cadena. Conceptos fundamentales directamente o el resultado de evaluar una expresión de cadena. Asumamos que la variable NOMBRE ha sido declarada de tipo cadena, si queremos copiar en ella el nombre María lo haríamos de la siguiente manera. NOMBRE María
  • 42. Tipos de Operación de Asignación Asignación variable tipo lógico En una variable lógica sólo se podrán guardar datos lógicos ( verdadero o falso) o el resultado de evaluar una expresión lógica. Conceptos fundamentales verdadero o falso) o el resultado de evaluar una expresión lógica. Asumamos que la variable BANDERA ha sido declarada de tipo lógico, si queremos copiar en ella el resultado de la expresión lógica 2 10, lo haríamos de la siguiente manera. BANDERA 2 10 Copiaría en la variable BANDERA el valor de falso, pues 2 no es mayor que 10.
  • 43. Entrada y salida de información Las operaciones de entrada permiten leer determinados valores y asignarlos a determinadas variables. Esta entrada se conoce como operación de lectura. Conceptos fundamentales operación de lectura. La salida puede aparecer en un dispositivo de salida. La operación de salida se denomina escritura
  • 44. Concepto de algoritmo Los seres humanos realizamos una serie de pasos, procedimientos o acciones que nos permiten alcanzar un resultado o resolver un problema, esto se repite innumerables veces durante el día. En realidad estamos aplicando un algoritmo para resolver un problema. Algoritmos y diagramas de flujo estamos aplicando un algoritmo para resolver un problema. Definición de Algoritmo.- secuencia ordenada y cronológica de pasos que llevan a la solución de un problema o a la ejecución de una tarea (o actividad).
  • 45. El algoritmo debe tener las siguientes características: Tener un principio Ser simples, claros, precisos, exactos. Tener un orden lógico. Debe ser finito. Algoritmos y diagramas de flujo Debe ser finito. Tener un fin. • La definición de un algoritmo debe describir tres partes: Entrada. Proceso. Salida
  • 46. La serie de pasos, procedimientos o acciones que nos permiten alcanzar un resultado o resolver un problema a través de algoritmos, los desarrollamos por medio de pseudocódigo. El pseudocódigo describe un algoritmo utilizando una mezcla de frases en lenguaje común, instrucciones de programación y palabras clave que definen las estructuras básicas. Algoritmos y diagramas de flujo definen las estructuras básicas. El objetivo del pseudocódigo es permitir que el programador se centre en los aspectos lógicos de la solución, evitando las reglas de sintaxis de los lenguajes de programación. No siendo el pseudocódigo un lenguaje formal, los pseudocódigos varían de un programador a otro, es decir, no hay un pseudocódigo estándar.
  • 47. Algoritmos y diagramas de flujo Diagramas de flujo Un diagrama de flujo representa la esquematización gráfica de un algoritmo. En realidad muestra gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema. Su correcta construcción es sumamente importante porque, a partir del mismo se escribe un programa en algún lenguaje de programación. Si el diagrama de flujo está completo y correcto, el paso del mismo a un lenguaje de programación es relativamente simple y directo. A continuación, presentamos los símbolos que utilizaremos y una explicación de los mismos. Estos satisfacen las recomendaciones de la ISO y la ANSI.
  • 48. Símbolo utilizado para marcar el inicio y el fin del diagrama flujo. Símbolo utilizado para introducir los datos de entrada. Expresa lectura. Algoritmos y diagramas de flujo Símbolo utilizado para representar un proceso. En su interior se expresan asignaciones, operaciones aritméticas, cambios de valor de celdas en memoria, etc. Símbolo utilizado para representar una decisión. En su interior se almacena una condición y dependiendo del resultado de la evaluación de la misma se sigue por una de las ramas o caminos alternativos: verdadero o falso.
  • 49. Símbolo utilizado para representar la impresión de un resultado. Expresa escritura. Símbolo utilizado para expresar conexión dentro de una misma página. Algoritmos y diagramas de flujo página. Símbolos utilizados para expresar la dirección del flujo del diagrama Símbolo utilizado para expresar conexión entre páginas diferentes.
  • 50. Símbolo utilizado para representar una decisión múltiple. En su interior se Algoritmos y diagramas de flujo decisión múltiple. En su interior se almacena un selector y dependiendo del valor de dicho selector se sigue por una de las ramas o caminos alternativos.
  • 51. Estructura y diseño de un algoritmo Existe una gran cantidad de problemas que requieren de un análisis profundo y de un pensamiento flexible y estructurado para la solución. La idea es ofrecer un conjunto de técnicas y herramientas metodológicas Construcción de algoritmos y diagramas de flujo La idea es ofrecer un conjunto de técnicas y herramientas metodológicas que permitan flexibilizar y estructurar el razonamiento utilizado en la solución de problemas, esto provocará finalmente la construcción de algoritmos eficientes. A continuación en la figura podemos observar las etapas que debemos seguir para la solución de un problema
  • 52. Construcción de algoritmos y diagramas de flujo Problema Análisis profundo del problema Construcción del algoritmo Verificación el algoritmo Etapa 1 Etapa 2 Etapa 3 Nota.- Por verificación del algoritmo entendemos el seguimiento del mismo con datos que sean representativos del problema que queremos resolver
  • 53. Construcción de algoritmos y diagramas de flujo La secuenciación es una estructura de control que permite a la computadora ejecutar una acción, después otra, luego la que sigue y así sucesivamente hasta la última. Dichas acciones pueden consistir en operaciones primitivas elementales como declaraciones de variables, leer datos, imprimir datos o calcular como declaraciones de variables, leer datos, imprimir datos o calcular alguna expresión. Es conveniente etiquetar cada acción con números desde el uno en forma ascendente de uno en uno, para denotar el orden secuencial. Por lo tanto los elementos básicos que integran la estructura de un algoritmo son:
  • 54. Construcción de algoritmos y diagramas de flujo 1. Encabezado.- todo algoritmo debe tener un encabezado como identificación, el cual debe empezar con la palabra Algoritmo seguida por una descripción del problema a resolver. 2. Inicio.- todo algoritmo debe empezar con la etiqueta 1, que marca el inicio del mismo. inicio del mismo. 3. Declaraciones.- después de marcar el inicio se debe hacer las declaraciones que se necesiten como: variables, constantes, tipos de datos, etc. 4. Leer, calcular e imprimir.- los siguientes pasos pueden consistir en acciones tales como: leer datos, calcular algunas expresiones aritméticas e imprimir datos tantas veces como se requiera y en el orden apropiado para resolver el problema en cuestión. 5. Fin del algoritmo.- el último paso del algoritmo consiste en incluir la indicación fin.
  • 55. Construcción de algoritmos y diagramas de flujo Ejemplo No 1 de algoritmos secuenciales Calcular e imprimir el sueldo de un empleado, se pedirá la clave del empleado, las horas trabajadas y el pago por hora trabajada. Algoritmo Calcular el sueldo de un empleado 1. Inicio 1. Inicio 2. Declaración de variables: cve, ht: entero pht, sueldo: real (flotante) 3. Leer cve, ht, pht 4. sueldo ht * pht 5. Imprimir cve, sueldo 6. Fin
  • 56. Construcción de algoritmos y diagramas de flujo Ejemplo No 2.- desarrollar un algoritmo que permita leer un número en radianes e imprima su equivalencia en grados; así mismo, leer un número en grados e imprima su equivalencia en radianes. Algoritmo Convierte radianes a grados y grados a radianes 1. Inicio 2. Declaración de variables: PI 3.1415926536: real (flotante) rad, grad, numrad, numgrad: real (flotante) 3. Leer rad, grad 4. numgrad rad * (180 / PI) 5. numrad grad * (PI / 180) 6. Imprimir numgrad, numrad 7. Fin
  • 57. Construcción de algoritmos y diagramas de flujo Ejemplo No 3.- desarrollar un algoritmo para calcular el promedio de un estudiante, se pedirá la matricula del estudiante y cuatro calificaciones de los exámenes. Se imprimirá la matricula del estudiante y el promedio. Algoritmo calcular promedio de un estudiante 1. Inicio 1. Inicio 2. Declaración de variables matest: entero cal1, cal2, cal3, cal4, calfin: real (flotante) 3. Leer matest, cal1, cal2, cal3, cal4 4. calfin (cal1 + cal2 + cal3 + cal4) / 4 5. Imprimir matest, calfin 6. Fin
  • 58. Construcción de algoritmos y diagramas de flujo Reglas para la construcción de diagramas de flujo Debemos recordar que un diagrama de flujo debe ilustrar gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema. Los símbolos colocados adecuadamente, permiten crear una Los símbolos colocados adecuadamente, permiten crear una estructura gráfica flexible que ilustra los pasos a seguir para alcanzar un resultado específico. El diagrama de flujo facilitará más tarde la escritura del programa en algún lenguaje de programación. Reglas 1. Todo diagrama de flujo debe tener un inicio y un fin.
  • 59. Construcción de algoritmos y diagramas de flujo 2. Las líneas utilizadas para indicar la dirección del flujo del diagrama deben ser rectas, verticales y horizontales. 3. Todas las líneas utilizadas para indicar la dirección del flujo del diagrama deben estar conectadas. La conexión puede ser a un símbolo que exprese lectura, proceso, decisión, impresión, conexión o fin de diagrama. fin de diagrama. 4. El diagrama de flujo debe ser construido de arriba hacia abajo (top- down) y de izquierda a derecha (right to left). 5. La notación utilizada en el diagrama de flujo debe ser independiente del lenguaje de programación. 6. Es conveniente cuando realizamos una tarea compleja poner comentarios que expresen o ayuden a entender lo que hicimos.
  • 60. Construcción de algoritmos y diagramas de flujo 7. Si el diagrama de flujo requiere más de una hoja para su construcción, debemos utilizar los conectores adecuados y enumerar las páginas convenientemente. 8. No puede llegar más de una línea a un símbolo. 8. No puede llegar más de una línea a un símbolo.
  • 61. Construcción de algoritmos y diagramas de flujo Diagrama de flujo del algoritmo, ejemplo 1: inicio cve, ht cve, ht pht sueldo ht * pht cve sueldo fin
  • 62. Construcción de algoritmos y diagramas de flujo Diagrama de flujo del algoritmo, ejemplo 2: inicio PI 3.1415926536 rad grad numgrad rad * (180 / PI) numgrad numrad fin numrad grad * (PI / 180) PI 3.1415926536
  • 63. Construcción de algoritmos y diagramas de flujo Diagrama de flujo del algoritmo, ejemplo 3: inicio matest, cal1 cal2, cal3 cal2, cal3 cal4 calfin (cal1 + cal2 + cal3 + cal4) / 4 matest calfin fin
  • 64. Esta actividad se debe realizar en grupo de 2 personas y enviar al correo: clasesjavierpereira@gmail.com 1. Con que valor quedaría asignada la variable A A (3*2^5 mod 1 + 8*(3-5) (2+8-1 mod 1) Actividades A (3*2^5 mod 1 + 8*(3-5) (2+8-1 mod 1) A A o (3+5*8) 3 y ((-6/3 div 4)*2 2) B 3 mod 2 div 3 C (-B*2 8*3 mod 4) y (‘A’’B’) A C o no (3=5) y (8 3+B) 2. El maestro de la clase de matemáticas, le solicita desarrollar un algoritmo y diagrama de flujo que le permita calcular el valor de Y de la ecuación: Y = 3X2 + 7X – 15, con el motivo de tener una respuesta más precisa y rápida.
  • 65. 3. La gasolinera Muralla, le acaban de llegar 6 bombas despachadoras de gasolina normal, el problema es que al despachar cierta cantidad de gasolina lo registra en galones, pero el precio de la gasolina está fijado en litros. Desarrollar un algoritmo y diagrama de flujo que calcule e imprima lo que hay que cobrarle al cliente, se introducirá la cantidad de galones y el precio por litro. Actividades de galones y el precio por litro. 4. El Zoológico la Pastora desea tener un informe estadístico de sus rinocerontes con respecto a su longevidad, tal que da como datos el nombre de un rinoceronte, su edad, su peso, y su longitud, expresados estos dos últimos en libras y pies respectivamente. Desarrollar un algoritmo y diagrama de flujo que imprima el nombre del rinoceronte, su edad, su peso expresado en kilogramos y su longitud expresada en metros.