Introduccionalgoritmos

Page 1

NIVELACION : LOGICA DE PROGRAMACION • • • • • • • •

Conceptos generales Clasificación del software Unidades de medida informática Etapas de desarrollo de software DFD Instrucciones secuenciales Bifurcaciones Ciclos repetitivos

Ing. Alvaro Sánchez – Ing. Galo López – Ing. Teresa Freire


Introducción 

Concepto de Informática:

Es la ciencia del tratamiento automático (por realizarse mediante máquinas - hoy en día electrónicas -) y racional (está controlado mediante ordenes que siguen el razonamiento humano) de la información. Este término apareció en Francia en 1962 uniendo las palabras 'information' y 'automatique'.



 La

informática se ocupa entre otros de los siguientes temas: › El desarrollo de nuevas máquinas

(ordenadores y periféricos) › El desarrollo de nuevos métodos de

trabajo (sistemas operativos) › El desarrollo de nuevas aplicaciones

informáticas (software o programas)


GLOSARIO DE TERMINOS PROGRAMA: conjunto de instrucciones (gráficas o textuales) que se ejecutan con el objetivo de resolver un problema ó automatizar una tarea. VARIABLE: etiqueta ó identificador que permite representar el contenido de una zona de memoria, misma que puede inicializar con datos ó no pudiendo éstos ser modificados en el transcurso del programa. CONSTANTE: etiqueta ó identificador que permite representar el contenido de una zona de memoria, misma que inicializa con datos y no pueden ser modificados en el transcurso del programa.


CLASIFICACION DEL SOFTWARE


SOFTWARE 

La parte lógica, también denominada software (soft = blando, ware=materia), se clasifica:

Software Base o de Operación

Software de Programación

Software de Aplicación


SOFTWARE BASE O DE OPERACION Constituído por los sistemas operativos que permiten el control, funcionamiento y puesta en marcha de un sistema de cómputo. Sistema Operativo es un conjunto de instrucciones que permiten la comunicación de un equipo de computo y el usuario, obteniendo la máxima explotación de sus recursos


MS DOS

UNIX

XENIX

NOVEL

LINUX

WINDOWS 95/98/2000/MILENIUM/NT/XP/VISTA


SOFTWARE DE PROGRAMACION O DESARROLLO 

Es el que permite desarrollar cualquier tipo de software utilizando los formatos y sintaxis correspondientes al lenguaje de programación elegido.

Ejs: › Cobol / Basic / Pascal / C / C++ / Java

/Bases de datos / Lenguajes Visuales…


ABCL/R ADA Agora ALGOL Alma APL AutoCode ASM B BASIC BCPL BETA C C++ CECIL CILK CLEAN CLIPPER CMS COMMON LISP COBOL COQ

CORAL CPL CPP DELPHI DYLAN EIFFEL ELLI ERLANG ESCHER EuLisp FORTH FORTRAN FOXPRO GEMA GOFER HASKELL HLL ICON JAVA JAVASCRIPT JOVIAL K

LIMBO LINDA LISP LUA M4 MAPLE MATHEMATICA MATLAB MERCURY MISA ML MODULA-2 MODULA-3 NAPIER88 OBERON OBJECTIVE C OCCAM ORCA OZ PARI PASCAL PERL

PIZZA POP PROLOG PYTHON QUEST REBOL RPL RTL SAC SATHER SCHEME SELF SIMULA SISAL S-LANG SMALLTALK SPL TACPOL TCL TURING YORICK


SOFTWARE DE APLICACIÓN Son todos los paquetes o sistemas realizados por programadores especializados, los mismos que nos ayudan en nuestras actividades o procesos diarios, debiendo aprender únicamente su correcta utilización por medio de cursos o seminarios. Podemos clasificar este software en Aplicaciones Generales y Aplicaciones Específicas.


Ejemplo de Software de aplicación general 

Procesadores de palabras: Word, Wordpad, Wordperfect

Hojas electrónicas: Excel, Lotus, Qpro

Graficadores: Corel, Autocad, Paint

Diseñadores de páginas WEB: Dreamweaver, Front page

Sistemas comerciales: Bancarios, contables(Tmax, Mónica), Inventarios


Ejemplo de Software de aplicación específica 

Sistema contable desarrollado para la empresa X

Sistema de matriculación vehicular de la provincia Y

Sistema de calificaciones estudiantiles del colegio Z


UNIDADES DE MEDIDA INFORMATICA


El ser humano, siempre ha sentido la necesidad de medir todo lo que tiene a su alcance, como por ejemplo la distancia, el tiempo, el volumen, la velocidad, entre otros. La informaci贸n, no podr铆a ser la excepci贸n, pues es necesario conocer, cuanta informaci贸n podemos almacenar en un dispositivo, o que espacio disponible poseemos para guardar un archivo.


Sistema Binario 

El sistema binario es un sistema de numeración que tiene por base el 2 Utiliza solo el "0" (cero) y "1" (uno) para representar cualquier información

Los ordenadores utilizan el sistema binario porque no conocen no pueden interpretar más que dos estados: pasa la corriente (“on” ó “1”) o no pasa la corriente (“off” ó “0”). De esta forma un ordenador sí que puede manejar y almacenar la información.


El BIT y el BYTE 

La unidad más pequeña de información representable en el ordenador se llama bit.Bit significa dígito binario y sólo puede tomar dos valores: el 0 y el 1.El conjunto de cuatro bits se denomina cuarteto.

En los ordenadores, para transmitir la información se utilizan grupos de 8,16,32,64 bits (8bits=1byte).


EL BYTE 

A cada grupo de 8 bits se le llama byte. El byte es, por tanto la agrupación más utilizada en informática, cada vez que se pulsa una tecla llega la unidad central una serie de impulsos eléctricos que equivale a una combinación de 8 bits, es decir 1 byte.

Así la letra "A" llega a la Unidad Central como la combinación de 8 bits (1000001)


1 bit = unidad mínima de información.

8 bits = 1 Byte (pude ser cualquiera de los 256 símbolos del código ASCII)

1 byte =1 letra, numero, símbolo de puntuación.

Unidades de medida de almacenamiento

1,024 bytes = 1 Kilobyte, Kbyte o KB

1,024 KB= 1 Megabyte, Mbyte o MB (1,048,576 bytes)

1,024 MB= 1 Gigabyte, Gbyte o GB (1,073,741,824 bytes)

1,024 GB= 1 Terabyte, Tbyte o TB (1,099,511,627,776 bytes)

1,024 TB= 1 Pentabyte, Pbyte o PB (1,125,899,906,842,624 bytes)


Se Unidad Abrev. habla Representa en bytes de bit bits unidad m铆nima 1 bit 1 Bytes Byte bytes conjunto de 8 bits 1 Byte 1 1024 Bytes KB kas 2 elevado a 10 kiloByte 1024 KB 1 (1.048.576 MB megas 2 elevado a 20 MegaByte bytes) 1024 MB 1 (1.073.741.824 GB gigas 2 elevado a 30 bytes) Gigabyte 1 1024 GB (un TB teras bill贸n de bytes) Terabyte


Existen varios tipos de numeración, Sistema Decimal, Sistema Binario, Sistema Octal y Sistema Hexadecimal, el más utilizado por nosotros es el sistema Decimal. SISTEMA DECIMAL: denominado así por utilizar 10 símbolos ó caracteres (0,1,2,3,4,5,6,7,8,9) SISTEMA BINARIO: Utiliza dos símbolos (0,1) SISTEMA OCTAL: Utiliza ocho símbolos (0,1,2,3,4,5,6,7) SISTEMA HEXADECIMAL: Utiliza dieciséis símbolos (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) donde A=10, B=11,… F=15 De esta manera usted podría crear un nuevo sistema de numeración de cualquier base.


Ya que un equipo de cómputo trabaja con el sistema binario entonces el octal y el hexadecimal permiten de alguna manera “comprimir la información” con la que opera. Como en el sistema decimal, el número 1000000 se podría abreviar como 103 , de igual forma el número 15(10) = 1111(2) = F(16)



DEFINIR PROBLEMA

EJECUCION

ENIMI MANT

ETAPAS DESARROLL O DE SOFTWARE DE APLICACION

DISEテ前

D

UM C O

EN

O CI A T

ENTO

N

COD

ANALISIS IFIC

ACI O

N


I ETAPA DEFINICIÓN DEL PROBLEMA En ésta debe registrarse de manera clara y precisa el enunciado del problema, evitando dobles interpretaciones. Además debe solicitar el programador toda la información que considere necesaria como fórmulas empleadas. 


Ejemplo: 

Realizar un programa que permita encontrar el área de un terreno en forma de triángulo rectángulo. Area= base*altura/2


II ETAPA • ANÁLISIS Se realiza una revisión del enunciado del problema, determinando los pasos que se ejecutan de manera manual con el objetivo de automatizarlos, analizando fórmulas, datos requeridos o de entrada y datos de salida o respuestas esperadas.


Ejemplo Primero registramos la(s) f贸rmulas: area= base*altura/2 Consideramos las variables que desconocemos su valor ubicadas a la derecha del signo = base=? altura=? Determinar las salidas esperadas (ubicadas a la izq. del signo=) area


III ETAPA • DISEÑO DE SOLUCION Podemos encontrar varias alternativas de solución por medio de un algoritmo (conjunto de pasos secuenciales a ejecutar con lógica para obtener un resultado esperado), mismo que puede ser representado de las siguientes formas: – Simbólica o gráfica con Flujogramas – Escrita por medio de lenguaje natural – Escrita por medio de Pseudocódigo


Ejemplo: inicio

base, altura

Iniciamos el programa solicitando el ingreso del valor de la base y la altura, luego calculamos el area multiplicando la base por la altura y dividiendo para dos, para finalmente visualizar la respuesta.

area=base*altura/2

area

Inicio Ingresar base y altura Calcular area=base * altura/2

fin

Visualizar area Fin


IV ETAPA • CODIFICACION Consiste en obtener un conjunto de instrucciones equivalente al algoritmo previo haciendo uso de un lenguaje de programación de alto nivel. A éste se lo conoce también como código fuente.


Inicio

# include<stdio.h>

Leer base

void main()

Leer altura

{

Calcular: area=(base*altura)/2

float base, altura, area;

Visualizar: area

scanf(“%f%f”,&base,&altura);

Fin

area=base*altura/2; printf(“%f”,area); }


V ETAPA โ ข EJECUCION Y PRUEBAS Por medio del compilador del lenguaje de alto nivel filtramos errores (sintaxis) y mejoramos la interfaz usuario-mรกquina


VI ETAPA • DOCUMENTACION Desarrollamos un manual de usuario, ayudas, requerimientos del sistema, licenciamiento, derechos de autor


VII ETAPA • MANTENIMIENTO Especialmente orientado hacia las aplicaciones que manipulan grandes volúmenes de información (bases de datos) o cuando cierto software requiere modificaciones o actualización.



SENTENCIAS SECUENCIALES/CONSECUTIVAS

Las Sentencias secuenciales o consecutivas se ejecutan una tras otra sin dificultad de saber instrucción debe ser ejecutada. Entre estas instrucciones se tiene: • Ordenes de lectura de datos por algún dispositivo (generalmente por el teclado) • Ordenes de Cálculo de fórmulas ó asignaciones de datos • Ordenes de Visualización de datos por algún dispositivo (generalmente monitor o impresora) • Indicadores de inicio y de fin del algoritmo • Llamadas a funciones y/o procedimientos


Ejemplo: Inicio / fin algoritmo Ingreso de datos por teclado

Salida de datos por pantalla Llamada a funciรณn o procedimiento

Salida de datos por impresora

Cรกlculo de datos รณ asignaciรณn de datos

Flechas de direcciรณn del flujo del programa


SENTENCIA de BIFURCACION

Con frecuencia en el desarrollo de un programa podemos aplicar una bifurcación (toma de decisión) en base a una elección del usuario ó en base a datos obtenidos de cálculos. Existe dos alternativas, VERDADERO (1) ó FALSO (0) y el símbolo que lo representa es: En el que se incluye una condición ó pregunta y si la respuesta a ésta es verdadera se continua ejecutando un bloque de instrucciones que generalmente se encuentran hacia la derecha; caso contrario si la respuesta a la condición es falsa se ejecutan un bloque de instrucciones que se encuentran por lo general a la izquierda. Una vez concluido los dos alternativas, se vuelven a unir y seguir un solo camino. Obteniéndose la siguiente gráfica:


F

condición

instrucciones

La condición permite comparar dos o más datos (variables, expresiones…) por medio de operadores de relación ó equivalencia (==, <, <=, >, >=, ! =)

V

instrucciones

Cuando se requiera aplicar más de una condicionante a la vez, éstas se combinarán por medio de operadores lógicos ( AND &&, OR ||)

F

instrucciones

A<0 && B==2

V

instrucciones


SENTENCIAS REPETITIVAS

Las Sentencias REPETITIVAS permiten que un grupo de instrucciones se repitan dependiendo de una condición. Para todo lenguaje de programación existen tres herramientas o sentencias repetitivas, conocidas con nombres comunes en español, inglés ó sinónimos de éstos. En todo caso la forma en que trabaja cada herramienta repetitivas es semejante, depende del lenguaje. Las sentencias son: . For / para…/ también llamado contador automático . While / mientras . Do While / haga… mientras / Repeat Until Se las utiliza cuando el programador necesita GENERAR SERIES, VALIDAR INFORMACION DE ENTRADA y REPETIR PROGRAMAS COMPLETOS.


FOR

Var=VI,VF,I

INSTRUCCION

La Sentencia for es la herramienta más utilizada por su facilidad, ya que en una sola línea se registra 3 instrucciónes.

1.Se indica en que valor empieza una variable 2.Se registra el valor final de la variable 3.Este último valor indica el valor del incremento ó de decremento de la variable.


Ejemplo: Si necesitamos generar y visualizar la siguiente serie: 1,2,3,4,5 Vemos que es una serie que empieza en 1, llega hasta 5 y su incremento o diferencia entre números es 1 Por lo tanto el programa quedará de la siguiente manera:

INICIO

X=1,5,1

X

FIN

La variable X “automáticamente” tomara los valores indicados( de 1 a 5 con incremento de 1) y lo repetitivo es presentar en pantalla el contenido de X que estará cambiando en cada vuelta.


Do While

Var=Valor Inic

Instrucciones

Incremento o Decremento de var

Valor final

V

F La herramienta do while como su nombre lo indica, permite repetir una o varias instrucciones mientras una condici贸n sea verdadera (condici贸n) Una de las caracter铆sticas es que se realiza al menos una vez el conjunto de instrucciones


INICIO

Ejemplo: Si necesitamos generar y visualizar la siguiente serie: 1,2,3,4,5 Ahora tiene alternativa generarla cualquiera de herramientas anteriores.

X=1

X la de con las

Con la Herramienta do while quedarĂĄ:

X=X+1

X<=5

V

F FIN

La variable X inicia con el valor de 1,visualiza el valor actual de X y lo incrementa mas 1 mientras X<=5 (valor final). De ĂŠsta manera se visualizarĂĄ todos los valores desde 1 hasta 5.


Var=Valor Inic

While Valor final F

V Instrucciones

Incremento o Decremento de var

While permite repetir un grupo de instrucciones siempre y cuando el resultado de una condicionante sea verdadera (valor final) El valor inicial de la variable se la registra previo a la condici贸n y al ciclo. Se observa que el incremento o decremento forma parte del ciclo repetitivo. Cuando la variable llegue al valor final, sigue la ruta del FALSO


Ejemplo: Si necesitamos generar y visualizar la siguiente serie: 1,2,3,4,5 Observe que con la herramienta while solo cambia de ubicación cada símbolo con respecto a la solución presentada con la herramienta do while.

INICIO X=1

X<=5 F

V X X=X+1

FIN

La variable X inicia con el valor de 1,visualiza el valor actual de X y lo incrementa mas 1 mientras X<=5 (valor final). De ésta manera se visualizará todos los valores desde 1 hasta 5.


ASIGNACION DE TAREA EN EL LABORATORIO • Realice un programa que permita visualizar 3 veces el texto “BIENVENIDOS” • Realice un programa que permita visualizar la serie 5,9,13,17,21,25 • Realice un programa que permita visualizar la siguiente tabla de multiplicar: 1x5=5 2x5=10 …… 12x5=60 • Programa que visualice la tabla de multiplicar de un número cualquiera ingresado por teclado.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.