fundamentosdeprogramacion 2
DESCRIPTION
programacionTRANSCRIPT
![Page 1: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/1.jpg)
![Page 2: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/2.jpg)
![Page 3: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/3.jpg)
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
EJECUTABLEALGORITMOPROGRAMA
![Page 4: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/4.jpg)
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.
![Page 5: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/5.jpg)
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
![Page 6: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/6.jpg)
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
![Page 7: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/7.jpg)
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: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/8.jpg)
Instrucciones
asignación
lectura
escritura
fin
inicio
edad 2014 – anoNac
edad 2014 – anoNac;
edad = 2014 – anoNac
Cuanto escribimos un Algoritmo o lo codificación:
• Definimos las acciones o INSTRUCCIONES que resolverán el problema, SECUENCIALMENTE.
![Page 9: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/9.jpg)
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: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/10.jpg)
Instrucciones
asignación
lectura
escritura
fin
inicio
algoritmo MiPrimerPrograma
var
entero: edad, anoNac
inicio
leer (anoNac)
edad 2014 – 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: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/11.jpg)
Instrucciones
asignación
lectura
escritura
fin
inicio
Proceso MiPrimerPrograma
edad <- 0;
Leer anoNac;
edad <- 2014 - 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: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/12.jpg)
Instrucciones
asignación
lectura
escritura
fin
inicio
Module MiPrimerPrograma
Public Sub Main()
Dim edad, anoNac As Integer
anoNac = Console.ReadLine()
edad = 2014 - 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.
![Page 13: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/13.jpg)
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 = 2014
anoNac = Console.ReadLine()
edad = 2014 - anoNac
Console.WriteLine("edad es: " & edad)
Console.ReadLine()
End Sub
End Module
ALGORITMO CODIFICADO
![Page 14: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/14.jpg)
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 = 2014
anoNac = Console.ReadLine()
edad = 2014 - anoNac
Console.WriteLine("edad es: " & edad)
Console.ReadLine()
End Sub
End Module
ALGORITMO CODIFICADO
Dim edad, anoNac, anoAct As Integer
anoNac = Console.ReadLine()
edad = 2014 - anoNac
![Page 15: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/15.jpg)
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.
![Page 16: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/16.jpg)
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 = 2014 - anoNac
Const anoAct As Integer = 2014
Const PI As Double = 3.1416
anoAct = 2015
![Page 17: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/17.jpg)
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
![Page 18: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/18.jpg)
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).
![Page 19: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/19.jpg)
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
![Page 20: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/20.jpg)
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
![Page 21: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/21.jpg)
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: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/22.jpg)
Operadores lógicosO llamados también 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: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/23.jpg)
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.
![Page 24: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/24.jpg)
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: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/25.jpg)
Escritura de Algoritmos
algoritmo MiPrimerPrograma
var
entero: edad, anoNac
inicio
leer (anoNac)
edad 2009 – anoNac
escribir (‘edad es: ’, edad)
Fin
ALGORITMO GENERICO
![Page 26: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/26.jpg)
Escritura de Algoritmos
Proceso MiPrimerPrograma
edad <- 0;
Leer anoNac;
edad <- 2009 - anoNac;
Escribir "edad es ", edad, " años";
FinProceso
ALGORITMO PSeint
![Page 27: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/27.jpg)
Escritura de AlgoritmosDIAGRAMA DEL ALGORITMO PSeint
![Page 28: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/28.jpg)
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
![Page 29: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/29.jpg)
![Page 30: Fundamentosdeprogramacion 2](https://reader033.vdocumento.com/reader033/viewer/2022060202/559c0d2b1a28ab82258b45d4/html5/thumbnails/30.jpg)
Ejercicios
Elaborar un algoritmo que permita cambiar un vidrio roto de una ventana
Elaborar un algoritmo para hacer una llamada telefónica.
Elaborar un algoritmo que guie a una persona normal a cambiar un foco.
Muestre un algoritmo que lea 2 valores a, b y los intercambie. Por ejemplo si a = 2 y b=5, el algoritmo debe hacer que a = 5 y b=2.
Muestre un algoritmo que permita hallar los n primeros números naturales
Muestre un algoritmo que calcule la suma de los cuadrados de los primeros números naturales.