Vous êtes sur la page 1sur 55

INTRODUCCIN A LA PROGRAMACIN

Cdigo:

5188

Nombre del modulador: Ing. Armando Campble Price

Correo Electrnico: acampblep@usma.com.pa Celular: 6645-5685 (horario de 4:30 pm a 7:45 pm) Fecha de la presentacin: 31 de Enero de 2012

Objetivos del cusro


Introducin a la metodologa de la Programacin. Implicar el anlisis, diseo y desarrollo de soluciones algortmicas, independientes de un lenguaje de programacin. Desarrollar habilidades en la solucin estructurada de problemas de tipo algortmicas.

Criterio de Evaluacin

Exmenes Parciales 70%


Parciales (3) 50% Trabajos (2) 10% Exmenes Cortos (5) 10%

Exmenes Final 30%


Proyecto Final (1) 30%

Prueba Diagnstica

Contextualizacin de la Programacin Estrucutarada

Qu es un Programa.
FUNCIN PRIMORDIAL DE LAS COMPUTADORAS ES: EL PROCESAR DATOS Y CONVERTILOS EN INFORMACIN SIGNIFICATIVA

Funcionamiento de las Computadoras

DATOS

COMPUTADORA

INFORMACIN

ENTRADA

PROCESO

SALIDA

Un programa es una lista de instrucciones detallas que indica a la computadora lo que ha de hacer.

Unidades fundamentales de una Computadoras


PROCESADOR (UNIDAD CENTRAL DE PROCESO) - CPU UNIDAD ARITMETICA Y LGICA (ALU) ENTRADA SALIDA

UNIDAD DE CONTROL - CU

MEMORIA

ALMACENAMIENTO SECUNDARIO

Ejecucin de un Programa
PROGRAMA

COMPUTADORA

ENTRADA

CPU

MEMORIA PRINCIPAL

SALIDA

Relacin memoria y su direccionamiento


Conceptos Claves: Direccin y Contenido Cada celda o byte tiene asociada una nica direccin que indica su posicin relativa en memoria. Con esta se accede a la posicin para almacenar o recuperar informacin. La informacin almacenada en una posicin de memoria es su contenido. El contenido de esta direcciones o posiciones de memoria se llaman palabras. Existen palabras de 8, 16, 32, 64 bits. Si la mquina es de 32 bits, significa que en cada posicin de memoria de su computadora puede alojar 32 bits, es decir, 32 dgitos, bien ceros o unos. Como el byte es una unidad elemental de almacenamiento, se utilizan mltiplos para definir el tamao de la memoria central: Kilo-byte (KB) igual a 1,024 bytes (210) o sea 1,000.

Clasificacin de Programas 1 2 3
Nivel Alto (Alto Nivel) Nivel Bajo (Bajo Nivel)

Nivel de Mquina

Clasificacin de Programas
Programa Fuente Programa Objeto Programa Ejecutable

Pasos bsicos de programacin


Identificacin del problema Establecer las condiciones de operacin (Entradas) Operaciones que debe realizar (de datos, matemticas conversiones ) Los resultados que va entregar Descripcin funcional Reglas que debe cumplir (Semnticas) Propiedades del modelo que va soportar Conocimiento de un lenguaje de programacin Escribir programa Pruebas Compilacin

Algoritmo
Conjunto de reglas, ordenadas de forma lgica, para desarrollar un clculo o para solucionar un problema, ya sea de forma manual o utilizando una mquina. Es recomendable la utilizacin de un algoritmo como paso previo al desarrollo de un programa de computador.

Debe tratarse que cada paso descrito en el algoritmo pueda ser reflejado mediante una instruccin en un lenguaje de programacin.

Caractersticas De Un Algoritmo
Preciso: Cada paso del algoritmo se desarrolla en una secuencia estricta, ya que el cambio en el orden puede modificar los resultados. Finito:Debe tener un inicio y un final. Presentacin formal: Debe seguir un estndar conocido para que pueda ser entendido: Las presentaciones mas conocidas son:Diagrama de Flujo de Datos, Pseudocodigo, Diagramas de Nassi/Schneiderman. Correcto: Es decir las salida final sea la esperada como resultado. Eficiente: Optimizar recursos de almacenamiento y procesamiento

Diagrama de flujo de datos


Reflejan la secuencia de pasos realizados para la resolucin de un determinado problema.

Proceso

Entrada manual Documento

Decisin Pantalla Entrada/Salidas Conector Inicio Fin

Ejemplo
inicio b= base h= altura

Calcular el rea y permetro de un rectngulo

area= b*h permetro= 2*(b+h) area permetro Fin

Pseudocodigo
Un pseudocdigo o falso Lenguaje, es una serie de normas lxicas y gramaticales parecidas a la mayora de los lenguajes de programacin, pero sin llegar a la rigidez de sintaxis. Permite codificar un programa con mayor agilidad que en cualquier lenguaje de programacin, con la misma validez semntica, normalmente se utiliza en las fases de anlisis o diseo de software.

Pseudocodigo
No puede ser ejecutado o interpretado por un PC. El pseudocdigo describe un algoritmo utilizando una mezcla de frases en lenguaje comn, instrucciones de programacin y palabras clave que definen las estructuras bsicas.

El objetivo del pseudocdigo es permitir que el programador se centre en los aspectos lgicos de la solucin, evitando las reglas de sintaxis de los lenguajes de programacin.

Ejemplo
Calcular el salario neto de un trabajador: De acuerdo al nmero de horas trabajadas, precio de la hora. Al salario se le hacen descuentos por concepto de impuestos equivalentes al 20% del salario bruto Inicio leer nombre, horas, precio_hora salario_bruto = horas * precio_hora impuestos =0.20 * salario_bruto salario_neto = salario_bruto - impuestos escribir nombre,, salario_neto Fin

RECOPILACIN

Diagramas Estructurados Nassi/Schneiderman


El diagrama N-S o tambin conocido como diagrama de Chapin es una tcnica de especificacin de algoritmos que combina la descripcin textual, propia del pseudocdigo, con la representacin grfica del diagrama de flujo. Las palabras reservadas ms utilizadas son: Inicio Fin Leer Escribir Mientras Repita Hasta Para Incrementar Decrementar Hacer Funcin Entero Real Caracter Cadena Lgico Retornar

Ejemplo
Calcular porcentaje de hombres y mujeres en un grupo

Lenguajes de programacin
Programar Plantear solucin a un problema mediante un Lenguaje de Programacin. El Paradigma de Programacin condiciona la forma en que se expresa la solucin a un problema. El Lenguaje de Programacin (que se encuadra en un determinado paradigma) es la herramienta que permite expresar nuestra solucin.

Lenguajes de programacin
Los lenguajes de programacin son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java, Javascript etc..

Los lenguajes de programacin facilitan la tarea de programacin, ya que disponen de formas adecuadas que permiten ser ledas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar.

Lenguajes de programacin
Los lenguajes de " Alto Nivel" son los mas utilizados como lenguaje de programacin. En ese sentido se llama "Independientes de la maquina". Ejemplos de estos lenguajes de alto nivel son PASCAL , JAVA y FORTRAN ,COBOL C, ETC. Los "Lenguajes Ensambladores" y los "Lenguajes Maquina" son dependientes de la maquina. Cada tipo de maquina, tal como VAX de digital, tiene su propio lenguaje maquina distinto y su lenguaje ensamblador asociado.

Lenguajes de programacin
La programacin de un lenguaje de alto nivel requiere, de algn tipo de interfaz con el lenguaje maquina para que el programa pueda ejecutarse. Las interfaces mas comunes: un "compilador" y un "interprete". El compilador traduce el programa a otro equivalente en el lenguaje X de la maquina "residente" como un paso separado antes de la ejecucin. El interprete ejecuta directamente las instrucciones en un lenguaje Y de alto nivel, sin un paso de procesamiento previo.

Lenguajes de programacin
Hay lenguajes de utilizan compilador programacin que

1) Traducir el programa simblico a cdigo mquina 2) Ejecucin datos. y procesamiento de los

Otros lenguajes de programacin utilizan un programa intrprete o traductor, el cual analiza directamente la descripcin simblica del programa fuente y realiza las

Lenguajes de programacin
El intrprete en los lenguajes de programacin simula una mquina virtual, donde el lenguaje de mquina es similar al lenguaje fuente. Mquina virtual: Software que crea un entorno virtual entre la plataforma de la computadora y su sistema operativo, de tal forma que un usuario final puede ejecutar programas en una Mquina Abstracta

Lenguajes de programacin
La ventaja del proceso interprete es que no necesita de dos fases para ejecutar el programa, sin embargo su inconveniente es que la velocidad de ejecucin es ms lenta ya que debe analizar e interpretar las instrucciones contenidas en el programa fuente.

Cuerpo del programa


Conformado por una serie de preposiciones, de diferentes tipos:
Declarativas: Define las variables y elementos que participan en el programa Operacionales: Realizan operaciones con las variables Estructurales: Controlan el flujo del programa

Las Variables
Una variable se define como un identificador que se utiliza para almacenar todos los datos generados durante la ejecucin de un programa.
Claras y con referencia directa al problema. No espacios en blanco, ni smbolos extraos en ellas. Se pueden usar abreviaturas, pero solo de carcter general. No deben ser palabras reservadas del lenguaje. Su longitud debe ser de 1 a 32 Caracteres, iniciando con una letra o un subrayado. C distingue entre mayscula y minscula.

IDENTIFICADORES
Palabras Reservadas asm goto auto if break int chase long char register const return continue short default signed do sizeof double static else struct enum switch exterm typedef float union for unsigned

void volatile while

Ejemplo 1: Serie de Fibonacci


Serie de Fibonacci: es una sucesin de nmeros enteros que fue descrita por primera vez en Europa por Leonardo de Pisa, tambin conocido como Fibonacci.

Ejemplo 1: Serie de Fibonacci


Se obtiene mediante la siguiente funcin recursiva:

O sea, que se empieza con 0 y 1, y luego cada nmero es la suma de los dos anteriores.

Ejemplo 1: Serie de Fibonacci


n 0 F(n) 0

1
2 3 4

1
1 2 3

5
6 7 8 9 10 11 12

5
8 13 21 34 55 89 144

inicio

Ejemplo 1
Serie de Fibonacci
NO

Lea Numero trminos (N)

N1 = 1 T=1

Serie = T
ndice = 2 ndice >=2
SI
NO

ndice <= N-1


SI

N2 = N1

N1 = T
T = N1 + N2 Serie = Serie & T ndice = ndice +1 Serie = 1 & Serie serie FIN

Carcter Secuencia de Escape


Caracteres secuencias (cdigos) de escape Cdigo de escape '\n' '\r' '\t' '\v' '\a' '\b' '\f' '\\' '\'' '\"' '\?' '\000' '\xhh' Significado nueva linea retorno de carro tabulacin tabulacin vertical alerta (pitido sonoro) retroceso del espacio avance de pgina barra inclinada inversa comilla simple doble comilla signo de interrogacin nmero octal nmero hexadecimal Cdigo ASCII Dec. Hex. 13 10 0D 0A 13 0D 9 9 11 0B 7 07 8 08 12 0C 92 5C 39 27 34 22 63 3F Todos Todos Todos Todos

TIPOS DE DATOS LOGICO


Los tipos de datos lgicos son vedaderos (true) y falso (false) esto se observara en las Estructuras de Control (if ,while) y se utilizan los tipos de datos int interpretando todo valor distinto de 0 como verdadero y todo valor 0 como false. Expresiones logicas que se evala a 0 se considera false; una espresin lgica que se evala a 1 (o valor entero distinto de 0) se considera verdadero

Cdigo ms utilizados en formateo de salida


%d %o %x %u %c %e %f Los cdigos de formato mas utilizados y su significados El dato se convierte a entero decimal. El dato entero se convierte a octal. El dato entero se convierte a hexadecimal. El dato entero se convierte a entero sin signo. El dato se considera de tipo carcter.

El dato se considera de tipo float. Se convierte a notacin cientifica, de la forma {-}n.mmmmmE{+|-} dd.
El dato se considera de tipo float. Se convierte a notacin decimal, con parte entera y los dgitos de precisin. El dato se considera de tipo float. Se convierte segn el cdigo %e o %f dependiendo de cul sea la representacin ms corta. El datoha de ser una cadena de caracteres. El dato se considera de tipo double.

%g %s %lf

EJERCICIO CORTO # 2
Investigacin Documental. Sustente una presentacin en formato PPT de no mas de 5 Slide que contenga las Sentencias IF , IF Anidado y Switch. Incluya un ejemplo de una de las sentencias la cual le ser asignada por el profesor el da de la asignacin. Su conclusin debe incluir los errors mas frecuentes en Programacin. Debe entregar el PPT en una memoria usb con su nombre, el mismo le ser devuelto luego de evaluado. Nota: Revise con antivirus antes de entregarlo toda USB infectado tendr una penalizacin de 5 ptos.

EJERCICIO CORTO # 3
Investigacin Documental.

Sustente una presentacin en formato PPT de no mas de 5 Slide que contenga las Sentencias DO - WHILE , FOR y WHILE. Incluya un Ejemplo Sencillo en el cual aplique el mismo. Debe entregar el PPT en una memoria USB con su nombre, el mismo le ser devuelto luego de evaluado. Nota: Revise con antivirus antes de entregarlo toda USB infectado tendr una penalizacin de 5 ptos.

CASO DE ANALISIS
Para un automvil comparado en 20,000 dlares en 2005 se desea obtener una tabla con las depreciaciones acumuladas los valores reales de cada ao, durante los seis aos siguientes suponiendo un valor de recuperacin o rescate de 2,000. Realizar el anlisis del problema, conociendo la frmula de la depreciacin anual constante D para cada ao de vida til. costo valor de recuperacin D= vida til Generar una salida al anlisis del problema como se muestra Ao 1 (2006) 2 (2007) 3 (2008) 4 (2009) 5 (2010) 6 (2011) Depreciacin 3,000 3,000 3,000 3,000 3,000 3,000 Depreciacin acumulada 3,000 6,000 9,000 12,000 15,000 18,000 Valor anual 17,000 14,000 11,000 8,000 5,000 2,000 .

Lgica de Programacina

CUERPO DEL PROGRAMA


Conformado por una serie de preposiciones, de diferentes tipos:
Declarativas: Define las variables y elementos que participan en el programa Operacionales: Realizan operaciones con las variables Estructurales: Controlan el flujo del programa

LAS VARIABLES
Una variable se define como un identificador que se utiliza para almacenar todos los datos generados durante la ejecucin de un programa.
Claras y con referencia directa al problema. No espacios en blanco, ni smbolos extraos en ellas. Se pueden usar abreviaturas, pero solo de carcter general. No deben ser palabras reservadas del lenguaje.

Su longitud debe ser de 1 a 32 Caracteres, iniciando con una letra o un subrayado. C distingue entre mayscula y minscula.

IDENTIFICADORES
Palabras Reservadas asm goto auto if break int chase long char register const return continue short default signed do sizeof double static else struct enum switch exterm typedef float union for unsigned

void volatile while

Carcter Secuencia de Escape


Caracteres secuencias (cdigos) de escape Cdigo de escape '\n' '\r' '\t' '\v' '\a' '\b' '\f' '\\' '\'' '\"' '\?' '\000' '\xhh' Significado nueva linea retorno de carro tabulacin tabulacin vertical alerta (pitido sonoro) retroceso del espacio avance de pgina barra inclinada inversa comilla simple doble comilla signo de interrogacin nmero octal nmero hexadecimal Cdigo ASCII Dec. Hex. 13 10 0D 0A 13 0D 9 9 11 0B 7 07 8 08 12 0C 92 5C 39 27 34 22 63 3F Todos Todos Todos Todos

TIPOS DE DATOS LOGICO


Los tipos de datos lgicos son vedaderos (true) y falso (false) esto se observara en las Estructuras de Control (if ,while) y se utilizan los tipos de datos int interpretando todo valor distinto de 0 como verdadero y todo valor 0 como false. Expresiones logicas que se evala a 0 se considera false; una expresin lgica que se evala a 1 (o valor entero distinto de 0) se considera verdadero

Cdigo ms utilizados en formateo de salida


%d %o %x %u %c %e %f Los cdigos de formato mas utilizados y su significados El dato se convierte a entero decimal. El dato entero se convierte a octal. El dato entero se convierte a hexadecimal. El dato entero se convierte a entero sin signo. El dato se considera de tipo carcter.

El dato se considera de tipo float. Se convierte a notacin cientifica, de la forma {-}n.mmmmmE{+|-} dd.
El dato se considera de tipo float. Se convierte a notacin decimal, con parte entera y los dgitos de precisin. El dato se considera de tipo float. Se convierte segn el cdigo %e o %f dependiendo de cul sea la representacin ms corta. El datoha de ser una cadena de caracteres. El dato se considera de tipo double.

%g %s %lf

OPERADORES Y EXPRESIONES
Los programas C constan de: Datos Sentencias de programas Expresiones.

Una expresion es, normalmente una ecuacin matemtica.


Operadores de asignacin: A= B a -------------- a RECIBE EL CONTENIDO DE B

Recursos
<LUIS JOYANES AGUILAR, PROGRAMACIN EN C++ Algoritmos, estructuras de datos y objetos> <001.6424 J88 2006 e.1>

Preguntas?

Apndice

Vous aimerez peut-être aussi