conceptos basicos

37
UN RECORRIDO POR LOS CONCEPTOS BÁSICOS FUNDAMENTOS DE PROGRAMACIÓN SCD-1011 INSTITUTO TECNOLÓGICO IZTAPALA INGENIERÍA EN SISTEMAS COMPUTACIONALES

Upload: luna-galvan

Post on 10-Jul-2015

298 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Conceptos basicos

UN RECORRIDO POR LOS CONCEPTOS BÁSICOS

FUNDAMENTOS DE PROGRAMACIÓN

SCD-1011

INSTITUTO TECNOLÓGICO IZTAPALA

INGENIERÍA EN SISTEMAS COMPUTACIONALES

Page 2: Conceptos basicos

Definición

Es el conjunto de recursos humanos y materiales a través de los cuales se recolectan, almacenan, recuperan, procesan y comunican datos e información con el objet ivo de lograr una gestión eficiente de las operaciones de una organización.

INGENIERIA EN SISTEMAS COMPUTACIONALES

Page 3: Conceptos basicos

ELEMENTOS DEL COMPUTADOR

+

HARDWARE (elem.físicos)

SOFTWARE (programa)

Page 4: Conceptos basicos

HARDWARE (COMPONENTES FÍSICOS)

Unidades PeriféricasDe Entrada

Ejem.TecladoMouseEscaner, etc

UnidadesPeriféricasDe Salida

Ejm.ImpresoraMonitor,Parlantes, etc.

Unidades deAlmacenamiento.

Ejem. Disquete,Discos compactos,Discos duros, etc.

Unidad deControl

UnidadAritméticaY Lógica

Memoria PrincipalRAM y ROM

UNIDAD CENTRAL DE PROCESO

Page 5: Conceptos basicos

SOFTWARE Conjunto de Programas y procedimientos necesarios para hacer posible la realización de una tarea especifica, en contraposición de los componentes físicos de un sistema de computo.

Page 6: Conceptos basicos

GENERALIDADES

DATOEs la representación simbólica de un hecho, atributo o característica de

una entidad.Ejm: nota de un alumno, nombre de un docente, color de un carro, etc.

INFORMACIONEs un dato útil.Ejm. El promedio final de un alumno para un curso, número de

aprobados en un examen, nombre de los primeros alumnos de cada especialidad por cada ciclo.

La información se obtiene mediante el procesamiento de los datos

Page 7: Conceptos basicos

Procesador

Entrada Salida

Algoritmo

DATOS

INFORMACION

Es realizado por el procesador el cual ejecuta un conjunto de pasos previamente definidos (algoritmo) El procesamiento de datos puede ser:

Manual Mecanizada (uso de calculadora, sumadora, etc) Automatizado (uso del computador)

PROCESAMIENTO DE DATOS

Operaciones que transforman datos en información

Page 8: Conceptos basicos

PROCESAMIENTO DE DATOS AUTOMATIZADO

Entrada

DATOS

Salida

INFORMACION

Programa

Algoritmo

Procesador

Page 9: Conceptos basicos

DISEÑO DE ALGORITMOS

Page 10: Conceptos basicos

ALGORITMO Secuencia ordenada de pasos o acciones o

instrucciones que se debe ejecutar para realizar una tarea o para resolver un problema.

Es expresado en lenguaje natural utilizando herramientas estandarizadas.

Características de un algoritmo Preciso: El algoritmo debe indicar el orden en que se

debe realizar cada paso. Finito: El algoritmo tiene un número finito de pasos

y debe terminar en algún momento. Bien definido: Si el algoritmo se prueba dos veces

con los mismos datos de entrada, se debe obtener el mismo resultado.

Page 11: Conceptos basicos

FASES PARA LA CONSTRUCCION DE UN PROGRAMA

SOLUCION DEL PROBLEMA

SOLUCION DEL PROBLEMA

IMPLEMENTACIONEN LA

COMPUTADORA

IMPLEMENTACIONEN LA

COMPUTADORA

Datos

Algoritmo Programa

(Software)

Análisis del problema

Diseño del algoritmo

Verificación del algoritmoError de

lógicaOK

Codificación del algoritmo (programa)

Ejecución del programa

Verificación del programa

Programa

Error

sintaxis

OK

Algoritmo

Page 12: Conceptos basicos

PROGRAMAEs el algoritmo escrito en un lenguaje de programación para ser ejecutado por el computador.

Tipos de lenguajes de Programación: Lenguaje de alto nivel: lenguaje similar al lenguaje natural. Son fáciles de escribir. Es el mas usado por los programadores.

Ejm. C++, Pascal, Basic, Prolog, Java, etc

Lenguaje de bajo nivel: lenguaje mnemotécnico.Ejm. ADD M, N, P

Lenguaje de máquina: lenguaje binario (0 y 1) entendible directamente por el computador.

Ejm. 0110 1001 1010 1011

Page 13: Conceptos basicos

PARADIGMAS DE PROGRAMACIÓNRepresenta un enfoque particular o filosofía para la construcción del software.

Page 14: Conceptos basicos

HERRAMIENTAS DE PROGRAMACIÓN

Page 15: Conceptos basicos

COMPILADORES E INTERPRETES

Definiciones básicas

Intérprete: Ejecuta una a una las instrucciones de un programa de alto nivel. La entrada es un archivo en un lenguaje de alto nivel, la diferencia con un compilador es que la salida es una ejecución.

– Ej:Basic, LISP, PROLOG son interpretados

– Ventaja: fácil depuración

– Desventaja:lentitud y consumo de recursos (pues el intérprete ocupa tiempo y memoria)

Page 16: Conceptos basicos

COMPILADORES E INTERPRETES

Compilador: Proceso de traducción en dos fases (Análisis y Síntesis) que convierte un programa fuente escrito en un lenguaje de alto nivel, a un programa objeto en código de máquina, listo por tanto para su ejecución en el computador.

Traductor: desde un punto de vista general, es un proceso que convierte un programa escrito o texto en un lenguaje fuente a un texto o programa escrito en un lenguaje destino. Incluyen tanto a los compiladores como a los intérpretes.

Page 17: Conceptos basicos

TRADUCTORES DE LENGUAJE

Programas que traducen programas fuente a lenguaje de máquina.

Tipos de Traductores: Compiladores e Intérpretes

Ejecución de la Instrucción

Programa Fuente

Compilador ProgramaObjeto

Programa Fuente Intérprete

Ejecución del Programa

Instrucción en leng.máq.

instrucción

Page 18: Conceptos basicos

Programa que permite crear y modificar archivos digitales compuestos únicamente por texto sin formato, conocidos comúnmente como archivos de texto o texto plano. El programa lee el archivo e interpreta los BYTES leídos según el código de caracteres que usa el editor. Hoy en día es comúnmente de 7- ó 8-bits en ASCII o UTF-8, rara vez EBCDIC.

Por ejemplo, un editor ASCII de 8 bits que lee el número binario 0110 0001 (decimal 97 ó hexadecimal 61) en el archivo lo representará en la pantalla por la figura a, que el usuario reconoce como la letra "a" y ofrecerá al usuario las funciones necesarias para cambiar el número binario en el archivo.

EDITOR DE TEXTO

Page 19: Conceptos basicos

Los editores de texto son incluidos en el sistema operativo o en algún paquete de software instalado y se usan cuando se deben crear o modificar archivos de texto como archivos de configuración, scripts o el código fuente de algún programa.

El archivo creado por un editor de texto incluye por convención en DOS y Microsoft Windows la extensión .txt, aunque pueda ser cambiada a cualquier otra con posterioridad. Tanto Unix como Linux dan al usuario total libertad en la denominación de sus archivos.

EDITOR DE TEXTO

Page 20: Conceptos basicos

D A T O S

Page 21: Conceptos basicos

Los datos son representaciones simbólicas no significativas, que a través del procesamiento y la interpretación se convertirán en información, es en esto donde radica su importancia.

Dentro de un programa o algoritmo, los datos siempre tienen las siguientes propiedades.

Page 22: Conceptos basicos

TIPO DE DATO: Es un dominio nominado de datos que permite el almacenamiento de una determinada naturaleza de dato, atendiendo un grado de exactitud específico, causando un consumo determinado de almacenamiento.

DOMINIO: Es el conjunto de valores válidos para un dato.

OPCIONALIDAD: Es la necesidad que se tiene de que un dato tenga valor.

VALOR: Es la expresión almacenada como dato en un momento determinado.

Page 23: Conceptos basicos

Tipos de Datos (reconocidos por el computador):

DATOS

BASICOS COMPUESTOS

Numéricos Caracter Lógico Estático Dinámico

Page 24: Conceptos basicos

DATOS SIMPLES O DATOS BASICOS

DATOS NUMERICOSSon todos aquellos valores con los cuales se pueden

realizar cálculos aritméticos . Estos pueden ser:Enteros y Reales

El rango y precisión de los datos numéricos depende del lenguaje de programación que se utilice.

DATOS TIPO CARÁCTER ó TIPO CADENAValores compuestos por conjunto de caracteres que el computador reconoce. Estos valores tienen longitud variable.Se encuentran normalizados bajo el código ASCII o EBCDICSe tienen:

Caracteres alfabéticos: A - Z ; a - zCaracteres numéricos: 0 - 9Caracteres especiales: *, / , +, >, <, =, etc.

Page 25: Conceptos basicos

DATOS TIPO LOGICO ó BOLEANOValores binarios compuestos por el conjunto de 0, 1; tienen su origen en el algebra de Boole.

Permite manejar pares de valores mutuamente excluyentes, como:

FALSO, VERDADERO; SI, NO; ABIERTO, CERRADO.

DATOS NULOS

Es la ausencia de valor. Indica que el valor se desconoce; cualquier operación realizada con valores nulos genera valores nulos, dado que es imposible determinar el resultado final.

DATOS BLOB

Son valores compuestos por la representación binaria (digital) de grandes cantidades de información; tal como imágenes, sonidos, etc. BLOB →→ objetos binarios largos; por sus siglas en ingles: Binary Large Object

Page 26: Conceptos basicos

DATOS COMPUESTOS ESTATICO

Expresiones = Valor de un dato.

Cualquier dato u operación que resulte en un dato es una expresión.

Si su representación es literal (se escribe directamente) es una expresión absoluta.

Si es necesario resolver un valor a partir de otros, es una expresión compuesta.

-Arreglos -Registros -Archivos

DINAMICO

Variable: Es la referencia lógica nominada a la posición física de memoria RAM en donde se almacena una expresión. Reciben este nombre dado que el valor puede cambiar durante el transcurso de la ejecución del programa.

Listas -Arboles -Grafos

Page 27: Conceptos basicos

OPERACIONES CON LOS DATOS

OPERACIONES INTERVIENEN OPERADORES RESULTADO

ARITMETICAS DatosNuméricos

Aritméticos

+, - , *, /, resto, entero

DatoNumérico

DE COMPARACION

Datos del mismo tipo

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

DatoLógico

LOGICAS Datoslógicos

LógicosNo, Si, Verdadero,

Falso Y, O

Datológico

Page 28: Conceptos basicos

EXPRESIÓN DE LOS DATOS

Un dato puede venir expresado como: constantes, variables, expresiones, funciones, etc.

CONSTANTEEs un dato (de cualquier tipo) cuyo valor no cambia durante la ejecución del algoritmo o programa.

Tipos de constantes: Literal: es un valor expresado en forma explícita. Ejm. 3.1416

Simbólica: viene expresado bajo un nombre que guarda su valor

Ejm. Pi (Previamente se debe definir que Pi = 3.1416)

Page 29: Conceptos basicos

VARIABLE

Es un objeto (porción de memoria) que almacena un dato

Para definir una variable es necesario:

- Darle un Nombre

- Indicar el tipo de dato que va almacenar

OJO: El valor de una variable puede cambiar

durante la ejecución del algoritmo.

Tipos de variables:

Entero: Ejm. nota, edad, examen,

Real: Ejm. promedio, sueldo, talla

Carácter: Ejm. sección, sexo,

Lógica: Ejm. Fin, encontrado, vale

Page 30: Conceptos basicos

Operador de asignación Se utiliza para almacenar un dato en una

variable, perdiéndose cualquier otro valor previamente almacenado en ella.

Se representa con el símbolo Ejem.

Nota 12.3 Nota Nota +2

Page 31: Conceptos basicos

EXPRESIONESEs una combinación de operandos y operadoresTipos: Expresiones aritméticas

Operando: constantes, variables y expres. numér.Operadores: aritméticosResultado: numéricoEjm. (EP + 2*EF + PP)/4

Expresiones lógicasOperando: constantes, variables y expres. lógicasOperadores: lógicos y relacionalesResultado: lógicoEjm. (PP>6.1 y PF>6.1)

Page 32: Conceptos basicos

FUNCIONESSon programas predefinidas que:- Tienen un nombre con el cual se les invoca y- Aceptan datos y devuelven un resultado.

Generalmente los lenguajes de programación poseen funciones matemáticas, de cadenas y otros.Ejm. En C++Abs(X): devuelve el valor absoluto del número entero XSqrt(X): devuelve la raiz cuadrada del número X (X>=0)

Identificadores Son los nombres que se le dan a las constantes simbólicas,

variables, funciones y otros. Constan de una cadena de caracteres que debe empezar con

una letra. Deben ser significativos sugiriendo lo que representa.

Page 33: Conceptos basicos

ACUMULADOR Es una variable cuyo valor aumenta o disminuye en una

cantidad variable cada vez que se produce un determinado suceso o acción.

Debe ser inicializado

Ejm. Se desea acumular las notas de prácticas de un alumno

Sum 0 (el valor de sum es 0)

sum sum + 13 (el valor de sum es 13)

sum sum + 10 (el valor de sum es 23)

CONTADOR Es un acumulador cuyo valor aumenta o disminuye en una

cantidad constante cada vez que se produce un determinado suceso o acción.

Se usa para contar sucesos. Ejm. Contar número de aprobados

VARIABLES IMPORTANTES

Page 34: Conceptos basicos

INSTRUCCIONES

Son las acciones que van a ser ejecutadas por el computador para resolver el problema.

TIPOS : Instrucciones de Inicio/Fin :

Indica el Inicio y el Fin del algoritmo

Instrucciones de lectura:

Solicita al usuario el ingreso de datos desde un dispositivo de entrada por ejemplo el teclado.

Instrucciones de escritura:

Muestra los resultados a través de un dispositivo de salida por ejemplo la pantalla, impresora, etc.

Page 35: Conceptos basicos

Instrucciones de asignación:

Almacena un valor en una variable, perdiéndose cualquier otro valor almacenado en ella.

Instrucciones selectivas:

Permiten ejecutar unas u otras tareas de acuerdo al resultado de una expresión condicional

Instrucciones repetitivas:

Permiten la repetición de un grupo de instrucciones, generando un bucle (lazo o loop).

Page 36: Conceptos basicos

EJEMPLO DE ALGORITMO

Se cuenta con las notas del EP, EF y PP de un alumno.

Se sabe que el promedio final (PF) se calcula con la fórmula:

PF=(EP+ PP+2EF)/4

Si el alumno cumple con la siguiente condición: PP>6.1 y

PF> 6.1 tiene opción a rendir un examen sustitutorio (ES)

Escriba un algoritmo reciba las notas del alumno y luego muestre un mensaje indicando si el alumno puede rendir o no puede rendir el ES.

En el caso que ya no pueda rendir el ES, debe mostrar

también el PF

Page 37: Conceptos basicos

Análisis

Datos de entrada: EP, EF, PP

Salida: mensaje y PF (si no puede rendir ES)

Algoritmo

Inicio del algoritmo

Ingresar las notas del alumno: EP, EF y PP

Calcular PF con la siguiente fórmula:

PF = (EP + 2EF + PP)/4

Si cumple la condición PP> 6.1 y PF>6.1entonces mostrar

el mensaje “Puede rendir el ES”

Si no cumple la condición entonces mostrar el mensaje “No

puede rendir ES” y mostrar PF

Fin del algoritmo.