Está en la página 1de 13

UNIVERSIDAD CATOLICA DE SANTA MARIA

FACULTAD DE CIENCIAS E INGENIERAS FISICAS


Y FORMALES
PROGRAMA PROFESIONAL
INGENIERIA MECNICA, MECNICA-ELECTRCA
Y MECATRNICA
Laboratorio de Mecnica Computacional I
Tema: Algoritmos y Herramientas de
Programacin
Apellidos y Nombres:

Pgina:1/13

Jefes de Prcticas:
Ing. Juan Carlos Cuadros
Ing. Henry Zegarra Gago
Ing. Christian Collado Oporto

Cdigo:
Semestr
e:
Grupo:

4E03017

Lab. N:

02

III
FECHA:
16 al 20
MAR/2014

I. OBJETIVOS

Comprender las fases bsicas en el proceso de resolucin de problemas con computadora.

Comprender la necesidad del diseo de algoritmos en el estudio y resolucin de programas.

Identificar la forma de elaborar algoritmos y su aplicacin para la solucin de problemas determinados.

Utilizar correctamente las reglas para la construccin de identificadores.

II. MARCO TEORICO


Fases en la resolucin de problemas por computadora:
El proceso de resolucin de un problema con una computadora conduce a la escritura de un programa y a su
ejecucin en la misma. Aunque el proceso de disear programas es esencialmente creativo, podemos considerar
una serie de fases o pasos comunes, a saber:

Anlisis del problema

El problema se analiza teniendo presente las especificaciones y los requisitos dados.

Diseo del algoritmo

Analizado el problema se disea una solucin que conducir a un algoritmo que resuelva el
problema.

Codificacin (Implementacin)

La solucin se escribe en la sintaxis del lenguaje de programacin de alto nivel obtenindose el


programa.

La resolucin de un programa con una computadora se hace escribiendo un programa, que exige al menos los
siguientes pasos:
1.
2.
3.
4.

Definicin o anlisis del problema


Diseo del algoritmo
Transformacin del algoritmo en un programa
Ejecucin y validacin del programa

Algoritmo
Un algoritmo es un mtodo para resolver un problema. Describe la solucin de un problema computacional,
mediante una serie de pasos precisos, definidos y finitos.
Los pasos para la resolucin de un problema mediante un algoritmo son:
1. Diseo del algoritmo, que describe la secuencia ordenada de pasos.
2. Expresar el algoritmo como un programa.
3. Ejecucin y validacin del programa por la computadora.

UNIVERSIDAD CATOLICA DE SANTA MARIA


FACULTAD DE CIENCIAS E INGENIERAS FISICAS
Y FORMALES
PROGRAMA PROFESIONAL
INGENIERIA MECNICA, MECNICA-ELECTRCA
Y MECATRNICA
Laboratorio de Mecnica Computacional I
Tema: Algoritmos y Herramientas de
Programacin
Apellidos y Nombres:

Pgina:2/13

Jefes de Prcticas:
Ing. Juan Carlos Cuadros
Ing. Henry Zegarra Gago
Ing. Christian Collado Oporto

Cdigo:
Semestr
e:
Grupo:

4E03017

Lab. N:

02

III
FECHA:
16 al 20
MAR/2014

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Pgina: 3/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

Problema
Diseo del Algoritmo
Programa de Computadora

Sin algoritmo no puede existir un programa

Los algoritmos son independientes del lenguaje de programacin.

Los algoritmos son independientes de la computadora que los ejecuta.

Los algoritmos son ms importantes que los lenguajes de programacin o las computadoras.

La solucin de un algoritmo debe describir tres partes:


1. Entrada: datos que se necesita para poder ejecutarse.
2. Proceso: Acciones y clculos a realizar.
3. Salida: Resultado esperado.

Entrad
a

Proces
o

Salida

Caractersticas obligatorias de los Algoritmos

Preciso indicar el orden de realizacin de cada paso.

Definido si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.

Finito si se sigue un algoritmo, se debe terminar en algn momento (debe tener un nmero finito de pasos)

Caractersticas aconsejables para los Algoritmos

Validez un algoritmo es vlido si carece de errores. Un algoritmo puede resolver un problema para el que se
plante y sin embargo no ser vlido debido a que posee errores.

Eficiencia un algoritmo es eficiente si obtiene la solucin del problema en poco tiempo. No lo es si es lento
en obtener el resultado.

ptimo Un algoritmo es ptimo si es el ms eficiente posible y no contiene errores. La bsqueda de este


algoritmo es el objetivo prioritario del programador.

Fases en la creacin de algoritmos


Hay tres fases en la elaboracin de un algoritmo:

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Pgina: 4/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

1. Anlisis: En esta fase se determina cul es exactamente el problema a resolver; que datos forman la entrada
del algoritmo y cules debern obtenerse como salida.
2. Diseo: Elaboracin del algoritmo.
3. Prueba: Comprobacin del resultado. Se observa sis el algoritmo obtiene la salida esperada para todas las
entradas.
Diseo del Algoritmo
Podemos adoptar dos etapas bien definidas en el diseo de nuestro algoritmo:

Diseo descendente (top-down design): consiste en la descomposicin del problema original en subproblemas ms simples y a continuacin dividir estos sub-problemas en otros ms simples.

Refinamiento del algoritmo (stepwise refinement): Tras el diseo descendente, se ampla la descripcin
hecha en una descripcin ms detallada con pasos ms especficos.

Ejemplo: Clculo de la circunferencia y superficie de un circulo.

Ventajas del diseo descendente

El problema se comprende ms fcilmente al dividirse en partes ms simples denominadas mdulos.

Las modificaciones en los mdulos son ms fciles.

La comprobacin del problema se puede verificar fcilmente.

Diseo

Diseo
descendente

Escritura de Algoritmos

Refinamiento

Representaci
n

Diagrama de
flujo

Pseudocdigo

Diagrama N-S

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Pgina: 5/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

Algoritmo narrado: El sistema para escribir (describir) un algoritmo, consiste en realizar una descripcin paso a
paso con un lenguaje natural del citado algoritmo.
Un algoritmo es un conjunto de reglas para solucionar un problema. Estas reglas tienen las siguientes
propiedades:

Deben estar seguidas de alguna secuencia definida de pasos.

Solo puede ejecutarse una operacin a la vez. (Importante!)

Diagramas de Flujo: Es una representacin grfica que utiliza smbolos normalizados por ANSI, y expresa las
sucesivas instrucciones que se debe realizar para resolver el problema. Estas instrucciones no dependen de la
sintaxis de ningn lenguaje de programacin, sino que debe servir fcilmente para su transformacin (codificacin)
en un lenguaje de programacin.
Algunos smbolos empleados en Diagramas de Flujo.

Indica el inicio y el final de nuestro diagrama de flujo.


Indica la entrada y salida de datos.
Smbolo de proceso y nos indica la asignacin de un valor en la memoria
y/o la ejecucin de una operacin aritmtica.

Smbolo de decisin indica la realizacin de una comparacin de valores.

Conector dentro de pgina. Representa la continuidad del diagrama


dentro de la misma pgina.
Conector fuera de pgina. Representa la continuidad del diagrama en
otra pgina.

Indica la salida de informacin por impresora

Indica la salida de informacin en la pantalla o Monitor.

Smbolo de repeticin.
Lneas de flujo o direccin. Indican la Secuencia en que se realizan las
operaciones.
Algunas recomendaciones para el diseo de Diagramas de Flujo son:

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Pgina: 6/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

1. Se deben de usar solamente lneas de flujo horizontal y/o vertical.


2. Se debe evitar el cruce de lneas utilizando los conectores.
3. Se deben usar conectores solo cuando sea necesario.
4. No deben quedar lneas de flujo sin conectar.
5. Se deben trazar los smbolos de manera que se puedan leer de arriba hacia abajo y de izquierda a derecha.
6. Todo texto escrito dentro de un smbolo deber ser escrito claramente, evitando el uso de muchas palabras.
Instrucciones: Son las acciones que debe realizar un algoritmo para resolver un problema. Las instrucciones ms
comunes son las siguientes:

Instruccin de inicio/fin: representa el inicio y el fin de un algoritmo.


Diagrama de Flujo
Inicio

Fin

Pseudocdigo
Inicio

Fin

Instruccin de asignacin: representa la asignacin de un valor a una variable, se puede representar usando
una flecha o el smbolo de igualdad, que es el smbolo empleado por muchos lenguajes de programacin.
Diagrama de Flujo
N 10

N = 10

Pseudocdigo

N 10

N = 10

Instruccin de lectura: representa el ingreso de datos mediante un dispositivo de entrada, que muchas veces
es representado por un smbolo de teclado.
Diagrama de Flujo
Leer N

Pseudocdigo
Leer N

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Leer N

Pgina: 7/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

Leer N

Instruccin de escritura: representa la salida de informacin mediante un dispositivo de salida, puede ser
representado por el smbolo de entrada/salida, por el smbolo de pantalla o impresora.
Diagrama de Flujo
Escribir R

Escribir R

Escribir R

Pseudocdigo

Escribir R

Escribir R

Escribir R

Pseudocdigo: Mezcla de lenguaje de programacin y espaol que se emplea, dentro de la programacin


estructurada, para realizar el diseo de un programa. En esencia, el pseudocdigo se puede definir como un
lenguaje de especificaciones de algoritmos. Es la representacin narrativa de los pasos que debe seguir un
algoritmo para dar solucin a un problema determinado. El pseudocdigo utiliza palabras que indican el proceso a
realizar. Entonces, todo pseudocdigo debe posibilitar la descripcin de:
-

Instrucciones de entrada y salida

Instrucciones de proceso.

Sentencias de control del flujo de ejecucin.

Acciones compuestas a refinar posteriormente

Identificadores: Son los nombres que utiliza el programador para referenciar los datos y otros elementos del
programa (constantes simblicas, variables, funciones y procedimientos u otros objetos que manipulan el
algoritmo), permitiendo as su definicin en una posicin de la memoria del ordenador.
La regla para construir un identificador establece que:
-

Debe resultar significativo. Es decir, el nombre asignado debe tener relacin con la informacin que contiene,
pudindose emplear abreviaturas que sean significativas.

No podr coincidir con palabras reservadas, propias del lenguaje algortmico.

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin
-

Pgina: 8/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

La longitud no debe ser excesivamente larga. De todos modos, el nmero mximo de caracteres que se
pueden emplear dependen del compilador utilizado.

Comenzar siempre por un carcter alfabtico y los siguientes podrn ser letras, dgitos o el smbolo de
subrayado. Slo se permitirn los caracteres alfabticos correspondientes a los cdigos ASCII menores de
127.

III.

No deben contener espacios.

Segn el lenguaje de programacin podr ser utilizado indistintamente o no, en maysculas o en minsculas.

Podremos utilizar nombres completos o abreviaturas

MATERIAL Y EQUIPO
-

IV.

Una PC con SO Windows XP, Internet

PROCEDIMIENTO
1. Algoritmos narrados
1.1. Escribir un algoritmo narrado para asistir a clases a la UCSM:
1. Levantarse
2. Baarse
3. Vestirse
4. Desayunar
5. Cepillarse los dientes
6. Salir de casa
7. Tomar el autobs
8. Llegar a la universidad.
9. Buscar el aula
10. Ubicarse en un asiento
1.2. Escribir un algoritmo narrado para cambiar un vidrio roto de una ventana
1.ventana rota.
2.recoger restos.
3.limpiar partculas de vidro.
4.botar restos.
5.comprar ventana nueva.
6.comprar pegamento de ventana.
7.colocar ventana en posicin.
8.colocar pegamento en vntana.
9.limpiar empaadura de vidrio.
10.guardar dems accseorios.

2. Pseudocdigo
2.1. Elabore el pseudocdigo para calcular e imprimir el rea de un tringulo.
1. Iniciar el proceso.
2. Declarar variables: H (Altura), B (Base), A (rea).
3. Mostrar Ingresar base y altura
4. Leer B y H

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Pgina: 9/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

5. Hacer: A = (B*H)/2
6. Escribir A
7. Finalizar proceso.
2.2. Elabore el pseudocdigo para que dado el valor de venta de un producto, hallar el IGV (19%) y el precio
de venta

3. Diagramas de flujo:
3.1. Realizar el diagrama de flujo del pseudocdigo del problema 2.1

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

3.2. Realizar el diagrama de flujo del pseudocdigo del problema 2.2

Pgina: 10/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Pgina: 11/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

Pgina: 12/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

4. Pseudocdigo y diagrama de flujo


4.1. Disee un algoritmo que permita el clculo del rea de un tringulo dados sus tres lados, segn la
frmula siguiente:

A= S( SL 1 )( SL2 )( SL 3 )
donde:

S=

(L 1+ L2+L 3)
2

Escriba su algoritmo en pseudocdigo y dibuje su diagrama de flujo.

Laboratorio de Mecnica Computacional I


Tema: Algoritmos y Herramientas de Programacin

V.

Pgina: 13/13

LAB N 2

JP: Ings.
JCC-HZG -CCO

CUESTIONARIO FINAL

1. Escriba un algoritmo narrado para medir exactamente cuatro litros de agua si solo estn disponibles baldes de
cinco litros y tres litros.
2. Disear un algoritmo que lea cuatro variables y calcule e imprima su producto, suma y media aritmtica.
Escriba su algoritmo en forma de pseudocdigo y dibuje su diagrama de flujo.
VI. OBSERVACIONES Y CONCLUSIONES
Emita al menos tres conclusiones en torno al trabajo realizado
1. ________________________________________________________________________________________
________________________________________________________________________________________
________________________________________________________________________________________
2. ________________________________________________________________________________________
________________________________________________________________________________________
________________________________________________________________________________________
3. ________________________________________________________________________________________
________________________________________________________________________________________
________________________________________________________________________________________
Haga sus observaciones en torno al trabajo realizado (si es que las tuviera).

________________________________________________________________________________________

________________________________________________________________________________________

________________________________________________________________________________________

También podría gustarte