Académique Documents
Professionnel Documents
Culture Documents
Lenguajes Algortmicos
Grficos
No Grficos
Definicin del Problema
Esta fase est dada por el enunciado del problema, el cual requiere una
definicin clara y precisa. Es importante que se conozca lo que se desea
que realice el computadora; mientras esto no se conozca del todo no tiene
mucho caso continuar con la siguiente etapa.
Anlisis del Problema
Diseo del Algoritmo
Codificacin
Prueba y Depuracin
Documentacin
Mantenimiento
Codificacin
La codificacin es la operacin de escribir la solucin del problema
(de acuerdo a la lgica del diagrama de flujo o pseudocdigo), en una
serie de instrucciones detalladas, en un cdigo reconocible por la
computadora, la serie de instrucciones detalladas se le conoce como
cdigo fuente, el cual se escribe en un lenguaje de programacin.
Prueba y Depuracin
Documentacin
Mantenimiento
Tipos De Datos
Todos los datos tienen un tipo asociado con ellos. Un dato puede ser
un simple carcter, tal como b, un valor entero tal como 35. El tipo de
dato determina la naturaleza del conjunto de valores que puede tomar
una variable.
Carcter
Expresiones
Las expresiones son combinaciones de constantes, variables, smbolos
de operacin, parntesis y nombres de funciones especiales. Por
ejemplo:
a + (b + 3)/c
Operadores y Operandos
Operadores: Son elementos que relacionan de forma diferente, los
valores de una o ms variables y/o constantes. Es decir, los operadores
nos permiten manipular valores.
Operadores Aritmticos
+ Suma
Resta
*
Multiplicacin
/
Divisin
MOD
Modulo (residuo de la divisin entera)
DIV
Divisin Entera
Ejemplos:
Expresin
7/2
7 mod 2
7 div 2
12 mod 7
2 div 7
4 +2*5
Resultado
3.5
1
3
5
1
14
Ejemplos:
1)
2)
3)
4)
5)
6)
7)
8)
9)
4 + 2 * 5 = 14
23 * 2 / 5 = 9.2
46 / 5 = 9.2
3 + 5 * (10 - (2 + 4)) = 23
3 + 5 * (10 - 6) = 3 + 5 * 4 = 3 + 20 = 23
3.5 + 5.09 - 14.0 / 40 = 5.09
3.5 + 5.09 - 3.5 = 8.59 - 3.5 = 5.09
2.1 * (1.5 + 3.0 * 4.1) = 28.98
2.1 * (1.5 + 12.3) = 2.1 * 13.8 = 28.98
Operadores Relacionales:
Se utilizan para establecer una relacin entre dos valores.
Compara estos valores entre si y esta comparacin produce un
resultado de certeza o falsedad (verdadero o falso).
Los operadores relacionales comparan valores del mismo tipo
(numricos o alfanumricos).
Tienen el mismo nivel de prioridad en su evaluacin.
Los operadores relacionales tiene menor prioridad que los aritmticos.
Operadores Relacionales
> Mayor que
< Menor que
>= Mayor o igual que
<= Menor o igual que
< > Diferente, Distinto
= Igual
Ejemplos:
Si a = 10;
b = 20;
a+b>c
a-b<c
a-b=c
a*b<>c
c = 30
Falso
Verdadero
Falso
Verdadero
a<b<c
10 < 20 < 30
Verdad < 30
(No es vlido porque tiene diferentes operandos)
Operadores Lgicos:
Estos operadores se utilizan para establecer relaciones entre valores
lgicos.
Estos valores pueden ser resultado de una expresin relacional.
Operadores Lgicos
And
Or
Not
Y
O
Negacin
&&
||
!
Operando2
V
F
V
F
Resultado
V
F
F
F
Operador Or ( | | ) Pipe
Operando1 Operador
V
OR
V
F
F
Operando2
V
F
V
F
Operador Not ( ! )
Operando
V
F
Ejemplos:
Resultado
F
V
Resultado
V
V
V
F
2)
3)
c = 13;
d =10
= c) or (a >= b))
F
F
a >= d) and (c > d))
V
V
V
Identificadores
Representan los datos de un programa (constantes, variables, tipos de
datos). Un identificador es una secuencia de caracteres que sirve para
identificar una posicin en la memoria en el computadora, que nos
permite accesar a su contenido.
Ejemplo:
Nombre
Num_hrs
Calif2
(No confundir con variable)
Reglas para formar un Identificador
Debe comenzar con una letra (A a Z, maysculas o minsculas) y no
deben contener espacios en blanco.
Letras, dgitos y caracteres como el underscore ( _ ) estn permitidos
despus del primer carcter.
Constantes y Variables
Constante: Una constante es un dato numrico o alfanumrico que no
cambia durante la ejecucin del programa.
Ejemplo:
PI = 3.1416
Variable: Es un espacio en la memoria del computadora que permite
almacenar temporalmente un dato durante la ejecucin de un
proceso, su contenido puede cambiar durante la ejecucin del
programa. Para poder reconocer una variable en la memoria del
computadora, es necesario darle un nombre con el cual podamos
identificarla dentro de un algoritmo.
Ejemplo:
area = PI * radio ^ 2
Las variables son : el radio, el rea y la constate es PI
Carcter
Por su Contenido
Variable Numricas: Son aquellas en las cuales se almacenan valores
numricos, positivos o negativos. Ejemplo:
iva = 0.15
Pi = 3.1416
costo = 2500
Variables Lgicas: Son aquellas que solo pueden tener dos valores
(cierto o falso) estos representan el resultado de una comparacin
entre otros datos. Ejemplo:
Ok = 1 < 2
es_seguro = b > 3
Variables Carcter: Esta formada por caracteres letras, nmeros y
caracteres especiales. Y se utiliza ( ' ) para comilla simple para un
carcter y ( ) comillas dobles para una cadena(string). Ejemplo:
letra = a'
apellido = lopez
direccion = Av. Libertad #190
Por su Uso
Variables de Trabajo: Variables que reciben el resultado de una
operacin matemtica completa y que se usan normalmente dentro
de un programa.
Ejemplo:
resultado = a + b / c
Contadores: Se utilizan para llevar el control del numero de ocasiones
en que se realiza una operacin o se cumple una condicin. Con los
incrementos generalmente de uno en uno.
Ejemplo:
veces = veces + 1
Acumuladores: Forma que toma una variable y que sirve para llevar la
suma acumulativa de una serie de valores que se van leyendo o
calculando progresivamente.
Ejemplo:
suma = suma + b
DIAGRAMA DE FLUJO
Smbolo de INICIO o FIN
ESTRUCTURAS DE CONTROL
Las estructuras de operacin de programas son un grupo de formas de
trabajo, que permiten, mediante la manipulacin de variables, realizar
ciertos procesos especficos que nos lleven a la solucin de problemas.
Estas estructuras se clasifican de acuerdo con su complejidad en:
De Control
Estructuras Secuenciales
La estructura secuencial es aquella en la que una accin (instruccin)
sigue a otra en secuencia. Las tareas se suceden de tal modo que la
salida de una es la entrada de la siguiente y as sucesivamente hasta el
fin del proceso. Una estructura secuencial se representa de la siguiente
forma:
Inicio
Accion1
Accion2
.
.
AccinN
Fin
Asignacin (
La asignacin consiste, en el paso de valores o resultados a una zona
de la memoria. Dicha zona ser reconocida con el nombre de la variable
que recibe el valor. La asignacin se puede clasificar de la siguiente
forma:
Simples: Consiste en pasar un valor constante a una variable
a 15
Contador: Consiste en usarla como un verificador del numero de veces
que se realiza un proceso
a a + 1
Lectura:
La lectura consiste en recibir desde un dispositivo de entrada (el
teclado) un valor. Esta operacin se representa en un pseudo cdigo
como sigue:
LEER (a, b)
Donde a y b son las variables que recibirn los valores
Escritura:
Consiste en mandar por un dispositivo de salida (monitor o impresora)
un resultado o mensaje. Este proceso se representa en un pseudo
cdigo como sigue:
Problemas Secuenciales
Ejemplo 1. Suponga que un individuo quiere invertir su capital en un
banco y desea saber cuanto dinero ganar despus de un mes si el
banco paga a razn de 2% mensual.
Anlisis
Datos de entrada
Capital a invertir (cap_invertir)
Inters pagado por el banco = 2% mensual
Datos de salida
Ganancia obtenida en un mes (ganancia)
Algoritmo Ejemplo 1
INICIO
REAL cap_invertir, ganancia
ESCRIBIR
(Ingresa la cantidad a invertir)
LEER (cap_invertir)
ganancia cap_invertir * 0.02
ESCRIBIR (Tu ganancias a un mes es , ganancia)
cap_invertir cap_invertir + ganancia
ESCRIBIR (y capital sera de , cap_invertir)
FIN
Ejemplo 2. Un vendedor recibe un sueldo base mas un 10% extra por comisin
de sus ventas, el vendedor desea saber cuanto dinero obtendr por concepto de
comisiones por las tres ventas que realiza en el mes y el total que recibir en el
mes tomando en cuenta su sueldo base y comisiones.
Anlisis
Datos de entrada
Sueldo base del vendedor (sueldo_base)
Comisin por venta = 10% de las ventas
Realizo 3 ventas : Venta1, Venta2 y Venta3
Datos de salida
Valor de la comisin de las ventas (comisin)
Sueldo a recibir (sueldo_recibir)
Consideraciones
Para calcular el valor de la comisin, se debe conocer el total de las ventas
Total de las ventas es la suma acumulativa de cada una de las ventas.
La comisin corresponde al 10% del total acumulado de las ventas
El sueldo a recibir es la suma del sueldo base ms la comisin de las ventas.
Algoritmo Ejemplo 2
Inicio
REAL sueldo_base, venta1, venta2, venta3
REAL total_venta, comisin, sueldo_recibir
ESCRIBIR(Ingresa tu sueldo base)
LEER (sueldo_base)
ESCRIBIR(Ingresa el monto de la venta 1)
LEER (venta1)
ESCRIBIR(Ingresa el monto de la venta 2)
LEER (venta2)
ESCRIBIR(Ingresa el monto de la venta 3)
LEER (venta3)
total_venta venta1 + venta2 + venta3
comisin total_venta * 0.10
sueldo_recibir sueldo_base + comisin
ESCRIBIR(Tu sueldo a recibir es de ,
sueldo_recibir,y tu
comisin este
mes es de , comisin)
Fin
Consideraciones
El descuento es el 15 del valor total comprado
Descuento = total_compra * 0.15
Algoritmo Ejemplo 3
Inicio
REAL total_compra, descuento, total_pagar
ESCRIBIR(Ingresa el monto de tu compra)
LEER (total_compra)
descuento total_compra * 0.15
total_pagar total_compra - descuento
ESCRIBIR (La cantidad a pagar menos el 15% de
descuento es de , total_pagar)
Fin
Ejercicios
1. Realizar un algoritmo que lea 3 nmeros y muestre la Suma, el
Producto y la Diferencia de los tres numero ledos.
2. Disear un algoritmo que permita ingresar un valor inicial y un valor
final. Para calcular el valor central de los valores.
3. Construir un algoritmo que calcule y muestre el nmero de segundos
que hay en un determinado nmero de das.
10. Tres personas deciden invertir su dinero para fundar una empresa. Cada
una de ellas invierte una cantidad distinta. Mediante un programa obtener el
porcentaje que cada quien invierte con respecto a la cantidad total invertida.
11. Un alumno desea saber cual ser su promedio general en los tres cursos
ms difciles que cursa y cual ser el promedio que obtendr en cada una de
ellas. Estas materias se evalan como se muestra a continuacin:
La calificacin de Matemticas se obtiene de la sig. manera:
Examen 90%
Promedio de tareas 10%
En esta materia se pidi un total de tres tareas.
La calificacin de Fsica se obtiene de la sig. manera:
Examen 80%
Promedio de tareas 20%
En esta materia se pidi un total de dos tareas.
La calificacin de Programacin se obtiene de la sig. manera:
Examen 85%
Promedio de tareas 15%
En esta materia se pidi un promedio de tres tareas.
Estructuras Condicionales
Las estructuras condicionales comparan una variable contra otro(s)
valor(es), para que en base al resultado de esta comparacin, se
siga un curso de accin dentro del programa. Cabe mencionar que la
comparacin se puede hacer contra otra variable o contra una
constante, segn se necesite. Existen dos tipos bsicos, las simples
y las mltiples.
Algoritmo
Inicio
Entero cap_inv
Real p_interes, ineres_calculado, saldo
Escribir(Ingresa la tasa de interes y tu
cantidad a invertir )
Leer (p_interes, cap_inv)
saldo cap_inv
interes_calculado cap_inv * p_interes
SI (interes_calculado > 7000) entonces
saldo cap_inv + interes_calculado
Fin Si
Escribir (Ahora tienes es, saldo)
Fin
Algoritmo
Inicio
Real Nota1, Nota2, Nota3
Real Promedio
Escribir (Anota tus tres calificaciones )
Leer (Nota1, Nota2, Nota3)
Promedio (Nota1 + Nota2 + Nota3) / 3
Si (Promedio >= 4.0) entonces
Escribir(Con , Promedio, estas Aprobado)
si no
Escribir(Con , Promedio, estas Reprobado)
Fin si
Fin
Algoritmo
Inicio
Entero Compra
Real Descuento, Tot_Pagar
Escribir(Ingresa el monto de la compra)
Leer (Compra)
Si (Compra > 1000) entonces
Descuento Compra * 0.2
si no
Descuento 0
Fin si
Tot_Pagar Compra Descuento
Escribir
Fin
Ejercicios propuestos
1) Escribir un algoritmo que lea dos nmeros y los escriba en forma
ascendente.
2) Hacer un algoritmo que calcule el total a pagar por la compra de camisas. Si
se compran tres camisas o ms se aplica un descuento del 10% sobre el
total de la compra y si mas de 5 camisas un descuento del 20%
3) Realizar un algoritmo que lea tres nmeros y muestre el menor de los tres.
Fin Para
Donde:
Inicializar:
Var_Control Valor_Inicial
Var_Control es una variable que lleva la cuenta de las iteraciones.
Valor_Inicial corresponde al primer valor que tomar Var_Control.
Condicin: Es una expresin lgica que compara la Var_control y el ultimo
valor permitido para continuar iterando.
Incremento/decremento: Corresponde al avance que tendr Var_Control ,
por lo regular es de uno en uno.
Ejemplo:
Calcular el promedio de un alumno que tiene 7 calificaciones en la materia de
Programacin Estructurada.
Alternativa 1 (Sin considerar iteracin)
Algoritmo
Inicio
Real Nota1, Nota2, Nota3, Nota4, Nota5, Nota6, Nota7
Real Promedio
Escribir(Ingresa las 7 calificaciones )
Leer Nota1, Nota2, Nota3, Nota4, Nota5, Nota6, Nota7
Promedio(Nota1+Nota2+Nota3+Nota4+Nota5+Nota6+Nota7)/7
Escribir (El promedio del alumno es, Promedio)
Fin
Ejemplo
Leer 10 nmeros y obtener su cuadrado y su cubo.
Algoritmo
Inicio
Entero Numero, Cuadrado, Cubo
Entero i
Para (i 1 ; i < 10 ; ii+1)
Escribir(Ingresa un numero)
Leer (Numero)
Cuadrado Numero * Numero
Cubo Cuadrado * Numero
Escribir (El cuadrado del numero es, Cuadrado,)
Escribir (El cubo del numero es, Cubo)
Fin Para
Fin
Ejercicios
1. Leer 10 nmeros e imprimir solamente los nmeros positivos
2. Leer 20 nmeros e imprimir cuantos son positivos, cuantos negativos y
cuantos neutros.
3. Calcular y escribir la tabla de multiplicar de un numero cualquiera. Escribir
el multiplicando, el multiplicador y el producto.
Accin_N
Fin Mientras
Ejemplo
Leer 10 nmeros y obtener su cuadrado y su cubo.
Algoritmo
Inicio
Entero Numero, Cuadrado, Cubo
Entero i
i 1;
Mientras (i <= 10)
Escribir(ingresa un numero)
Leer (Numero)
Cuadrado Numero * Numero
Cubo Cuadrado * Numero
Escribir (El cuadrado del numero es es, Cuadrado)
Escribir (El cubo del numero es, Cubo )
i i + 1
Fin Para
Fin
Accin_N
Mientras ( Condicin)
LENGUAJE C