concepto para programar por: carlos a rodríguez c unidad académica: ingenierías facultad:...
TRANSCRIPT
![Page 1: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/1.jpg)
CONCEPTO PARA PROGRAMAR
Por:
Carlos A Rodríguez C
Unidad académica: IngenieríasFacultad: Facultad de Ingeniería InformáticaProfesor: Carlos A. Rodriguez CE – mail: [email protected]
![Page 2: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/2.jpg)
¿QUÉ ES PROGRAMAR?
• Es la actividad mediante la cual escribimos un conjunto finito y ordenado de instrucciones que le indican a un computador, cómo lograr un resultado determinado.
• El resultado del proceso de programar es el programa.
• Un programa es escrito utilizando un lenguaje de programación.
![Page 3: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/3.jpg)
• Es un conjunto de instrucciones escritas, de manera lógica, usando un lenguaje de programación entendible por la máquina, que le indica a la computadora, cada uno de los pasos que debe seguir para obtener un resultado determinado.
¿QUÉ ES UN PROGRAMA?
![Page 4: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/4.jpg)
LENGUAJES DE PROGRAMACIÓN
Bajo Nivel Alto Nivel
Lenguaje de Máquina
Assembler EstructuradosOrientados a Objetos
Fortran Cobol Basic Pascal C JavaC++C#
¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN?
![Page 5: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/5.jpg)
• Es un conjunto de palabras.
• Signos de puntuación.
• Reglas sintácticas que indican como formar instrucciones entendibles por un computador
• Compilador
– Es el programa que se encarga de tomar el programa escrito en lenguaje de alto nivel y convertirlo a un programa equivalente en el lenguaje de máquina.
¿QUÉ ES UN LENGUAJE DE PROGRAMACIÓN?
![Page 6: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/6.jpg)
• En las variables
• ¿Qué es una variable?– Es un sitio en la memoria donde el programa
almacena los datos mientras los está procesando. El dato que almacena cambia durante la ejecución del programa.
• ¿Qué se necesita para tener una variable en un programa?– Es necesario declarar la variable.– La declaración de una variable consiste en
asignarle nombre y tipo a cada una de las variables que el programa va a utilizar.
¿DÓNDE GUARDA LOS DATOS EL PROGRAMA?
![Page 7: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/7.jpg)
<tipo> nombreVariable• Ejemplos:
real salario
entera edad
cadenanombreCiudad
caracter respuesta
La declaración de las variables en un algoritmo hace que el computador reserve el espacio en memoria para las variables.
DECLARACIÓN DE VARIABLES
•Por medio de la declaración de las variables la computadora
sabe: Cuantos byte debe ocupar la variable, y como
representar los datos
![Page 8: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/8.jpg)
• El tipo de variable le dice al computador como puede representar los datos, y de qué tamaño es el espacio en memoria que debe reservar para la variable.
• ¿Qué tipos se pueden usar?– Entero: para almacenar datos Z.– Real: para almacenar datos Re.– Cadena: para almacenar más de un carácter Ascii o
Unicode.– Carácter: para almacenar un carácter Ascii o
Unicode.
TIPO DE VARIABLE
![Page 9: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/9.jpg)
• Los programadores tiene dos maneras de hacer que los programas almacenen datos en memoria, ellos son:
– La operación de asignación
– La operación de lectura
¿CÓMO SE INGRESAN DATOS A UNA VARIABLE?
![Page 10: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/10.jpg)
• Se utiliza en los programas para ordenarle al computador que debe detener la realización del programa y esperar a que se digite el dato por el teclado.
Leer (nombreVariable)
• Ejemplo:Leer(nombreCiudad)Leer(edad)Leer(salario)
• El programador usa esta instrucción para suministrarle al programa los datos que el computador no puede calcular por sí mismo y son necesarios.
El nombre de variable es el lugar donde
se va almacenar el dato.
El nombre de variable es el lugar donde
se va almacenar el dato.
OPERACIÓN DE LECTURA
![Page 11: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/11.jpg)
• La usan los programadores, para ordenarle al computador que almacene el resultado de una evaluación de una expresión o una cte. en una variable en memoria.
• <variable> expresion
• La expresión puede ser aritmética, o una constante o variable.
¿INSTRUCCIÓN DE ASIGNACIÓN?
![Page 12: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/12.jpg)
salario 3
respuesta ‘s’‘s’
salario salario +1
nombreCiudad “Barranquilla”
s
respuesta
3
salario
4
nombreCiudad
Barranquilla
Memoria del computador
EJEMPLOS DE ASIGNACIÓN
![Page 13: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/13.jpg)
Prioridad altaPrioridad alta
Prioridad bajaPrioridad baja
OPERADORES ARITMÉTICOS
^̂ Potenciación
** Multiplicación
// División real
%% Residuo
\\ División entera
++ Suma
-- Resta
![Page 14: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/14.jpg)
• Lo utilizan los programadores cuando necesitan obtener el cociente de una división entera.
OPERADOR \
![Page 15: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/15.jpg)
Prioridad 2a
Prioridad 3a
Prioridad 4a
Prioridad altaPrioridad alta
Prioridad bajaPrioridad baja
^̂ Potenciación
** Multiplicación
// División real
%% Residuo
\\ División entera
++ Suma
-- Resta
OPERADORES ARITMÉTICOS
![Page 16: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/16.jpg)
• Las expresiones que tienen dos o más operaciones matemáticas, son evaluadas por el computador siguiendo la siguientes reglas:
– Las operaciones que están entre paréntesis se evalúan primero. Si existen diferentes paréntesis anidados (interiores unos a otros), las expresiones más internas se evalúan primero.
PRIORIDAD DE OPERADORES
![Page 17: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/17.jpg)
– Las operaciones dentro de una expresión suelen seguir el orden de prioridad mencionado en la siguiente diapositiva.
– En caso de tener varios operadores de igual prioridad en una expresión o subexpresión encerrada entre paréntesis, el orden de prioridad es de izquierda a derecha.
PRIORIDAD DE OPERADORES
![Page 18: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/18.jpg)
FUNCIONES MATEMÁTICAS
Funciones
Matemáticas
Funciones
Programas
Dominio
Seno(x) Sin(x) X Reales, en radianes
Coseno(x) Cos(x) X Reales, en radianes
x2 Sqr(x) X Reales
log(X) Log(x) X>0 Reales
X1/2 Sqrt(x) X>0 Reales
nroAleatorio 0=<rnd()<1
![Page 19: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/19.jpg)
y=x+y/2*xy=x+y/2*x
y=(x+y)/(2*x)y=(x+y)/(2*x)x
yxy
*2
ALGEBRAALGEBRA EN EL PROGRAMAEN EL PROGRAMA
PRIORIDAD DE OPERACIONES
![Page 20: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/20.jpg)
1. Escriba la expresión de asignación que usted utilizaría para poder hacer los siguientes cálculos.
a
acbbx
2
42
1
a
acbbx
2
42
2
22
4
xy
x
yx
z
EJERCICIO
![Page 21: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/21.jpg)
• La utilizan los programadores cuando quieren que el programa presente en el dispositivo de salida (pantalla) el resultado de una operación o un mensaje.
Escriba “texto”, variable
Escriba “texto”, formula
Escriba “texto”
INSTRUCCIÓN DE SALIDA
![Page 23: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/23.jpg)
PROBLEMAPROBLEMA
AnálisisProfundo del
Problema
Construcción Algoritmo
Verificación del Algoritmo
ETAPAS DE SOLUCIÓN DE UN PROBLEMA
![Page 24: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/24.jpg)
• Precisión– Los pasos del algoritmo deben ser precisados
claramente.
• Deterministico– Dado un conjunto de datos idénticos de entrada,
siempre debe arrojar los mismos resultados.
• Finitud– Debe ser de longitud finita.
CARACTERÍSTICA ALGORITMO
![Page 25: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/25.jpg)
AlgoritmoAlgoritmo
Entrada de DatosProcesamiento
de DatosProcesamiento
de DatosImpresión de Resultados
MÓDULOS DE UN ALGORITMO
Es la parte del algoritmo que solicita el ingreso de los datos, al usuario del programa.
Son las operaciones o conjunto de operaciones secuenciales, cuyo objetivo es obtener la solución.
Son las operaciones o conjunto de operaciones que permiten comunicar (presentar) los resultados a los usuarios del programa.
![Page 26: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/26.jpg)
Para indicar principio fin
Entrada de datos
Proceso u operaciones de asignación
Se utiliza para representar decisión
Salida
DIAGRAMAS DE FLUJO
Dirección de Dirección de flujoflujo
Dirección de Dirección de flujoflujo
SiNo
![Page 27: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/27.jpg)
Escribir
si no
Leer (variable)
Operación de Escritura
Para indicar una toma de decisiones
Para indicar una lectura de datos.
DIAGRAMAS ESTRUCTURADOS
![Page 28: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/28.jpg)
• Escribir un algoritmo para que una computadora pueda calcular el radio, y el área de un circulo conociendo el perímetro.
• Análisis:
– Datos de Entrada:
• Perímetro de la circunferencia
– Qué tiene que calcular la máquina?
• Radio, área
– Cómo se calculan?
*2Perimetro
radio
2*radioarea
PRIMER ALGORITMO
![Page 29: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/29.jpg)
DIAGRAMA DE FLUJO ALGORITMO
1
Inicio
Entre Perímetro
perímetro
radioperímetro/(2*3.14151617)
1
Área3.141516*radio^2
“Área=“, área
“Perímetro”, perímetro
Fin
![Page 30: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/30.jpg)
• Se utilizan para crear proposiciones lógicas.
• Una proposición lógica al evaluarla un computador da falso o verdadero.
Mayor que >
Menor que <
Mayor o igual >=
Menor o igual <=
Diferente !=
Igual que ==
OPERADORES DE RELACIÓN
2>5 es una 2>5 es una expresión lógicaexpresión lógica
2>5 es una 2>5 es una expresión lógicaexpresión lógica
![Page 31: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/31.jpg)
SIGNIFICADO CONECTOR
Y &&
O ||
No ~
CONECTORES LÓGICAS
Verdadero es 1Verdadero es 1Verdadero es 1Verdadero es 1Falso es 0Falso es 0Falso es 0Falso es 0
![Page 32: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/32.jpg)
Variablescaracter z;entera x,y;logica f;z’t’x5Y2fx>yEscriba “Es “,z==´t´,” que z almacene a t ”Escriba x,”>=“,y,”es”,f
USO DE LAS EXPRESIONES LÓGICAS
![Page 33: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/33.jpg)
• Una computadora sigue la ejecución de las instrucciones en un algoritmo en el orden que se le escriben, esto es ejecuta las instrucciones en el orden en que se escriben.
• Pero muchas de las cosas que se quieren simular en una computadora requieren que en algunos momentos, requieran que se escoja entre dos caminos a seguir dependiendo de que se cumpla o no una condición. Para esos casos se hace necesario que los programadores utilicen la instrucción Si entonces.
FLUJO DE CONTROL
![Page 34: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/34.jpg)
• La usan los programadores para ordenarle a la computadora que evalué una condición (expresión lógica) si la expresión da verdadero entonces la computadora deberá ejecutar la acción a, en otro caso deberá ejecutar la acción b.
A2
A>=2A>=2
Acción BAcción B
AA-5-5
Acción AAcción A
No Si
INSTRUCCIÓN SI /SINO
![Page 35: CONCEPTO PARA PROGRAMAR Por: Carlos A Rodríguez C Unidad académica: Ingenierías Facultad: Facultad de Ingeniería Informática Profesor: Carlos A. Rodriguez](https://reader033.vdocuments.mx/reader033/viewer/2022061303/54fba0914a7959ca428b4b01/html5/thumbnails/35.jpg)
Verdadero
• Se utiliza en un algoritmo para indicar a una computador que instrucciones se deben ejecutar de manera repetida.
• En una instrucción mientras hay:
– Expresión lógica– Instrucciones a repetir.
• Expresión lógica– Indica la condición que se
debe cumplir para que se repita la ejecución de las instrucciones.
– El ciclo termina, si la expresión lógica es falsa en algún momento.
– En las instrucciones que se repiten debe haber alguna que haga que el proceso se deje de repetir.
Mientras <expresión lógica>
Instrucción 1
Instrucción 2
Instrucción 3....
Instrucción n
Es Verdadero?Falso
ESTRUCTURA MIENTRAS