Sie sind auf Seite 1von 29

Fundamentos de Programacin

Conceptos Bsicos
Computadora Programa Lenguaje de Programacin Programacin

Conceptos Bsicos
Computadora
Una computadora es una mquina electrnica que recibe y procesa datos para convertirlos en informacin til, as mismo, podemos desarrollar mltiples actividades o tareas, de acuerdo a las posibilidades que nos brinda el hardware.

Sistema
Conjunto de elementos dinmicamente relacionados formando una actividad para alcanzar un objetivo operando sobre datos, energa y/o materia para proveer informacin

Programa
Es un conjunto de instrucciones o herramientas que luego de ser ejecutadas son capaces de desarrollar una o varias tareas en una computadora, es decir es un medio para lograr un fin.

Lenguaje de Programacin
Un lenguaje de programacin esta constituido por un conjunto de palabras adaptadas a partir de un lenguaje humano (ingls), cada una de estas palabras representan instrucciones que la maquina puede llevar acabo. Los lenguajes de programacin son esencialmente tiles para desarrollar programas que permitan mejorar los procesos o actividades dentro de una empresa, de una forma rpida y se ncilla.

Tipos de Lenguajes de Programacin


a) Lenguaje Mquina .- Escritos en lenguajes directamente inteligibles por la computadora (cadenas de 0 y 1) b) Lenguaje de Bajo Nivel (Ensamblador) formado por instrucciones conocidas como nemotcnicas. c) Lenguajes de Alto Nivel.- Diseados para que las personas escriban y entiendan los programas ms fcilmente que los lenguajes anteriores.

Profesor : Christian Montoya Caldern

Programacin
Es un proceso por el cual se escribe (en un lenguaje de programacin), se prueba, se depura y se mantiene el cdigo fuente de un programa informtico.

Programacin Orientada a Objetos


La programacin orientada a objetos o POO es un paradigma de programacin que usa objetos y sus interacciones, para disear aplicaciones y programas informticos. Est basado en varias tcnicas, incluyendo herencia, abstraccin, polimorfismo y encapsulamiento.

Caractersticas de la POO

Encapsulacin
Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstraccin

Polimorfismo
Comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo nombre.

Herencia
Las clases no estn aisladas, sino que se relacionan entre s, formando una jerarqua de clasificacin .

Profesor : Christian Montoya Caldern

Lenguajes de programacin 100% Orientado a Objetos

Conceptos fundamentales de la POO


CLASE
Son elementos con propiedades, mtodos y comportamientos definidos de un tipo de objeto en concreto, as mismo, podemos crear objetos basados en la clase creada.

OBJETO
Entidad constituida por un conjunto de propiedades o atributos (datos) y de comportamiento o funcionalidad (mtodos) los mismos que reaccionan a eventos. Se corresponde con los objetos reales del mundo que nos rodea, o a objetos internos del sistema (del programa). Todo objeto es una instancia de una clase.

PROPIEDAD
Son caractersticas que describen al objeto, tambin conocidos como atributos, estos pueden ser aplicados durante el diseo o en modo ejecucin. La sintaxis general para modificar el valor de una propiedad es:

METODO
Algoritmo asociado a un objeto (o a una clase de objetos), cuya ejecucin se desencadena tras la recepcin de un "mensaje". Desde el punto de vista del comportamiento, es lo que el objeto puede hacer. La sintaxis general para ejecutar un mtodo es:

EVENTO
Es un suceso en el sistema (tal como una interaccin del usuario con la mquina, o un mensaje enviado por un objeto).

Profesor : Christian Montoya Caldern

Fundamentos de Programacin

Fundamentos de Programacin
Dato y tipo de datos Operadores Variables Constantes

Dato y Tipos de Dato


Dato
Es una representacin simblica (numrica, alfabtica, algortmica etc.), un atributo o una caracterstica de una entidad. Los datos son hechos que describen sucesos y entidades.

Podemos clasificar los datos segn lo siguiente: NUMERICOS Slo permite establecer datos de tipo numrico, estos a la vez se clasifican en: Enteros Son todos los nmeros positivos y negativos sin precisin decimal. Ejemplo: 0, -200, 230, etc. Reales Son todos los nmeros con precisin decimal. Ejemplo: 23.56, -20.21, 18.54, etc.

TEXTO Permite establecer datos de tipo texto. - Letras de la A a la Z - Nmeros con los cuales no se efectan operaciones aritmticas - Caracteres especiales: Guiones, parntesis, etc. - Una mezcla de letras y nmeros

BOOLEANOS Slo podemos establecer dos valores: Verdade ro o Falso. Estos tipos de datos no pueden leerse slo imprimirse. Se forman a partir de los operadores relacionales y lgicos.

Profesor : Christian Montoya Caldern

Operadores
Los operadores son smbolos que permiten realizar operaciones con variables o constantes.

Operadores Aritmticos
Se utilizan para realizar operaciones aritmticas bsicas como sumar, restar, multiplicar, etc. A continuacin se presenta la lista de operadores aritmticos:
Smbolo + * / ^ MOD DIV Descripcin Suma Resta Multiplicacin Divisin real Potencia Residuo de una divisin Divisin entera

REGLAS DE PRIORIDAD Los operadores aritmticos se aplican teniendo en cuenta la precedencia de operadores. Recordemos que las expresiones se evalan, por defecto, de izquierda a derecha, cuando son del mismo tipo: Parntesis Potencia, races Multiplicacin, divisin Suma, resta DIV, MOD

Ejemplos:
a) (4 + 12) * 2 MOD 3 16 * 2 MOD 3 32 MOD 3 2 b) ((25 / 5) * 16 DIV 4 ^ 3) + 2 (5 * 16 DIV 64) + 2 (80 DIV 64) + 2 1 + 2 3

Profesor : Christian Montoya Caldern

Operadores relacionales
Se utilizan para comparar datos de tipo numrico o texto. A continuacin se presenta la lista de operadores relacionales:
Smbolo > >= < <= = <> Descripcin Mayor Mayor o igual Menor Menor o igual Igual Diferente

Es importante mencionar que toda comparacin entre datos siempre nos dar como resultado un valor lgico (Verdadero o Falso).

Operadores de Asignacin
Son operadores que permiten contraer ciertas operaciones aritmticas, se utilizan para abreviar la asignacin de una variable.
Smbolo a += b a -= b a *= b a /= b Equivalente a=a+b a=a-b a=a*b a=a/b

Ejemplo: A = 5 Se asigna el valor de 5 a la letra A A*= 3 Esta expresin es equivalente a: A = A * 3 El resultado sera: A = 5 * 3 A = 15

Operadores Lgicos
Se utilizan para establecer condiciones entre expresiones. A continuacin se mencionan la lista de operadores lgicos:
Smbolo And Or Not Descripcin Y lgico O lgico Negacin

Profesor : Christian Montoya Caldern

Tablas de Verdad
Conjuncin (And): Ser Verdadero (true) si todas las comparaciones son verdaderas, si alguna es falsa el resultado ser falso (false).
P V V F F Q V F V F Y V F F F

Disyuncin (Or): Ser Verdadero (true) si una de las dos expresiones lo es. Si ambas son falsas, el resultado es falso.
P V V F F Q V F V F O V V V F

Negacin (Not): Invierte la condicin de la expresin.


P V F ~P F V

Ejemplos:
a) NOT (4 <> 12) NOT V

F
b) (4 > 12) AND (24 < 3 ^ 4) F AND V

F
c) (4 > 3 OR 7 <> 13) AND (17 = 34 / 2) (V OR V) AND V V AND V

Profesor : Christian Montoya Caldern

Operador de Texto
El operador de texto & (ampersand) se utiliza para concatenar(unir) dos o mas textos, tambin podremos utilizar el smbolo +.

Ejemplos:
a) En este ejercicio se pide unir los datos de las variables a y b: // Definimos la variable a con el texto Visual a = Visual // Definimos la variable b con el texto Net b = Net // Unimos los datos de la variable a y b en la variable c c= a+b // El contenido de la variable c ser: Visual Net

b) Definimos la variable X con el texto Microsoft, y definimos la variable Z con el texto Office. A continuacin se pide unir el contenido de X y Z // Definimos la variable X con el texto Microsoft X = Microsoft // Definimos la variable b con el texto Office Z = Office // Unimos los datos de la variable X y Z en la variable F F= X + Z // El contenido de la variable c ser: Microsoft Office

Profesor : Christian Montoya Caldern

10

Transformacin de expresiones algebraicas a computacionales


Transformar una expresin algebraica a computacional consiste en convertir una expresin matemtica en una expresin donde un lenguaje de programacin en particular pueda interpretar.

Ejercicio
Se pide transformar la siguiente expresin algebraica a una expresin computacional:

Solucin Antes de desarrollar el ejercicio 1, recuerde lo siguiente o Los lenguajes de programacin no admiten la insercin de una raz. Para resolver este inconveniente debemos utilizar el operador potencia ^. o Para expresar una fraccin en cualquier lenguaje de programacin se debe expresar en forma literal. Siguiendo las indicaciones anteriores la expresin quedara del siguiente modo: (a^2 + b^2) ^(1/2 ) / c Lo elevamos a la 1 / 2 porque el equivalente de una raz cuadrada de un nmero X es: X^(1/2) El 2 indica que se trata de una raz cuadrada

Profesor : Christian Montoya Caldern

11

Variables
Una variable se define como un espacio de memoria referenciada por un nombre de variable, podemos almacenar datos que pueden cambiar en el transcurso del programa. Finalmente podemos concluir que una variable no es un dato, sino un espacio de memoria que contendr un dato. Para definir correctamente una variable debemos especificar lo siguiente: - El nombre de la variable - El tipo de dato; Numrico, Texto o Booleano - El valor que almacenar la variable

Restricciones para el nombre de variable


Debe empezar por una letra No debe contener espacios en blanco No debe contener caracteres especiales

Tipos de Variable
Numrico Texto Boolean

Asignar datos a una Variable


La forma de almacenar un dato a una variable es: Nombre_variable = 15 Ejemplos: curso = Fundamentos de Programacin igv = 0.18 codigo = AX022

Profesor : Christian Montoya Caldern

12

Constantes
Se llama constante a toda posicin de memoria referenciada por un nombre de constante, donde se almacena un valor fijo que no cambiar durante la ejecucin de un programa. Las constantes pueden ser: - Nmeros Enteros - Nmeros Reales - Caracteres

Restricciones para el nombre de una constante


Debe empezar por una letra No debe contener espacios en blanco No debe contener caracteres especiales

Ejemplo: Valorpi = 3.14159 Clave = Admin Fechanac = 05/11/1970

Profesor : Christian Montoya Caldern

13

1. Indicar el valor de cada una de las siguientes variables:


a) Z = (2 * 3) ^ 2 +14 b) Z = (2 + 3) DIV 4 c) Z = 4 ^ 3 + 5 * 6 + ( 15 MOD 4) d) Z = (11 * 5 MOD 3) + (22 DIV 4) e) Z = (12 MOD 11) * 5 ^ 3 +1 f) Z = (10 MOD 7 DIV 3) + 5 * 2

2. Indicar el resultado final de las expresiones, siendo a= 5 , b = 2 y c=3:


a) a + c b b) a + 8 MOD c * b c) c DIV a + 2 d) 42 MOD ( a * b * c / ( b + c))

3. Determine el resultado de cada expresin:


a) b) c) d) ((( 5 + 2) MOD 3) = 1) AND ((3 + 2 ^ 3) <> 24) (( 14 > 2) OR ((9 / 3) < 12))) AND ((16 <> 2 ^ 4) OR ( 8 <> 2 ^ 3 + 2)) NOT ((( 11 <> 2) AND (( 9 * 2) < 23)) ) OR ( NOT ( (5 *7) > ( 35)))) NOT ( (( 14 > 2) AND (9 = (36 / 4))) OR ((56 DIV 3) > 12))

4. Escriba las siguientes expresiones algebraicas en forma literal, utilice operadores aritmticos:

5. Ponga al costado de cada nombre de variable correcta un check y un aspa al costado de los nombres de variables no validas:
a) b) c) d) e) f) nombre apellido monto 1codigo cuenta_enero per,edad 2_codigo ( ( ( ( ( ( ) ) ) ) ) )

Profesor : Christian Montoya Caldern

14

Fundamentos de Programacin

Algoritmos
Qu es un algoritmo? Partes de un algoritmo Tipos de algoritmo o Diagramas de Flujo o Pseudocdigos Etapas del desarrollo de un programa

Algoritmos
Definicin
Es un conjunto de pasos, procedimientos o acciones bien definidas, ordenadas y que permiten hallar la solucin de un determinado problema. Todo algoritmo se caracteriza por ser legible, correcto, modular, eficiente, estructurado y no ambiguo.

Partes de un algoritmo
Un algoritmo se puede representar como una secuencia de pasos que se realizan despus de haber realizado un anlisis y encontrado una solucin para el problema planteado. Todo algoritmo se desarrolla teniendo presente los siguientes pasos:

Entrada
Datos

Proceso
Transformacin

Salida
Informacin

a) Entrada : Representa los datos de entrada para el algoritmo b) Proceso : Son los clculos (Transformacin de los datos) necesarios para encontrar la solucin del problema. c) Salida : Es la informacin que va a proveer un algoritmo o resultados finales del proceso de datos(informacin).

Profesor : Christian Montoya Caldern

16

Tipos de algoritmo
Las dos herramientas ms utilizadas para disear algoritmos son: diagramas de flujo y pseudocdigo.

DIAGRAMAS DE FLUJO
Los diagramas de flujo son descripciones grficas de algoritmos; usan smbolos conectados con flechas para indicar la secuencia de instrucciones y estn regidos por ISO.

Smbolos utilizados para representar diagramas de flujo:


Representacin del Smbolo Descripcin Este smbolo marca el inicio y fin de un diagrama de flujo.

Smbolo utilizado para representar la declaracin de variables.

Smbolo utilizado para definir los datos de entrada. Este smbolo representa un proceso, dentro de l se definen asignaciones y expresiones de clculo en general. Las flechas indican la direccin del flujo del diagrama.

Este smbolo nos indica que podemos evaluar una condicin, esta condicin siempre nos dar V (verdadero) o F (falso).

Se utiliza para expresar conexin dentro de una misma pagina Este smbolo nos permite mostrar la informacin resultante(el resultado final).

Profesor : Christian Montoya Caldern

17

Reglas para la construccin de diagramas de flujo


Recordemos que los diagramas de flujo ilustran grficamente los pasos o procesos a seguir para alcanzar la solucin de un problema. Los smbolos utilizados deben colocarse adecuadamente, para que mas adelante la escritura del programa en algn lenguaje de programacin no resulte engorroso o evitemos que nos genere un error. A continuacin presentamos las reglas a considerar: Todo diagrama de flujo debe tener un inicio y un fin. No se deben incluir lneas diagonales, ni lneas cruzadas. Todas las lneas conectadas deben partir de un smbolo. El diagrama de flujo debe ser construido de arriba abajo y de izquierda a derecha. La notacin utilizada en el diagrama de flujo debe ser independiente del lenguaje de programacin. Si el diagrama de flujo requiere ms de una hoja para su construccin, utilice el conector de pginas diferentes y enumere las pginas secuencialmente.

PSEUDOCODIGO
El pseudocdigo es una descripcin de alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas convenciones sintcticas propias de lenguajes de programacin, como asignaciones, ciclos y condicionales, aunque no est regido por ningn estndar. A continuacin se presenta la estructura de un pseudocdigo:

INICIO //DECLARANDO VARIABLES //LEER DATOS //PROCESO //SALIDA FIN

Profesor : Christian Montoya Caldern

18

Etapas de desarrollo de un Programa


Las etapas en la resolucin de un problema computacional en el mbito computacional se presentan a continuacin:

Anlisis del Problema

Planteamiento lgico de la solucin del problema

Diseo del algoritmo

Eleccin del lenguaje de programacin a utilizar

Desarrollo del programa

Depuracin del programa

Profesor : Christian Montoya Caldern

19

Descripcin de las etapas


1. Anlisis del problema:
En esta etapa se construye un modelo del problema extrado del mundo real especificando los elementos de entrada y salida. Para definir de forma correcta un problema es conveniente responder a las siguientes preguntas: Qu es lo que me pide que realice el problema? Qu datos se requieren ingresar? Qu datos me piden calcular?

Ejercicio:
Si me piden disear un programa que me permita ingresar el precio y la cantidad de un determinando producto, el programa debe mostrarnos el importe a pagar. Anlisis del problema: 1. Qu me pide que realice el problema? Si nos imaginamos un escenario del mundo real Cmo calculamos el total a pagar de una compra? Lo calculamos multiplicando el precio por la cantidad. 2. Qu datos necesito ingresar? Requiero ingresar (saber) el precio y la cantidad.

3. Qu me estn pidiendo hallar? Segn el problema nos piden calcular el importe a pagar

2. Planteamiento lgico de la solucin del problema:


El planteamiento lgico se basa en la idea que uno tiene para resolver el problema, basado en un modelo matemtico o secuencia de procesos.

Ejercicio:
Del problema anterior, para calcular el importe a pagar (IP) aplicamos la siguiente frmula: IP = Precio * Cantidad

Profesor : Christian Montoya Caldern

20

3. Diseo del algoritmo:


Para esta etapa elegimos la herramienta que nos permita describir paso a paso la solucin del problema. En nuestro caso utilizaremos el Diagrama de Flujo y el Pseudocdigo. Desarrollo del problema me diante Diagrama de Flujo:

Inicio

Inicio del diagrama de flujo

Declarar Variables Real: Precio, IP Entero: Cantidad Qu datos necesito para calcular el Importa a pagar?

Leer: Precio, Cantidad

IP = Precio * Cantidad

Cmo calculo el Importe a pagar? Qu muestro?

IP

Fin

Fin del diagrama de flujo

Desarrollo del problema me diante Pseudocdigo: INICIO //Declarar variables Real : Precio, IP Entero : Cantidad //Leer datos Precio, Cantidad //Proceso IP = Precio * Cantidad //Mostar IP FIN

Profesor : Christian Montoya Caldern

21

4. Eleccin del lenguaje de programacin a utilizar:


En esta etapa debemos elegir el lenguaje de programacin a utilizar, para nuestro caso utilizaremos VISUAL NET en modo consola.

5. Desarrollo del programa:


El desarrollo del programa implica la transformacin del algoritmo realizado en el lenguaje de programacin escogido, teniendo en cuenta la sintaxis y las normas que establece el lenguaje para programar.

6. Depuracin del programa:


El objetivo de este proceso es ingresar una variedad de datos, entre valores normales y valores extremos, para determinar si el programa tiene errores. La depuracin es el proceso de encontrar los errores del programa y corregirlos.

Profesor : Christian Montoya Caldern

22

Fundamentos de Programacin

Algoritmos de Estructura Secuencial


Definicin o Ejercicios de aplicacin empleando diagramas de flujo, pseudocdigo y aplicando Visual Net - Consola

Algoritmos de Estructura Secuencial

INTRODUCCION A VISUAL NET Visual Net es un lenguaje de programacin orientado a objetos desarrollado por Microsoft, nos permite desarrollar programas bajo 2 entornos: Visual y Consola. 4. Ingresar a Visual Net PRIMERA FORMA Inicio / Todos los programas / Microsoft Visual Studio 2008 SEGUNDA FORMA Inicio / Ejecutar / Devenv

Microsoft Visual Studio 2008 /

Haga clic en Proyecto

1. Asegrese que la opcin Windows este marcado, sino es as, haga clic sobre la opcin. 2. Haga clic sobre Aplicacin Consola

Profesor : Christian Montoya Caldern

24

normales y valores extremos, para determinar si el programa tiene errores. La depuracin es el proceso de encontrar los errores del programa y corregirlos.

Profesor : Christian Montoya Caldern

25

Fundamentos de Programacin

Algoritmos de Estructura Condicional


Definicin Tipos de estructura condicionales o Estructura Condicional Si o Estructura Condicional en Caso

Algoritmos de Estructura Secuencial

INTRODUCCION A VISUAL NET Visual Net es un lenguaje de programacin orientado a objetos desarrollado por Microsoft, nos permite desarrollar programas bajo 2 entornos: Visual y Consola.

normales y valores extremos, para determinar si el programa tiene errores. La depuracin es el proceso de encontrar los errores del programa y corregirlos.

Profesor : Christian Montoya Caldern

27

Fundamentos de Programacin

Algoritmos de Estructura Repetitiva


Definicin Tipos de estructura repetitivas o Estructura Repetitiva Para o Estructura Repetitiva Hacer Mientras

Algoritmos de Estructura Secuencial

INTRODUCCION A VISUAL NET Visual Net es un lenguaje de programacin orientado a objetos desarrollado por Microsoft, nos permite desarrollar programas bajo 2 entornos: Visual y Consola.

Profesor : Christian Montoya Caldern

29

Das könnte Ihnen auch gefallen