Download - CURSO DE PROGRAMACION BASICA - Cap 2
ProgramaConjunto de instrucciones que producirán la ejecución de una determinada tarea.
• Ordenes dadas a la máquina.
• Vb, java, c, entre otros.
COMPILADOR
0101011
0111000
1010100
1010011
EJECUTABLE
ALGORITMOPROGRAMA
Fases:El proceso ÓPTIMO para elaborar PROGRAMAS informáticos:
D
O
C
U
M
E
N
T
A
C
I
Ó
N
M
A
N
T
E
N
I
M
I
E
N
T
O
Definición y Análisis del problema
Diseño del Algoritmo.
Codificación del Programa.
Depuración y Verificación.
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 = 2009
anoNacim = 2001
cedula = 1102655103
Resultados:
Nombre ← “Carlos”
edad <- anoActual - anoNacim;
Leer anoNacim;
Escribir "Carlos tu edad es ", edad, " años";
Leer Lógica Escribir
Instrucciones
Cuanto escribimos un Algoritmo o lo codificación:
• Definimos las acciones o INSTRUCCIONES que resolverán el problema, SECUENCIALMENTE.
asignación
lectura
escritura
fin
inicio algoritmo MiPrimerPrograma
var
entero: edad, anoNac
inicio
…..
finProceso CalcularEdad
edad<-0;
…..
FinProcesoModule SumarDosNumeros
Public Sub Main()
Dim edad As Integer
.....
End Sub
End Module
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.
Instrucciones
asignación
lectura
escritura
fin
inicio
edad 2009 – anoNac
edad 2009 – anoNac;
edad = 2009 – anoNac
Cuanto escribimos un Algoritmo o lo codificación:
• Definimos las acciones o INSTRUCCIONES que resolverán el problema, SECUENCIALMENTE.
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.
Instrucciones
asignación
lectura
escritura
fin
inicio
algoritmo MiPrimerPrograma
var
entero: edad, anoNac
inicio
leer (anoNac)
edad 2009 – 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.
Instrucciones
asignación
lectura
escritura
fin
inicio
Proceso MiPrimerPrograma
edad <- 0;
Leer anoNac;
edad <- 2009 - 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.
Instrucciones
asignación
lectura
escritura
fin
inicio
Module MiPrimerPrograma
Public Sub Main()
Dim edad, anoNac As Integer
anoNac = Console.ReadLine()
edad = 2009 - anoNac
Console.WriteLine("edad es: " & edad)
Console.ReadLine()
End Sub
End Module
ALGORITMO CODIFICADO
Cuanto escribimos un Algoritmo o lo codificación:
• Definimos las acciones o INSTRUCCIONES que resolverán el problema, SECUENCIALMENTE.
Elementos de un programaCada instrución puede estar compuesta por los siguienteselementos:
Module MiPrimerPrograma
Public Sub Main()
Dim edad, anoNac, anoAct As Integer
Const anoAct as Integer = 2009
anoNac = Console.ReadLine()
edad = 2009 - anoNac
Console.WriteLine("edad es: " & edad)
Console.ReadLine()
End Sub
End Module
ALGORITMO CODIFICADO
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 = 2009
anoNac = Console.ReadLine()
edad = 2009 - anoNac
Console.WriteLine("edad es: " & edad)
Console.ReadLine()
End Sub
End Module
ALGORITMO CODIFICADO
Dim edad, anoNac, anoAct As Integer
anoNac = Console.ReadLine()
edad = 2009 - anoNac
Tipos de datos
Los tipos de datos generales son:
• Numéricos (enteros, decimales), caracteres y lógicos.
Tipo de Visual Basic Intervalo de valores
Boolean True o False
Char (carácter individual) 0 a 65535 (sin signo)
Decimal
Double (punto flotante de precisión
doble)
4,94065645841246544E-324
-1,79769313486231570E+308
Integer-2.147.483.648 a 2.147.483.647 (con
signo)
Long (entero largo)
String (longitud variable)0 a 2.000 millones de caracteres
Unicode aprox.
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 Integer
anoNac = Console.ReadLine()
edad = 2009 - anoNac
Const anoAct As Integer = 2009
Const PI As Double = 3.1416
anoAct = 2010
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
OperadoresEjemplos:
Dim intNum1 As Integer = 5
Dim intNum2 As Integer = 8
Dim Respsta As Integer = 0
Respsta = intNum1 & intNum2
Console.WriteLine("Respsta = " & Respsta)' The preceding statement sets Respsta to 58.
Respsta = intNum1 + intNum2
Console.WriteLine("Respsta = " & Respsta)' The preceding statement sets Respsta to 13.
Dim z As Double
z = 23 ^ 3
Console.WriteLine("z = " & z)' The preceding statement sets z to 12167 (the cube of 23).
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 6
40 16
36
04
Expresiones
Son 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=10
A+B mod C5+25 mod 10
5+5
10
10 mod 2 0
6 mod 8 0
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
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‟
Otras funciones internas
Operador DecripciónTipo 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.
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++.
Escritura de Algoritmos
algoritmo MiPrimerPrograma
var
entero: edad, anoNac
inicio
leer (anoNac)
edad 2009 – anoNac
escribir (‘edad es: ’, edad)
Fin
ALGORITMO GENERICO
Escritura de Algoritmos
Proceso MiPrimerPrograma
edad <- 0;
Leer anoNac;
edad <- 2009 - anoNac;
Escribir "edad es ", edad, " años";
FinProceso
ALGORITMO PSeint
Escritura de AlgoritmosDIAGRAMA DEL ALGORITMO PSeint
Codificación de Algoritmos
Module MiPrimerPrograma
Public Sub Main()
Dim edad, anoNac, anoAct As Integer
anoAct = 2009
anoNac = Console.ReadLine()
edad = 2009 - anoNac
Console.WriteLine("edad es: " & edad)
Console.ReadLine()
End Sub
End Module
ALGORITMO CODIFICADO
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).
MATRICULATE AL CURSO