Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes...

29
CAPITULO #2: “FUNDAMENTOS DE PROGRAMACIÓN”

Transcript of Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes...

Page 1: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

CAPITULO #2:“FUNDAMENTOS DE PROGRAMACIÓN”

Page 2: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Review Capitulo Nro. 1: “Resolución de Problemas con

Computador”

Fases en el proceso de programación:• Análisis, Diseño, Codificación,

Compilación y ejecución, Verificación y depuración, Documentación.

Herramientas de programación:• ALGORITMOS.• DIAGRAMAS DE FLUJO.• LENGUAJE DE PROGRAMACIÓN• IDE

Page 3: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

ProgramaConjunto de instrucciones que producirán la ejecución de una determinada tarea.• Ordenes dadas a la máquina.

“Traducción de un Algoritmo a un Lenguaje de Programación”

• Vb, java, c, entre otros.

COMPILADOR

0101011011100010101001010011

EJECUTABLE

ALGORITMOPROGRAMA

Page 4: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Fases:El proceso ÓPTIMO para elaborar PROGRAMAS informáticos:

D

O

C

U

M

E

N

T

A

C

I

Ó

N

MANTENIMIENTO

Definición y Análisis del problema

Diseño del Algoritmo.

Codificación del Programa.

Depuración y Verificación.

Page 5: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Partes de un programaEntrada, Salida, y Algoritmo de Resolución = técnicas para para obtener las salidas a partir de las entradas.

EntradaPROGRAMA (Algoritmo de Resolución)

Salida

Datos:Nombre ← “Carlos”anoActual = 2011anoNacim = 2001cedula = 1102655103

Resultados:Nombre ← “Carlos”edad = “8 años”

edad <- anoActual - anoNacim; Leer anoNacim;

Escribir "Carlos tu edad es ", edad, " años";

Leer Lógica Escribir

Page 6: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

InstruccionesCuanto escribimos un Algoritmo o lo codifica:• Definimos las acciones o INSTRUCCIONES que

resolverán el problema, SECUENCIALMENTE.

asignación

lectura

escritura

fin

inicio algoritmo MiPrimerPrograma var entero: edad, anoNac inicio …..fin

Proceso CalcularEdad edad<-0; …..FinProceso

Module SumarDosNumeros Public Sub Main() Dim edad As Integer ..... End SubEnd Module

Page 7: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Instrucciones

asignación

lectura

escritura

fin

inicio

leer (anoNac)Leer anoNac;

anoNac = Console.ReadLine()

Cuanto escribimos un Algoritmo o lo codificación:• Definimos las acciones o INSTRUCCIONES que resolverán

el problema, SECUENCIALMENTE.

Page 8: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Instrucciones

asignación

lectura

escritura

fin

inicio

edad 2011 – anoNac

edad 2011 – anoNac;

edad = 2011 – anoNac

Cuanto escribimos un Algoritmo o lo codificación:• Definimos las acciones o INSTRUCCIONES que resolverán

el problema, SECUENCIALMENTE.

Page 9: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Instrucciones

asignación

lectura

escritura

fin

inicio

escribir (‘edad es: ’, edad)

Console.WriteLine(“edad es: " & respuesta)

Escribir "edad es ", edad, " años";

Cuanto escribimos un Algoritmo o lo codificación:• Definimos las acciones o INSTRUCCIONES que resolverán

el problema, SECUENCIALMENTE.

Page 10: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Instrucciones

asignación

lectura

escritura

fin

inicio

algoritmo MiPrimerPrograma var entero: edad, anoNac inicio leer (anoNac) edad 2011 – anoNac escribir (‘edad es: ’, edad)Fin

ALGORITMO GENERICO

Cuanto escribimos un Algoritmo o lo codificación:• Definimos las acciones o INSTRUCCIONES que resolverán

el problema, SECUENCIALMENTE.

Page 11: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Instrucciones

asignación

lectura

escritura

fin

inicio

Proceso MiPrimerPrograma edad <- 0; Leer anoNac; edad <- 2011 - anoNac; Escribir "edad es ", edad, " años";FinProceso

ALGORITMO PSeint

Cuanto escribimos un Algoritmo o lo codificación:• Definimos las acciones o INSTRUCCIONES que resolverán

el problema, SECUENCIALMENTE.

Page 12: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Instrucciones

asignación

lectura

escritura

fin

inicio

Module MiPrimerPrograma Public Sub Main() Dim edad, anoNac As Integer anoNac = Console.ReadLine() edad = 2011 - anoNac Console.WriteLine("edad es: " & edad) Console.ReadLine() End SubEnd Module

ALGORITMO CODIFICADO

Cuanto escribimos un Algoritmo o lo codificación:• Definimos las acciones o INSTRUCCIONES que resolverán

el problema, SECUENCIALMENTE.

Page 13: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Elementos de un programaCada instrución puede estar compuesta por los siguientes elementos:

Module MiPrimerPrograma Public Sub Main() Dim edad, anoNac, anoAct As Integer Const anoAct as Integer = 2011 anoNac = Console.ReadLine() edad = 2011 - anoNac Console.WriteLine("edad es: " & edad) Console.ReadLine() End SubEnd Module

ALGORITMO CODIFICADOPalabras reservadas

Identificadores o variables

Caracteres especiales

Constantes

Expresiones

Page 14: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

DatosSin datos un programa no funcionaria correctamente• Los programas manipulan los datos de forma diferente según el

tipo de dato del que se trate.

Module MiPrimerPrograma Public Sub Main() Dim edad, anoNac, anoAct As Integer anoAct = 2011 anoNac = Console.ReadLine() edad = 2011 - anoNac Console.WriteLine("edad es: " & edad) Console.ReadLine() End SubEnd Module

ALGORITMO CODIFICADO

Dim edad, anoNac, anoAct As Integer

anoNac = Console.ReadLine()edad = 2011 - anoNac

Page 16: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Variables y constantesVariable:• Objeto de dato con un nombre, un tipo y un valor asociado que puede

modificarse libremente durante la ejecución de un programa.

Constate:• Objeto de dato con un nombre, un tipo y un valor asociado que no

puede modificarse una vez definido.

Dim edad, anoNac, anoAct As IntegeranoNac = Console.ReadLine()

edad = 2011 - anoNac

Const anoAct As Integer = 2011Const PI As Double = 3.1416

anoAct = 2011

Page 17: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

OperadoresEs un símbolo formado por uno o más caracteres que permite realizar una determinada operación entre uno o más datos y producen un resultados.

Operador Significado Tipos de Operador Tipo de Resultado

^ Exponeciación Entero o real Entero o real

* Multiplicación Entero o real Entero o real

/ División Real Real

div, \ División Entera Entero Entero

mod Módulo(resto) Entero Entero

+ Suma Entero o real Entero o real

- Resta Entero o real Entero o real

+, -, & Concatenación de cadenas

cadenas cadenas

Priodidad

Page 18: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

OperadoresEjemplos:

Dim intNum1 As Integer = 5Dim intNum2 As Integer = 8Dim Respsta As Integer = 0Respsta = intNum1 & intNum2Console.WriteLine("Respsta = " & Respsta)' The preceding statement sets Respsta to 58.

Respsta = intNum1 + intNum2Console.WriteLine("Respsta = " & Respsta)' The preceding statement sets Respsta to 13.

Dim z As Doublez = 23 ^ 3Console.WriteLine("z = " & z)' The preceding statement sets z to 12167 (the cube of 23).

Page 19: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

OperadoresEjemplos:

Dim x As Integer = 100

Dim y As Integer = 6

Dim z As Integer

z = x Mod y' The preceding statement sets z to 4.

Dim k As Integer

k = 100 \ 6' The preceding statement sets k to 16.

100 640 163604

cociente

resto

Page 20: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

ExpresionesSon combinación de:• constantes, varíales, símbolos > <, símbolos de operación

+ - / *, paréntesis y nombres de funciones cos, tan, mod.

Expresión Resultado Expresión Resultado

10.5/3.0 3.5 -4*7+2^3/4-5-4*7+8/4-5-28+8/4-5-28+2-5-26 -5-31

-31

10 div 3 3

18 div 2 9

10 mod 3 1 Siendo A=5 B=25 C=10A+B mod C5+25 mod 105+5

10

10 mod 2 0

6 mod 8 0

Page 21: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Operadores de relaciónPermiten comparar datos de tipo numérico o caracter. Expresan CONDICIONES en los Algoritmos.

Operador Condición que prueba Ejemplos

= (Igualdad) ¿Es igual el valor de la primera expresión que el de la segunda?

23 = 23 ' True 23 = 12 ' False

<> (Desigualdad) ¿Es distinto el valor de la primera expresión del valor de la segunda?

23 <> 33 ' True 23 <> 23 ' False

< (Menor que) ¿Es el valor de la primera expresión menor que el valor de la segunda?

23 < 33 ' True 23 < 12 ' False

> (Mayor que) ¿Es el valor de la primera expresión mayor que el valor de la segunda?

23 > 23 ' False 23 > 12 ' True

<= (Menor o igual que) ¿Es el valor de la primera expresión menor o igual que el valor de la segunda?

23 <= 33 ' True 23 <= 23 ' True 23 <= 12 ' False

>= (Mayor o igual que) ¿Es el valor de la primera expresión mayor o igual que el valor de la segunda?

23 >= 33 ' False 23 >= 12 ' True

Page 22: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Operadores lógicosO llamados tambien Booleanos básicos: not, and or.• En las expresiones lógicas se pueden mezclar operadores de Relacion y

Logicos

Operador Lógico Expresión Lógica Significado

no (not) no p (not p) Negación de p

y (and) p y q (p and q) Conjunción de p y q

o (or) p o q (p or q) Disyunción de p o q

Expresion Resultado

(10 > 5) y (5 < 10) Es verdadero

(5 > 10) o (‘A’ < ‘B’) Es verdadera, ya que ‘A’ es menor que ‘B’

Page 23: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Otras funciones internas

Operador Decripción Tipo de argumeto X

abs(x) Valor Adsoluto de X Entero o real

arctan(x) Arco tangente de X Entero o real

cos(x) Coseno de X Entero o real

exp(x) Exponencial de X Entero o real

cuadrado(x)sqr(x)

Cudrado de X Entero o real

Cuando se nacesita mas que un operador aritmético lógico básico.

Page 24: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Escritura de Algoritmos

PSeint:• Intérprete de

pseudocódigo.• Incluye

funcionalidades: ayuda integrada, generación de diagramas de flujo o exportación a código C++.

Page 25: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Escritura de Algoritmos

algoritmo MiPrimerPrograma var entero: edad, anoNac inicio leer (anoNac) edad 2011 – anoNac escribir (‘edad es: ’, edad)Fin

ALGORITMO GENERICO

Page 26: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Escritura de Algoritmos

Proceso MiPrimerPrograma edad <- 0; Leer anoNac; edad <- 2011 - anoNac; Escribir "edad es ", edad, " años";FinProceso

ALGORITMO PSeint

Page 27: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Escritura de AlgoritmosDIAGRAMA DEL ALGORITMO PSeint

Page 28: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Codificación de Algoritmos

Module MiPrimerPrograma Public Sub Main() Dim edad, anoNac, anoAct As Integer anoAct = 2011 anoNac = Console.ReadLine() edad = 2011 - anoNac Console.WriteLine("edad es: " & edad) Console.ReadLine() End SubEnd Module

ALGORITMO CODIFICADO

Page 29: Programa Conjunto de instrucciones que producirán la ejecución de una determinada tarea. Ordenes dadas a la máquina. Vb, java, c, entre otros. COMPILADOR.

Referencias:Bibliográficas LUÍS, JOYANES AGUILAR. (2003): “Fundamentos de

Programación, Algoritmos, Estructuras de Datos y Objetos.” Mc-Graw Hill. Madrid. Páginas 83 y siguientes.

Direcciones electrónicas Documento [apuntes-fundamentos-programacion-cuatro.pdf]:

http://www.monografias.com/trabajos-pdf/apuntes-fundamentos-programacion-cuatro/apuntes-fundamentos-programacion-cuatro.pdf

Otros medios Microsoft Corporation (2008): Microsoft Document Explore

Version 8.0.50727.42, actualizado 06 de diciembre de 2007 (citado 25 de Marzo del 2009). Disponible a través de: MSDN Library para Visual Studio 2005 (US).