Está en la página 1de 50

Ing.

Hector Arturo Ramos


Elaborado por:
hramosturcios2@gmail.com
 Computadora
 Dato
 Tipos de datos
 Identificadores
 Variables, Constantes
 Operadores, Expresiones
 Ejercicios

Una computadora es una
máquina electrónica
digital capaz de
procesar información y
producir datos de salida
para lo cual requiere de
ciertos datos de entrada,
esta compuesta por dos Hardware: es la parte física
elementos de la computadora, es
fundamentales:
aquello que podemos ver y
 Software. tocar
 Hardware Software: es la parte lógica
de la computadora
Dispositivos de entrada/salida

CPU
Unidad Aritmética-lógica

Unidad de Control

Memoria Principal

Memoria Auxiliar
 Los datos son los objetos de información sobre los que actúa
un programa.
 Un dato puede ser un simple carácter como 'a', un valor
entero tal como 35, un número real tal como 2.345 o una
cadena tal como "algoritmia".
 Todos los datos tienen un tipo asociado con ellos

Numéricos (enteros, reales)


Simples Alfanuméricos (string)
Lógicos (verdad o falso)
Tipos de
Datos Arreglos (Vectores, Matrices)
Estructurados Registros
Archivos
Apuntadores
 Identificador: es un nombre que puede darse a una
variable, a una constante y en general a cualquier
elemento de un programa que necesite nombrarse,
sirve para identificar una posición en la memoria de la
computadora.

 Ejemplo
Nombre
Num_hrs
Calif2
 Una Variable es una localización en la memoria principal que
almacena un dato que puede cambiar a lo largo de la ejecución
del programa. Una variable tiene asociada dos cosas
fundamentales: un identificador y un tipo de dato

Ejemplo Edad 27 variable entera


Descuento 23.57 Variable real

 Se denominan constantes a todos aquellos valores que no cambian


durante la ejecución de un programa.

 Constantes enteras 12, 20300, 15, etc.


 Constantes reales 3.1416, 2345.456, etc.
 Constantes de carácter 'a', 'B', ';', '<', '+', etc.
 Constantes de cadena "Hola", “programación", etc.
 Constantes lógicas verdadero, falso
 Las expresiones son combinaciones de constantes,
variables, símbolos de operación, paréntesis y nombres de
funciones especiales.
Ejemplo:
a+(b + 3)/c

 Una expresión consta de operadores y operandos. Según sea el


tipo de datos que manipulan, se clasifican las expresiones en:

 Aritméticas
 Relaciónales
 Lógicas
 Los Operandos son valores constantes o variables
 Los Operadores son elementos que relacionan de forma
diferente los valores de una o mas variables y/o constantes. Es
decir, los operadores nos permiten manipular valores

Operadores Aritméticos Operadores Relacionales


Operador Significado Operador Significado
+ Suma > mayor
- Resta >= mayor o igual que
* Multiplicación < menor
/ División <= menor o igual que
Mod Residuo de división entera  igual a
^ Exponenciación <> diferente de

Operador Significado

Operadores Lógicos no (not) negación


y (and) conjunción
o (or) disyunción
Operador Prioridad
() No es operador
^ Exponenciación
*, /, Mod Div Multiplicación División Residuo
+, - Suma Resta
Mayor, mayor o igual, menor, menor
>,>=,<,<=,,<>
o igual, igual a, diferente de
not, and, or Negación, conjunción, disyunción

Tablas de Verdad de los operadores Not, And, Or

p not p p q p and q p q p or q
V F V V V V V V
F V V F F V F V

F V F F V V

F F F F F F
 Expresar las siguientes condiciones como expresiones
lógicas:
a) B es mayor que 2.
b) M es menor ó igual que 5 pero mayor que 25.
c) P es igual a 6 ó mayor que Q.
d) N es menor que 50.
e) M es mayor que A, B y C.
f) Z esta en el intervalo de 4 a 100.
g) T es igual a 2, 3 ó 4.

Evaluar las siguientes expresiones:


4 + 5 * (10 - 6) / 2 + 3 ^ 4 =
8 + 3 * (25 - (2 + 4)) =

Sea: a = 10, b = 12, c = 13, d =10


((a > b)or(a < c)) and ((a = c) or (a > = b)) =
((a > = b) or (a < d)) and (( a > = d) and (c > d)) =
not (a = c) and (c > b) =
a. B > 2
b. ( M <= 5 ) y ( M > 25 )
c. ( P = 6 ) o ( P > Q )
d. N < 50
e. ( M > A ) y ( M > B ) y ( M > C )
f. ( Z >= 4 ) y ( Z <= 100 )
g. ( T = 2 ) o ( T = 3 ) o ( T= 4)

Evaluar las siguientes expresiones:


= 95
= 65

=F
=F
=V
 La instrucción de asignación se utiliza para
asignar valores a variables o, lo que es igual,
cambiar el valor almacenado en la posición de
memoria de una variable.

 La operación de asignación se denota con el


símbolo 

 El formato de la instrucción de asignación es:


A  5 significa que a la variable A se le
asigna el valor 5
1. Cuales son los valores de A,B y C después de la
ejecución de las siguientes operaciones?

 A3
 B4
 CA+2*8
 CC+B
 BC-A
 AB*C
F1 F2
•Problema •Algoritmo • programa

F1: Fase de Resolución del Problema


F2: Fase de Implementación en la Computadora
RESOLUCION DEL
PROBLEMA

Verificación
Análisis del Diseño del
Manual del
Problema Algoritmo
Algoritmo
- Definición del Problema
Análisis del
- Datos de Entrada
Problema
- Datos de Salida

-Herramientas - DFD
Resolución Diseño del
del de - Pseudocódigo
Algoritmo
Problema Programación - Chapin
Verificación - Hacer para
Manual del - Hacer mientras
Algoritmo - Repetir hasta
 El objetivo de esta fase es ayudar al programador a
comprender la naturaleza del problema, para lo cual éste
requiere el máximo de su imaginación y creatividad. Para esto
se debe identificar claramente que tipo de información se
necesita producir, y luego aquellos elementos dados en el
problema que pueden ser útiles para obtener la solución.

 Ejemplo: Leer dos números y calcular su suma.


Análisis del Problema
Variables de entrada
A : número real
B : número real
Variables de salida
S : suma de los números A y B, número real
En la etapa de Análisis se determina QUE hará el
programa, mientras que en la etapa de Diseño se
determina COMO hará el programa la tarea solicitada.
 Un Algoritmo es un conjunto ordenado y finito de
pasos o instrucciones que conducen a la solución
de un problema

 Características de un Algoritmo
 Preciso – indicar el orden de realización
 Definido – no debe permitir dobles interpretaciones, no ambiguo
 Finito – debe tener un número finito de instrucciones, terminar
 General – soportar la mayoría de las variantes
 Efectivo – ser capaz de resolver el problema planteado

 Tipos de Algoritmos
 Cualitativos
 Cuantitativos
Cualitativos: Son aquellos en los que se describen los
pasos utilizando palabras.

Ejemplo: Algoritmo para cocinar un huevo duro.


Inicio
P1. Llenar la olla con agua
P2. Encender el fuego de la cocina
P3. Poner la olla al fuego
P4. Esperar hasta que hierva el agua
P5. Introducir el huevo en la olla
P6. Esperar 10 minutos
P7. Apagar el fuego
P8. Vaciar el agua
P9. Sacar el huevo de la olla
Fin
Cuantitativos: Son aquellos en los que se utilizan
cálculos numéricos.

Ejemplo: Algoritmo para sumar dos números.

Inicio
P1. Leer (A,B)
P2. C  A + B
P3. Escribir ( C )
Fin
Las herramientas utilizadas comúnmente para
diseñar algoritmos son:

◦ Diagramas de Flujo
◦ Pseudocódigo
◦ Diagrama Estructurado (Nassi-Schneiderman)
Inicio
 Es la representación grafica
de un algoritmo Leer

 Esta representación grafica se Proceso


da cuando varios símbolos se F V
relacionan entre si mediante Decisión
líneas que indican el orden en
que se deben ejecutar los Proceso Proceso
procesos

Escribir

Fin
Representa el INICIO “C” y el FINAL “fin” del de
un programa
Representa la ENTRADA/SALIDA de datos desde
o hacia cualquier periférico de entrada o salida

Representa PROCESO, se utiliza para realizar


cualquier tipo de operación que pueda originar
cambios de valores en las variables, pueden ser
operaciones aritméticas, de transferencia, etc.

Representa DECISION, se utiliza para indicar


operaciones lógicas o de comparación entre
datos, dependiendo del resultado cual de los
caminos alternativos a seguir.

CONECTOR, se utiliza para enlazar dos partes


cualesquiera de un diagrama de flujo en la misma
página
CONECTOR, se utiliza para enlazar dos partes
cualesquiera de un diagrama de flujo en diferentes
páginas.

LINEAS DE FLUJO, indican el sentido de ejecución de


las operaciones. (flujo de la información)

LINEA CONECTORA, se utiliza para unir dos símbolos

Se utiliza para realizar llamadas a subprogramas

IMPRESORA, se utiliza para enviar datos a la


impresora

PANTALLA, se utiliza para mostrar los resultados por


pantalla
Expresión ó Símbolo utilizado para
Variable
representar una decisión
múltiple.
v1 v2 vn Dependiendo del valor de la
Acción 1 Acción 2 Acción N expresión se sigue una de
las ramas o caminos
alternativos.
 Usar solamente líneas de flujo horizontales y/o
verticales.
 Evitar el cruce de líneas
 Usar conectores solo cuando sea necesario.
 No deben quedar líneas de flujo sin conectar
 Se deben trazar los símbolos de manera que se
puedan leer de arriba hacia abajo y de izquierda a
derecha.
 Es la representación narrativa de los pasos que
debe seguir un algoritmo para dar solución a un
problema determinado

 Mezcla de lenguaje de programación y español (o


ingles o cualquier otro idioma) que se emplea,
dentro de la programación estructurada, para
realizar el diseño de un programa
 Español  Ingles
Inicio Begin
Fin End
Leer Read
Escrbir Write
Si-entonces-sino If - Then- Else
Desde For
Mientras While
Repetir – hasta Repeat-Until
Identación Sin Identación

Si (x < 5) Entonces Si (x < 5) Entonces


y  n *x y  n *x
Sino Sino
y  n/5 y  n/5
Fin-si Fin-si
El diagrama estructurado N-S también
conocido como diagrama de chapín es como
un diagrama de flujo en el que se omiten las
flechas de unión y las cajas son contiguas.

Las acciones sucesivas se pueden escribir en


cajas sucesivas y como en los diagramas de
flujo
Inicio
Acción 1
Acción 2
Estructura secuencial Acción 3
.........
Fin

Estructura Condicional Condición


V F
Si – Entonces – Sino Acciones Acciones
(If –Then-Else)
1
2 Expresión
Estructura 3 Otros
4
Según sea
(Case)
Desde <contador>
Estructura desde (For) Acciones
Vi a Vf (Paso p)

Mientras <condición>
Estructura Mientras (While)
Acciones

Estructura Repetir – Hasta Acciones


(Repeat - Until)
Repetir hasta <cond>
 Programación Estructurada es un conjunto de técnicas para
desarrollar programas fáciles de escribir, verificar, leer y
mantener

 Razones por las que se utiliza la programación estructurada

◦ Permite una fácil comprensión del programa


◦ Permite ahorrar el número de instrucciones del programa
◦ Permite una fácil modificación de las instrucciones del programa
◦ Permite un fácil mantenimiento del programa
 Estas estructuras se clasifican de acuerdo con
su complejidad en:
- Asignación
Secuenciales - Entrada
- Salida

- Simples (If-Then)
Estructura - Dobles (If-Then-Else)
Condicionales
Algorítmicas - Múltiples (Case)
- Para/Desde (For)
Cíclicas o - Mientras (While)
Repetitivas - Repetir Hasta
(Repeat- Until)
 La estructura secuencial es aquella en la que
una acción (instrucción) sigue a otra en
secuencia
 Una estructura secuencial se representa de
la siguiente forma:
Acción 1
Inicio
Accion1
Accion2 Acción 2
. .
AccionN Acción N
Fin
Ejecuta una determinada acción cuando se cumple una
determinada condición. La selección if – then (si –
entonces) evalúa la condición y si es verdadera ejecuta
la acción o las acciones de lo contrario no hará nada

F V
Condición si (Condición) entonces
Acción A
Acción B
Acción A fin_si

Acción B
Permite elegir entre dos opciones posibles en función del
cumplimiento o no de una determinada condición. Si la
condición es verdadera, se ejecuta la acción A -o conjunto
de acciones- y si es falsa, se ejecuta la acción 1 –o conjunto
de acciones.
F V
Condición Si (Condición) Entonces
Acción A
Acción B
Acción 1 Acción A Sino
Acción 1
Acción 2 Acción B Acción 2
fin_si
Permite elegir entre dos opciones posibles en función del
cumplimiento o no de una determinada condición. Si la
condición es verdadera, se ejecuta la acción A -o conjunto
de acciones- y si es falsa, se ejecuta la acción 1 –o conjunto
de acciones.
F V
Condición Si (Condición) Entonces
Acción A
Acción B
Acción 1 Acción A Sino
Acción 1
Acción 2 Acción B Acción 2
fin_si
La estructura de selección múltiple evaluará una expresión
que podrá tomar n valores distintos 1, 2, 3, 4, …..n. Según
que elija uno de estos valores en la condición, se realizará
una de las n acciones.

según_sea variable hacer


Variable op1: acción1
op2: acción2
.
= op1 = op2 = op N .
Acción 1 Acción 2 ………. Acción N opn: acción N
sino: acciónX
fin_según
Pseudocódigo

Inicio
Leer A, B
Leer sw
según_sea sw hacer
1: c  A + B
Mostrar c
2: c  A – B
Mostrar c
3: c  A * B
Mostrar c
4: si B <> 0 entonces
CA/B
Mostrar C
si_no
Mostrar “b debe ser
distinto de cero”
fin_si
si_no: Mostrar “valor
ingresado debe estar
entre 1 y 4”
fin_según
Fin
var  vi , vf, inc

Acciones

Para var  vi hasta vf [inc/dec] valor hacer


acción1
acción2
fin_para
Ejemplo Mostrar los N primeros números naturales.

Diagrama de Flujo

Pseudocódigo

Inicio
Leer N
para i  1 hasta N hacer
Mostrar i
fin_para
Fin
F F
CONDICIÓN Condición

V V
Acciones Acción A

Acción B
i
Símbolo utilizado para
representar una estructura
repetitiva.

Mientras la condición se cumpla


realizar las acciones
Ejemplo Mostrar los N primeros números naturales.

Pseudocódigo

Inicio
Leer N
i1
mientras i <= N hacer
Mostrar i
ii+1
fin_mientras
Fin
Acción A
Acciones
Acción B
F CONDICIÓN
F Condición
V
Símbolo utilizado para
representar una estructura V
repetitiva.

Repetir las acciones hasta que


la condición se cumpla
Ejemplo Mostrar los N primeros números naturales.

Pseudocódigo

Inicio
repetir
Leer N
hasta_que (N > 0)
i1
repetir
Mostrar i
ii+1
hasta_que (i > N)
Fin

También podría gustarte