introduccion a la programación parte ii

47
INTRODUCCIÓN A LA PROGRAMACIÓN

Upload: yelixa-araque-angulo

Post on 05-Aug-2015

163 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Introduccion a la programación Parte II

INTRODUCCIÓN A LA PROGRAMACIÓN

Page 2: Introduccion a la programación Parte II

Sobre este material:

Este material fue desarrollado por la estudiante Yelixa Araque del Programa Nacional de Formación de Sistemas e Informáticas de la Misión Sucre, el contenido del mismo es una introducción a la programación que oriente al estudiante en el inicio de la programación.

Atentamente,

TSU. Informática . Yelixa del C. Araque Angulo

Ingeniería de Sistemas

Page 3: Introduccion a la programación Parte II

¿Bienvenidos?

4 Parte Continuación de Programación Estructurada

Page 4: Introduccion a la programación Parte II

¿Qué es un Pseudocódigo ?

Es un lenguaje intermedio entre el lenguaje natural y el lenguaje de programación seleccionado. La notación pseudodificada surge como medio para la representación de instrucciones en una metodología estructurada y nación como un lenguaje similar al inglés, que utilizaba palabras reservadas de este idioma (start, end,stop, while, repeat,for,if, if-then, else) y que posteriormente se fue adaptando a otros lenguajes de lengua hispana.

Page 5: Introduccion a la programación Parte II

Características del Pseudocódigo

Es una forma de representación muy sencilla de aprender y utilizar.

Permite el diseño y desarrollo de algoritmos totalmente independientes del

lenguaje de programación posteriormente utilizado en la fase de traducción o

codificación.

Facilita el paso del algoritmo al correspondiente lenguaje de programación.

Permite una gran flexibilidad en el diseño del algoritmo a la hora de expresar

acciones concretas.

Facilita la realización de futuras correcciones o actualizaciones gracias a que no

es una representación rígido.

Es un método que facilita la obtención de soluciones mediante aproximaciones

sucesivas.

Page 6: Introduccion a la programación Parte II

Mar

gen

Izqu

ierd

o

Texto

PseudocódigoPseudocódigo

Debe permitirDebe permitir

Instrucciones primitivas(entrada ,

salida y asignación).

Instrucciones de proceso de

cálculo.

Instrucciones de control.

Instrucciones compuestas.

La escritura o diseño de un algoritmo mediante el uso de está herramienta exige la identación o sangría del texto en el margen izquierdo de las diferentes líneas, lo que facilita el entendimiento y comprensión del diseño realizado.

Page 7: Introduccion a la programación Parte II

Partes de un Pseudocódigo

Cabecera

Es el área o bloque informativo donde queda reflejado el nombre del algoritmo y el nombre del programa al que pertenece dicho diseño, se debe especificar primero el apartado denominado módulo y el segundo apartado denominado programa.

Cuerpo

Se denomina así el resto del diseño, el cual queda dividido en otros dos bloques denominados bloque de datos, que es el lugar donde quedan descritos todos los elementos de trabajo necesarios en la ejecución del programa, entendiendo como tal parámetros, constantes y variables de todo tipo y bloque de acciones que es la zona en la que se deben describir con la máxima claridad y detalle todas aquellas acciones que el ordenador deberá realizar durante la ejecución del programa.

Page 8: Introduccion a la programación Parte II

Cabecera

Programa: Nombre del programa

Módulo: Nombre del módulo

Cabecera

Programa: Nombre del programa

Módulo: Nombre del módulo

Cuerpo

Inicio Datos:

ParámetrosConstanteVariables

Algoritmo:

Descripción detallada de órdenes

Cuerpo

Inicio Datos:

ParámetrosConstanteVariables

Algoritmo:

Descripción detallada de órdenes

Estructura de un módulo (notación pseudocodificado)

Page 9: Introduccion a la programación Parte II

¿Qué son los comentarios ?

Son los utilizados a lo largo del diseño realizado para aclarar o facilitar su comprensión. Son reservados al propio código fuente del programa una vez traducido el algoritmo diseñado al lenguaje de programación seleccionado, donde se hacen imprescindibles para la futura comprensión del programa . Los comentarios no afectan directamente a la compilación de un programa .

Page 10: Introduccion a la programación Parte II

Comentarios Comentarios

Se usan Se usan

Aclarar el cometido de una función de una variable definida. Explicar el objetivo de una instrucción de control (alternativa o repetitiva) Aclarar zonas del programa donde se realizan cálculos y operaciones complejas. Comentar llamadas realizadas a subprogramas o funciones.

No es recomendable hacer uso indiscriminadamente de ellos para comentar puntos del programa obvios y carentes de dificultad. Existen varias notaciones para la representación de comentarios según el lenguaje de programación utilizado Para el diseño de algoritmos mediante la notación pseudocodificada, su uso se hace anteponiendo dos asteriscos al comentario propio dicho.Ejemplo: ** Línea comentario

Page 11: Introduccion a la programación Parte II

¿Qué es una instrucción ?

Una instrucción se puede considerar como un hecho o suceso de duración limitada que genera cambios previstos en la ejecución de un programa .

Definición de datos Definición de datos Primitivas Primitivas CompuestasCompuestas De controlDe control

Page 12: Introduccion a la programación Parte II

Instrucciones de definición de datos

Son aquellas instrucciones utilizadas para informar al procesador del

espacio que debe reservar en memoria con la finalidad de almacenar

un dato mediante el uso de variables simples o estructuras de datos

más complejas como, por ejemplo, tablas.

La definición consiste en indicar un nombre a través del cual se hará

referencia al dato y un tipo el cual informara al procesador de las

características y espacio que se debe reservar en memoria.

Page 13: Introduccion a la programación Parte II

Instrucciones Primitivas Instrucciones Primitivas

Instrucciones de entradaInstrucciones de entrada

Instrucciones de asignaciónInstrucciones de asignación

Instrucciones de salidaInstrucciones de salida

Page 14: Introduccion a la programación Parte II

Instrucciones de entradaInstrucciones de entrada

Leer Variable

Leer Variable

Son aquellas instrucciones encargadas de recoger el dato de un periférico o almacenarlo en memoria en una variable previamente definida, para la cual se almacenado suficiente espacio en memoria

Page 15: Introduccion a la programación Parte II

Instrucciones de asignaciónInstrucciones de asignación

Variable= expresión

Variable = expresión

Son aquellas instrucciones encargadas de almacenar un dato o valor simple obtenido como resultado al evaluar una expresión en una variable previamente definida y declarada.

Page 16: Introduccion a la programación Parte II

Instrucciones de salidaInstrucciones de salida

Escribir Expresión

Escribir Expresión

Son aquellas instrucciones encargadas de recoger los datos procedentes de variables o los resultados obtenidos de expresiones evaluadas y depositarlos en un periférico o dispositivo de salida. Por ejemplo: la pantalla, una impresora.

Page 17: Introduccion a la programación Parte II

Ejemplo 1:

Diseñar un algoritmo que permita evaluar la función y= 3x+2z+ ½ w

Algoritmo

0. Inicio

1.Leer x, z, w

2. Y = 3*x+2*z + w/2

3. Escribir (y)

4.Fin.

Page 18: Introduccion a la programación Parte II

Instrucciones Compuestas Instrucciones Compuestas

Área del triangulo

Son aquellas instrucciones que no pueden ser ejecutadas directamente por el procesador, y están constituidas por un bloque de acciones agrupadas en subrutinas, subprogramas, funciones o módulos.

Page 19: Introduccion a la programación Parte II

Instrucciones Primitivas Instrucciones Primitivas

Instrucciones de saltoInstrucciones de salto

Instrucciones alternativasInstrucciones alternativas

Instrucciones repetitivasInstrucciones repetitivas

Page 20: Introduccion a la programación Parte II

Instrucciones de saltoInstrucciones de salto

Se clasifica en:

Instrucciones de salto condicionalInstrucciones de salto condicionalInstrucciones de salto incondicionalInstrucciones de salto incondicional

Son aquellas instrucciones que alteran o rompen la secuencia normal de ejecución de un programa perdiendo toda posibilidad de retornar el control de ejecución del programa al punto de llamada. El uso de esta instrucción queda restringido en una programación estructurada.

Page 21: Introduccion a la programación Parte II

Instrucciones alternativasInstrucciones alternativas

Alternativa simpleAlternativa simpleAlternativa dobleAlternativa doble Alternativa múltipleAlternativa múltiple

Son aquellas que controlan la ejecución o la no ejecución de una o más instrucciones en función de que se cumpla o no una condición previamente establecida

Page 22: Introduccion a la programación Parte II

Alternativa simpleAlternativa simple

Condición

Bloques de instrucciones

Si NoSi condición

Instrucción 1Instrucción 2….Instrucción N

Fin si

Si condiciónInst1; Inst2;…. ; InstN

Fin si

Page 23: Introduccion a la programación Parte II

Alternativa dobleAlternativa doble

Si condiciónInstrucción 1AInstrucción 1B….Instrucción 1N

SinoInstrucción 2AInstrucción 2 B…Instrucción 2 N

Fin si

Condición

Bloques de instrucciones

1

Si No

Bloques de instrucciones

2

Page 24: Introduccion a la programación Parte II

Alternativa múltipleAlternativa múltiple

Según_valor ExpresiónValor 1:

Bloque de instrucciones 1

Valor 2:Bloque de instrucciones 2

…..Valor N:

Bloque de instrucciones NOtros:…..

FinSegún_valor

Expresión

Bloques de instrucciones

1

Bloques de instrucciones

2

Bloques de instrucciones

N

Page 25: Introduccion a la programación Parte II

Instrucciones repetitivasInstrucciones repetitivas

Estructura MientrasEstructura Mientras Estructura Repetir-MientrasEstructura Repetir-MientrasEstructura ParaEstructura Para

Son aquellas instrucciones que permiten variar o alterar la secuencia normal de ejecución de un programa haciendo posible que un grupo de acciones se ejecute más de una vez de forma consecutiva . También recibe el nombre de bucles o lazos.

Page 26: Introduccion a la programación Parte II

Estructura MientrasEstructura Mientras

La estructura Mientras permite repetir un bloque de

instrucciones de 0 – n veces, es decir:

En aquellos casos en los que la condición establecida

sea verdadera, el número de veces que se ejecutará dicho

bloque de instrucciones será una vez como mínimo y “n”

como máximo.

En aquellos casos en los que la condición establecida

sea falsa dicho bloque de instrucciones no se ejecutará

ninguna vez.

Page 27: Introduccion a la programación Parte II

Mientras condiciónInstrucción 1Instrucción 2….Instrucción N

FinMientras

Mientras CondiciónInst. 1; Inst. 2; … Inst. N

FinMientras

Condición

Bloques de instrucciones

Si

No

Page 28: Introduccion a la programación Parte II

Ejemplo 1:

Diseñar un algoritmo que permita elevar un numero m a una potencia n, m y n >= 0

y enteros.

Algoritmo

0. Inicio

1. cont= 1

2. exp= 1

3. Mientras (cont<= n)

3.1 exp = exp . M

3.2 cont = cont + 1

FinMientras

4. Escribir(exp)

5. Fin

Page 29: Introduccion a la programación Parte II

Estructura Repetir-MientrasEstructura Repetir-Mientras

La estructura Repetir-Mientras permite repetir un

bloque de instrucciones de 1–n veces, es decir:

En aquellos casos en los que la condición

establecida sea verdadera, el número de veces que se

ejecutará el bloque de instrucciones será de una vez

como mínimo .

En aquellos casos en los que la condición

establecida sea falsa el numero de veces que se

ejecutará el bloque de instrucciones será de una vez

como máximo.

Page 30: Introduccion a la programación Parte II

RepetirInstrucción 1Instrucción 2….Instrucción N

Mientras Condición

RepetirInst. 1; Inst. 2; … Inst. N

Mientras CondiciónCondición

Bloques de instrucciones

Si

No

Page 31: Introduccion a la programación Parte II

Estructura ParaEstructura Para

La estructura Para se caracteriza porque el numero de veces que se repetirá el bloque de instrucciones esta fijado de antemano.

Vcont = Vi, Vf, n

Bloques de instrucciones

Para Vcont de Vi a Vf con Inc = nInstrucción 1Instrucción 2….Instrucción N

FinPara

Para Vcont de Vi a Vf con Inc= nInst. 1; Inst. 2; … Inst. N

FinPara

Page 32: Introduccion a la programación Parte II

Donde: Vcont : Variable contador del bucle

Vi: Valor inicial que toma Vcont (valor inicial a partir del

cual comienza la ejecución del bucle ).

Vf :Valor final para Vcont (es el valor final que se toma

como referencia para la finalización del bucle).

n: Cantidad en que incrementa o decrementa (según el

valor especificado positivo o negativo) la variable Vcont al

final de cada vuelta de bucle. Por defecto el valor es

siempre 1.

Page 33: Introduccion a la programación Parte II

¿Bienvenidos?

5 Parte Contadores, Acumuladores e Interruptores

Page 34: Introduccion a la programación Parte II

¿Qué es un Contador?

Un contador es una variable destinada a contener un valor que se irá incrementado o decrementado en una cantidad fija y constante y que es almacenado en memoria principal.

Los contadores suelen utilizarse generalmente para el control de procesos repetitivos , es decir, su principal objetivo es contabilizar un conjunto de sucesos o acciones que se desean repetir en un programa mediante el uso de estructuras de control repetitivas (Mientras, Repetir- Mientras y Para)

Page 35: Introduccion a la programación Parte II

Contador Contador Todo contador debe tomar un valor inicial antes de ser utilizado

Contador= Contador - Decremento Contador= Contador + Incremento

Valor Constante

Page 36: Introduccion a la programación Parte II

Ejemplo Contador :Diseño del algoritmo de un programa que lee M números y determina cuáles son pares y positivos.

Programa: Positivo_y_ParMódulo: principal Inicio Datos: Variables

C Numérico EnteroM Numérico EnteroN Numérico EnteroR Numérico Real

AlgoritmoLeer M C = 0Repetir C= C + 1 Leer N R= N/2 Si N= Int (R)* 2

Si N>0 Escribir N, “ es positivo y par “ FinSi

FinSiMientras C<M

Fin

Page 37: Introduccion a la programación Parte II

Inicio

Leer M

C= 0

C= C+1

Leer N

R= N/2

N=int(R)*2

N >0

Escribir N es Positivo y Par

C< M

Fin

Page 38: Introduccion a la programación Parte II

¿Qué es un Acumulador?

Un acumulador o totalizador es una variable destinada a contener o almacenar cantidades variables provenientes de los resultados obtenidos en operaciones aritméticas previamente realizadas de manera sucesivas, lo que nos permitirá obtener el total acumulado de dichas cantidades.

Tienen las mismas características que los contadores, a excepción de que su objetivo no es controlar procesos repetitivos.

Page 39: Introduccion a la programación Parte II

Acumulador= Acumulador + Incremento

Acumulador= Acumulador * Incremento

Valor Variable

a) En aquellos casos en los que se pretenden obtener el total como suma de distintas cantidades, es necesario que el acumulador sea inicializado a 0.

b) En aquellos casos en los que se pretenden obtener el total como producto de distintas cantidades, es necesario que el acumulador sea inicializado a 1.

Es importante tener en cuenta las siguientes dos reglas:

Page 40: Introduccion a la programación Parte II

Ejemplo Acumulador :Algoritmo que multiplica los 20 primeros números impares y muestra el resultado en pantalla.

Programa: Producto imparMódulo: principal Inicio Datos: Variables

C Numérico EnteroAc Numérico Entero

AlgoritmoAc= 1C = -1Mientras C< 39 C= C + 2 Ac= Ac *C R= N/2FinMientrasEscribir Ac

Fin

Inicio

Ac = 1

C= -1

C = C+2

C < 39

Escribir Ac

Fin

Ac = Ac * C

Si

Si

Page 41: Introduccion a la programación Parte II

¿Qué es un Interruptor ?

Los interruptores, también denominados conmutadores o indicadores, son variables que pueden tomar dos únicos valores considerados como lógicos y opuestos entre sí a lo largo de todo el programa (0 o 1, 1 o -1), verdadero o falso , on/off.Su objetivo: Recordar en un determinado lugar del programa una ocurrencia o suceso acaecido o no con antelación. Hacer que dos acciones diferentes se ejecuten alternativamente en un proceso repetitivo.

Page 42: Introduccion a la programación Parte II

Ejemplo interruptores :Diseñar un algoritmo correspondiente a un programa que calcule la suma de los 20 pimeros números pares y el producto de los 20 primeros números impares simultáneamente. Programa: Suma_par_impar

Módulo: principal Inicio Datos: Variables

SP Numérico EnteroPI Numérico EnteroC Numérico EnteroSW Numérico Entero

AlgoritmoSP= 0PI = 1C = 0SW=0Repetir C= C + 1 Si SW = 0 PI= PI * C SW= 1 Sino SP= SP +C SW= 0FinsIMientras C<= 40Escribir SP, Pi

Fin

Page 43: Introduccion a la programación Parte II

¿Bienvenidos?

Ejercicios Resueltos:

Page 44: Introduccion a la programación Parte II

Dibujar el organigrama de una aplicación cuyo objetivo es la emisión de facturas a partir de los datos de compra introducidos por teclado y los datos de los clientes almacenados en un fichero soportado en disco. La factura se presenta en pantalla y una vez dada la conformidad se lista a de impresora.

Datos Compra

Datos Clientes

Emisión Facturas

Factura FacturaConforme

Ejercicio Nº 1

Page 45: Introduccion a la programación Parte II

Ejercicio Nº 2Escribir un programa expresando su algoritmo mediante ordinograma y pseudocódigo, que lea el valor correspondiente a una distancia en millas marinas y las escriba expresadas en metros. Sabiendo que una milla marina equivale a 1852 metros.

Programa: millas_metrosMódulo: principal Inicio Datos: Variables

Dmillas Numérico EnteroDmetros Numérico Entero

AlgoritmoEscribir “ Distancias en millas ”leer DmillasDmetros= Dmillas * 1852Escribir “ Distancia en metros: ” ,

DmetrosFin

Inicio

Escribir Distancias en millas

Leer Dmillas

Dmetros = Dmillas * 1852

Escribir Distancias en

metros Dmetros

Fin

Page 46: Introduccion a la programación Parte II

Ejercicio Nº 3Diseñar el algoritmo, pseudocódigo y ordinograma, correspondiente a un programa que escribe el porcentaje descontado en una compra, introduciendo por teclado el precio de la tarifa y el precio pagado.

Programa: DescuentosMódulo: principal Inicio Datos: Variables

Tarifa Numérico EnteroPrecio Numérico EnteroDto. Numérico EnteroPd Numérico Entero

Algoritmoleer TarifaLeer PrecioDto = Tarifa – PrecioPd = Dto * 100 / Tarifa Escribir “ Porcentajes de Descuento: ” , Pd

Fin

Inicio

Leer Precio

Dto= Tarifa - Precio

Escribir Porcentaje de

descuento : “ Pd

Fin

Leer Tarifa

Pd= Dto *100/ Tarifa

Page 47: Introduccion a la programación Parte II

Ejercicio Nº 4Algoritmo que lee dos valores numéricos “X” e “Y”. Determina si son iguales y en caso de no serlo, indica cuál de ellos es el mayor.

Programa: Condicion_anidadaMódulo: principal Inicio Datos: Variables

X Numérico EnteroY Numérico Entero

Algoritmoleer X,YSi X > YEscribir “ El mayor es: ” , XSino Si X = Y Escribir “ Son iguales ” Sino Escribir “ El mayor es: ” , Y

FinSi FinSi

Fin