Вы находитесь на странице: 1из 33

INFORMATICA

I
Ing. Erick Nez Tarrillo
Correo Electrnico
c11196@utp.edu.pe
Horario
Sabado 6:30 p.m. a 8:45 p.m.

Objetivos Generales:
1. Introducir al alumno en el anlisis de
los algoritmos, as como en el diseo e
implementacin de stos con un leguaje
de programacin.
2. Desarrollar habilidades en el uso de las
tcnicas de anlisis y diseo de
algoritmos.

Temas a Tratar
1.- INTRODUCCION Y CONCEPTOS
GENERALES
2.- REPRESENTACION DE UN ALGORITMO
3.- LENGUAJE C
4.- INSTRUCCIONES BASICAS
5.- ESTRUCTURAS DE CONTROL

SECUENCIAL
SELECTIVAS
REPETITIVAS

INTRODUCCION
QUE ES UN ALGORITMO
1. Conjunto ordenado y finito de
operaciones que permite hallar la
solucin de un problema.
2. Mtodo y notacin en las distintas
formas del clculo.
Real
Academia Espaola

Muhammad Musa Al-khawarizmi

Definicin de algoritmo
Secuencia ordenada de pasos exentos de
ambigedad tal que, al llevarse a cabo con
fidelidad, dar como resultado que se realice la
tarea para la que se ha diseado en un tiempo
finito.

Un algoritmo nos permite obtener


la solucin del problema para el
que est diseado.

GENERALIDADES SOBRE LOS


ALGORITMOS
Describir los pasos para cruzar
la calle.

Describa los pasos para llevar


a una amiga a cine.

Describa los pasos para


cambiar un bombillo quemado.

Describa los pasos para


cambiar la llanta pinchada de
una bicicleta.

Propiedades de un algoritmo
Finitud
La ejecucin de un algoritmo ha de terminar
despus de un nmero finito de etapas.
Precisin
Cada etapa ha de estar especificado
rigurosamente. La ejecucin de un algoritmo
no ha de dejar espacio para la interpretacin,
la intuicin o la creatividad

Caractersticas de un algoritmo
Entradas
Un algoritmo tiene cero o ms entradas
(cantidades que se le dan inicialmente antes de que
comience su ejecucin).
Salidas
Un algoritmo tiene una o ms salidas (cantidades
que tienen una relacin especfica con las
entradas)

Definicin de Estructura de Datos.

El trmino estructura de datos se refiere a la forma en que la informacin


esta organizada dentro de un programa.

La correcta organizacin de datos


puede conducir a
algoritmos ms simples y ms
eficientes.
Estructura de datos:
Algoritmos
Estructuras
de datos
= Programas
Conjunto
de variables +
agrupadas
y organizadas
de cierta
forma para
representar un comportamiento.
El profesor Niklaus Wirth

Datos:
Segn sus caractersticas, los datos
pueden ser:

Elementos del Computador


SOFTWARE (programa)
HARDWARE
(elem.fsicos)

SOFTWARE (Conjunto de Programas)

TIPOS DE SOFTWARE:
- Sistemas operativos

Programa
1

Programa
2

Ejm. DOS, Windows, Linux,


etc.
- Aplicaciones de uso general
Ejm. Word, Excel, Power Point,
etc.
- Aplicaciones de uso especfico
Ejm. sistema de notas,
sistema de facturacin,
etc)

Programa
3

MEMORIA RAM

intmain(){
floatr,s,x;
cout<<"Ingrese2numerosenteros"<<endl;
cin>>x>>s;
r=x+s;
cout<<"Lasumaes"<<r<<endl;
return0;
}
;Lenguajeensamblador,sintaxisIntelpara
procesadoresx86
moveax,1;mueveaalregistroeaxelvalor1
xorebx,ebx;poneen0elregistroebx
int80h;llamaalainterrupcin80h(80h=128
sistemadecimal)

Traductores de
lenguaje

Si el
computador solo
entiende binario
como es que
puede ejecutar
los programas
??????
que nosotros
?
escribimos?

Computado
ra mata a
Flanders

Traductores de
lenguaje

Son los programas que


traducen a su vez los
programas fuente
escritos en lenguajes de
alto nivel a cdigo de
maquina.
Clasificacin:
Compiladores: Lenguaje
de alto nivel -->
Lenguaje de maquina.
Interprete: Un traductor
que toma un programa
fuente, lo traduce y a
continuacin lo ejecuta.

ETAPAS EN LA
RESOLUCION DE PROBLEMAS
RESOLUCION
DE UN PROBLEMA

ANALISIS DEL
PROBLEMA

DISEO DEL
ALGORITMO

RESOLUCION
DEL PROBLEMA EN
COMPUTADORA

CODIFICACION
DEL PROGRAMA
EJECUCION
DEL PROGRAMA
COMPROBACION
DEL PROGRAMA

ETAPAS EN LA
RESOLUCION DE PROBLEMAS

ANALISIS DEL PROBLEMA


Determinacin de objetivos del
programa.
Determinacin de la salida
deseada.
Determinacin de los datos de
entrada.
Determinacin de los
requerimientos de
procesamiento.

DISEO DEL ALGORITMO


Escritura inicial del algoritmo
Debern seguir una secuencia definida por pasos
hasta obtener un resultado distinto.
Podrn ejecutarse cada vez que se requiera para
distintos datos.

Verificacin Manual del Algoritmo


(Corrida en Fro)
Una vez realizadas estas dos etapas se
puede
pasar a la resolucin del problema con
la
computadora.

ETAPAS EN LA
RESOLUCION DE PROBLEMAS
CODIFICACION DEL PROBLEMA: es la
conversin del algoritmo y/o diagrama
de flujo a un lenguaje de programacin.
EJECUCION DEL PROGRAMA: permite
ver en la computadora el programa en
funcionamiento.
COMPROBACION DEL PROGRAMA:
permite verificar la correcta ejecucin
del mismo, teniendo en cuenta los
diferentes tipos de errores (lgicos y de
sintaxis). Una comprobacin sucesiva del
programa permitir localizar , verificar y
corregir los posibles errores, con lo que
se conforma la puesta a punto del
programa.

Representacin de algoritmos.

Descripcin Narrada
Pseudocdigo
Diagramas de Flujo
Diagramas N- S (Nassi-Schneiderman
o de Chapin)

Pseudocdigo
Pseudo = falso.
Es una tcnica para diseo de programas que
permite definir las estructuras de datos, las
operaciones que se aplicarn a los datos y la
lgica que tendr el programa de computadora
Ejemplosolucionar
1
para
un determinado problema
Disear un algoritmo que lea cuatro variables y calcule e imprima su
producto, suma y media aritmtica.

Inicio
Leer (a, b, c, d)
producto (a * b * c * d)
suma (a + b + c + d)
media (a + b + c + d) / 4
escribir (producto, suma, media)
Fin

Reglas para crear los


pseudocdigos:

Cada instruccin debe ir


en una lnea
Debe comenzar con la
palabra Inicio y terminar
con la palabra Fin
Utiliza los operadores
aritmticos, lgicos,
bolanos
Debe escribirse de
manera indentada
(tabulada) para apreciar
las dependencias de las
instrucciones.
Utiliza palabras
reservadas como: INICIO,
FIN, LEER, ESCRIBIR,
MIENTRAS, SI, SINO,
ENTONCES, PARA,

Ejemplo 2
Disear un algoritmo que lea dos
numeros enteros y si son diferentes
de cero calcule e imprima su
producto, en caso contrario calcule y
muestre el promedio de los dos.
Analisis
Diseo del Algoritmo

Inicio
Leer (a, b)
Si ((a<>0) y (b<>0)) entonces
producto (a * b)
Sino
media (a + b) / 2
Fin si
escribir (producto, media)
Fin

Diagramas de Flujo.
Son la representacin grfica de la
solucin algortmica de un problema.
Simbologa bsica para disear flujogramas.
Inicio/Fi
n

Salida por
impresora

Decisi
n

Proceso

Conector
pginas
diferentes

Conector misma
pgina

Entrad
a/Salid
a

Diagrama de flujos
Para su elaboracin se siguen
ciertas reglas:
Se escribe de arriba hacia abajo y de
izquierda a derecha
Siempre se usan flechas verticales u
horizontales, jams curvas
Evitar cruce de flujos
En cada paso expresar una accin concreta

Diagrama de flujos. Ejemplo


Inicio
a,b

Si

a<>0 y b<>0

No

Producto a*b

Media (a+b)/2

Producto

Media

Fin

DIAGRAMA DE FLUJO

NOMENCLATURA

Entero var1, x , y
Real a, b

Escribir
Mensaje 1

Definicin de variables

Variables
Entero var1, x, y
Real a, b

Lectura de mensajes

Transformacin de datos
Operaciones sobre los datos

a=3*x+ y
b = a / var1

V
Si a > b

Inicio

Impresin de mensajes

Leer
var1,x, y

Inicio de Algoritmo

Bifurcacin en la ejecucin de
instrucciones

Conector

Fin

Fin de algoritmo

Escribir (Mensaje 1)

Leer (var1, x, y)

a=3*x+ y
b = a / var1

Si a > b Entonces
Inicio
Instrucciones
Fin
Sino
Inicio
Instrucciones
Fin

Fin

Diagrama de Flujo y Pseudo-Cdigo

Inicio

PSEUDO-CDIGO

Ejercicio de Programacin
Realizar un Algoritmo en pseudo
cdigo y diagrama de flujo que
permita calcular el rea de un
triangulo, dada su base y su
altura

Anlisis del
problema
Objetivo del
problema:

Obtener o calcular el rea del


Datos de entrada: triangulo
Datos de salida:

Las medidas de la base y de la altura del


triangulo
EL rea del triangulo

Procesamiento:
Aplicar formula:
Multiplicar base * altura y dividirlo entre 2 o
Multiplicar base* altura * 0.5
Documentacin
B = base del triangulo
de variables:
h = altura del triangulo
A= rea del triangulo

Diagrama de
flujo

Inicio
A 0

Pseudocodigo Triangulo
Variables

Introduzca base y altura

B, h, A

Inicio

B, h

A0;

Escribir(Introduzca la base y la
altura del triangulo);

A (B*h)/2

Leer(B,h);
A (B*h)/2;

El rea es: A

Escribir (El rea del triangulo


es, A);
Fin

Fin

Un
Operador:
es un smbolo
o palabra que
significa que se
ha de realizar
cierta accin
entre uno o dos
valores que son
llamados
operandos.

Tipo

Operado
r

De
asignacin

Matemtic
os

+
*
/
^
Div
Mod

Relacionale
s

Lgicos

Significado
Asignacin
Suma
Resta
Multiplicacin
Divisin
Potencia
Divisin entera
(cociente)
Mdulo

<
>
<=
>=
=
<>

Menor que
Mayor que

Y
O
No

Y lgico
O lgico
Negacin lgica

Menor o igual que


Mayor o igual que
Igual a
Distinto a,
diferente de

Ejemplo con Operadores


Asignacin ()
sintaxis
Variable valor o expresin
Ejemplo:
X A+B
X2
X a^2 +d

Ejemplo con Operadores


Residuo (mod)
sintaxis
Variable valor

mod valor

Ejemplo:
X 15 mod 2
Esto da como resultado 1, ya que
es el residuo de la division

Divisin entera (div)


sintaxis
Variable valor

div valor

Ejemplo:
X 15 div 2
Esto da como resultado 7, ya que
es la parte entera del cociente
de la divisin

Prioridad de los Operadores


Jerarqua de Operadores
Parntesis

()

+/-

signo

Potencia

*y/

Producto y divisin

Div

Division entera

Mod

Residuo

+y-

Suma y resta

+o&

Concatenacin

>,<,>=,<=, <>,=

Relacionales

Not

Negacin

And

Or

Вам также может понравиться