17

Click here to load reader

Clase1 fundamentos

Embed Size (px)

Citation preview

Page 1: Clase1 fundamentos

Fundamentos de programación Fundamentos de programación

INGENIERÍA DE SISTEMAS

Rubén Darío Cosme Meneses

Page 2: Clase1 fundamentos

Fundamentos de programaciónFundamentos de programación

Contenido

1. Datos e información

2. Solución de problemas

3. Concepto de algoritmo

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

3.1 Análisis

3.2 Diseño

3.3 Solución en la computadora

4. Características de los algoritmos

5. Ejercicios

Page 3: Clase1 fundamentos

Los sistemas de procesamiento de la Información

Datos e información

Que diferencia encontramos entre datos e

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

Que diferencia encontramos entre datos e

información?

Page 4: Clase1 fundamentos

Los sistemas de procesamiento de la Información

Datos e información:

Representación de algún hecho, concepto o entidadreal , los cuales pueden tomar diferente forma,palabras escritas o habladas , números y dibujos;información implica datos procesados y

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

información implica datos procesados yorganizados.

Entrada= Datos Salida= InformaciónPROCESADOR

Page 5: Clase1 fundamentos

Concepto de algoritmo

Un algoritmo es un conjunto de operaciones ordenadas pararesolver un problema, los algoritmos tienen algo en comúncon las funciones matemáticas: reciben una entrada yproducen una salida, pero para que pueda ser consideradocomo algoritmo debe ser eficiente (encontrar una soluciónen el menor tiempo posible), finito (posee un númerodeterminado de pasos) y definido (se llega al mismo

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

determinado de pasos) y definido (se llega al mismoresultado si se sigue el mismo proceso más de una vez).

Resolución de un problema:

ProblemaDiseño del

algoritmo

Solución en la

computadora

Page 6: Clase1 fundamentos

Resolución de problemas

• La resolución de un problema se puede resumir en tres fases importantes:

o Análisis del problema:

– El problema debe ser definido y comprendidoclaramente.

o Diseño o desarrollo del algoritmo:

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

o Diseño o desarrollo del algoritmo:– Procedimiento paso a paso para solucionar el problema

dado

o Resolución del algoritmo en la computadora:– Por ultimo se codifica el algoritmo en un lenguaje de

programación(C/ C++, java, pascal,..)

Page 7: Clase1 fundamentos

Análisis del problema

Para poder definir con precisión el problema, es necesario

que las especificaciones de entrada y salida sean descritas

con detalle. Una buena definición del problema junto, junto

con la descripción detallada de las especificaciones de

entrada y salida, son los requisitos mas importantes para

llegar a una solución eficaz.

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

llegar a una solución eficaz.

• Que información debe proporcionar la solución del

problema?

• Que datos se necesitan para resolver el problema?

Page 8: Clase1 fundamentos

Análisis del problema

Análisis del problema

Definición del problemaEspecificación de

entradasEspecificación de salidas

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

entradas

Ejemplo : Leer el radio de un circulo y calcular e imprimir su superficie y

la longitud de la circunferencia

Análisis:Las entradas de datos en este problema son concretamente el radio del

circulo, este puede ser un valor real.

Page 9: Clase1 fundamentos

Análisis del problema

Las salidas serán dos variables: superficie y circunferencia

que también serán de tipo real.

Entradas: Radio del circulo(variable radio)

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

Salidas: Superficie del circulo(variable área)

Circunferencia del circulo(variable circunferencia)

Variables: radio, área, circunferencia(tipo real)

Page 10: Clase1 fundamentos

Diseño del algoritmo

Los pasos sucesivos que indican las instrucciones a ejecutar

por la maquina constituyen como ya conocemos el algoritmo.

La información proporcionada la algoritmo constituye su

entrada y la información producida por el algoritmo constituye

su salida.

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

su salida.

La descomposición del problema original en sub- problemas

mas simples y a continuación dividir estos subproblemas en

otros mas simples que puede ser implementados para su

solución en la computadora se denomina diseño

descendente(top-down-design)

Page 11: Clase1 fundamentos

Diseño del algoritmo

Refinamiento del algoritmo:

Superficie y longitud

circunferencia

Salida Cálculo de Cálculo de

Entrada de

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

Entrada

radio(R)

Salida

ResultadosCálculo de

longitud(C)

Cálculo de

superficie(

S)

Entrada de

datos

S=PI*R^2 Salida R Salida S Salida S

Page 12: Clase1 fundamentos

Diseño del algoritmo

Subproblema Refinamiento

Leer radio leer radio

Calcular superficie superficie= 3.14.1592*radio^2

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

Calcular circunferencia circunferencia= 2*3.141592*radio

Escribir resultado Escribir radio, circunferencia, superficie

Page 13: Clase1 fundamentos

Diseño del algoritmo

� Las ventajas mas importantes del diseño ascendente son:

� El problema se comprende mas fácilmente al dividirse en

partes mas pequeñas denominadas módulos

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

� Las modificaciones en los módulos son mas fáciles

� La comprobación del problema se puede verificar fácilmente

Page 14: Clase1 fundamentos

Resolución del problema mediante computadora

Una vez el algoritmo esta diseñado y representado

gráficamente mediante una herramienta de programación

(diagrama de flujo, pseudocódigo), se debe pasar a la fase

de resolución practica:

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

1. Codificación del algoritmo en un programa

2. Ejecución del programa

3. Comprobación del programa

Page 15: Clase1 fundamentos

Características de los algoritmos

Todo algoritmo debe cumplir con las siguientes

características:

– Un algoritmo debe ser preciso e indicar el orden de

realización de cada paso

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

– Un Algoritmo debe estar definido. Si se sigue un algoritmo

dos veces, se debe obtener el mismo resultado cada vez.

– Un algoritmo debe ser finito. Si se sigue un algoritmo, se

debe terminar en algún momento; ósea debe tener un

numero finito de pasos.

Page 16: Clase1 fundamentos

Ejercicio 1

Un cliente ejecuta un pedido a una fabrica. La fabrica examina

en su banco de datos la ficha del cliente, si el cliente es

solvente entonces la empresa acepta el pedido; en caso

contrario rechazará el pedido. Describir el algoritmo

correspondiente,

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses

Recuerde identificar entradas procesos y salida.

Page 17: Clase1 fundamentos

Preguntas

Fundamentos de Programación

INGENIERÍA DE SISTEMASRubén Darío Cosme Meneses