Anda di halaman 1dari 45

Área de Construcción

Ingeniería en Geomensura
INACAP Sede Maipú

Fundamentos de
Programación en Topografía

Agosto de 2018
Conceptos Básicos
• Programar
Es un proceso para convertir especificaciones
generales de un sistema en instrucciones
utilizables por un computador, los cuales
conducen a resultados esperados.
• Dato
Es la cantidad mínima de información no
elaborada, sin sentido en si misma, un dato no
dice nada del por que de las cosas y por si mismo
tiene muy poca importancia.
Conceptos Básicos
• Información
Es un conjunto organizado de datos los cuales
constituyen un mensaje sobre algún
determinado fenómeno.

• Procesamiento de datos
Consiste en la recolección de datos de entrada
que son evaluados y ordenados para ser
colocados de manera que produzcan información
útil.
Algoritmos y Programas
La necesidad del manejo de información que hoy
se caracteriza por la cantidad y velocidad de
cambio, hace que en todas las profesiones se
tenga la necesidad de interactuar con algún
lenguaje de programación que nos permita el
desarrollo de aplicaciones útiles, seguras que
permitan resolver problemas con rapidez.
Un algoritmo es un método para resolver un
problema, se presenta como una secuencia
ordenada de instrucciones lógicas y finitas que
conlleva a la solución del mismo.
Algoritmos y Programas
La palabra algoritmo viene de un matemático
Persa llamado Mohammed Al-Kowarizmi, su
apellido traducido al latín como Algorismus al
que posteriormente conocemos como algoritmo.
Programar es planificar, concebir, escribir,
articular y probar las instrucciones especificas
que mediante los códigos de un lenguaje de
programación generan una aplicación ejecutable
para resolver procesos con la ayuda del
computador.
Características de los
Algoritmos
• Debe ser Preciso indicando la realización de
cada paso de forma ordenada.
• Debe estar Bien Definido, si se sigue un
algoritmo mas de una vez, los resultados
deben ser los mismos.
• Debe ser Finito, si se sigue un algoritmo, es
decir debe tener un numero determinado de
pasos y no una redundancia cíclica.
Pasos para el Desarrollo de
un Programa.
• Análisis del Problema
Esta es la fase donde se requiere una clara
definición de lo que debe hacer el programa y el
resultado o solución deseada.
Se tienen preguntas elementales que siempre es
necesario plantear:
¿Qué entradas se requieren?
¿Cuál es la salida deseada?
¿Qué método produce la salida deseada?
Pasos para el Desarrollo de
un Programa.
• Diseño del Algoritmo
Uno de los métodos mas utilizados es el de
Divide y Vencerás, la resolución de un programa
complejo se realiza dividiendo en sub problemas
y así sucesivamente hasta que se implemente la
solución este método se conoce como Top-Down
o modular.
Un programa bien diseñado consta de un
programa principal y subprogramas de nivel mas
bajo.
Pasos para el Desarrollo de
un Programa.
• Codificación
Es la generación real del programa con lenguaje
de programación, en esta etapa se hace uso de la
lógica que se desarrollo en el paso del diseño del
algoritmo para generar el programa.

Se debe seleccionar el lenguaje apropiado para


resolver el problema.
Pasos para el Desarrollo de
un Programa.
• Implementación y Depuración
Una vez que el algoritmo se ha convertido en un
programa fuente, es preciso introducirlo en
memoria mediante el teclado y almacenarlo
posteriormente en un dispositivo de computo.
Pasos para el Desarrollo de
un Programa.
• Pruebas
Esto consiste en verificar su funcionalidad a
través de distintos métodos como:
➢Prueba de Escritorio (errores de sintaxis y
lógica)
➢Prueba manual de Datos (Se prueban datos
correctos e incorrectos)
➢Prueba de usuarios potenciales (beta)
➢Depurar (correr el programa en computadora)
➢Error de Compilación
Son errores del programa fuente pueden ser
palabras mal escritas, expresiones erradas o
incompletas, variables no definidas.
➢Error de Ejecución
Generalmente no presenta mensaje de error, se
caracteriza por que el programa se cae
súbitamente, generalmente en operaciones no
permitidas, como dividir por 0, o exceder rangos
de valores permitidos para variables.
➢Error de Diseño
Corresponden a resultados que no son los
correctos, son los mas complejos de corregir ya
que se deben al diseño del programa, para
solucionarlos se debe replantear el algoritmo.
➢Error de Especificación
Es el mas complejo, exclusivamente al mal diseño
y posiblemente mala comunicación usuario
programador, como se detecta al final su
aparición implica repetir gran parte del trabajo
realizado
Pasos para el Desarrollo de
un Programa.
• Documentación del Programa
➢Manual de usuario y manual del analista
Es necesario para la utilización como para la
mantención del programa documentar tanto
técnicamente los algoritmo y diagrama de flujos
como al usuario final.
➢Mantenimiento del programa
Alrededor del 75% del costo del ciclo de un
programa se destina a la mantención.
Lógica
Esta es la capacidad de pensar racionalmente
acerca de soluciones alternativas y los resultados
de aplicarlas, y por tanto, de hacer elecciones
inteligentes.
La lógica es la encargada de determinar la validez
o invalidez de los argumentos, además permite
proporcionar la simbología que servirá para
facilitar el desarrollo de la capacidad de análisis
del problema con el objetivo de obtener una
solución posible.
Argumentos

Cuando el razonamiento se expresa en palabras,


recibe el nombre de argumento.

Un argumento es un grupo cualquiera de


proposiciones o enunciados que forman
premisas y conclusiones, este puede constar de
varias premisas pero de una sola conclusión.
Premisas y Conclusión
La premisas de un argumento son proposiciones
afirmadas como fundamentos o razones para
aceptar una conclusión, la conclusión es la
proposición afirmada que se basa en las otras
proposiciones o premisas.
Premisas y Conclusión
Ejemplo:
“Todos los ángulos internos de un polígono
suman (n-2)x200” aparece como premisa en el
siguiente argumento:
“Todos los ángulos internos de un polígono
suman (n-2)x200”
“las poligonales se deben ajustar”
“por lo tanto, en todas las poligonales ajustadas
la sumatoria de sus ángulos internos es igual a
(n-2)x200”
Premisas y Conclusión
Expresiones como “por tanto”, “por cual”, “de
ello se deduce”, sirven para introducir la
conclusión de un argumento, en tanto que
“pues” y “por que” se usan para introducir las
premisas.
Enunciado simple
“los azimutes no pueden ser mayores a 400ᵍ”
Enunciados compuestos
“los azimutes no pueden ser mayores a 400ᵍ y las
deflexioneas no pueden ser mayores a 200ᵍ”
Premisas y Conclusión
Cuando los enunciados se unen con la conjunción
Y, se denomina enunciados conyutos.
Cuando se unen por el conector O, se denominan
enunciados disyuntos.
De qui surgen las tablas de verdades que
utilizaremos cuando veamos operadores lógicos.

Realizar 2 enunciados uno simple y el otro


compuesto.
Tipos de datos
Dato Simples
Su principal característica es que ocupan solo una
casilla de memoria, dentro de este grupo
encontramos a:
• Entero: Es un subconjunto finito de los
números, su características principal es que no
tienen punto decimal. El rango depende de
cuantos bits utilice, normalmente se utilizan 2
Bytes lo que significa 16 bits.
Enteros
Para el calculo de la cantidad de números se
utiliza la siguiente expresión:
N bits = 2ᴺ cantidad de números
Como son 16 bits podemos realizar 65536 de
números enteros los cuales pueden ser desde 0 a
65535 o de -32768 al 32767 para números con
signo.
2
-153
1587
Reales
Estos números tienen un punto decimal y
pueden ser positivos o negativos.
Un numero real consiste de una parte entera y a
otra parte decimal.
2,125
-132,587
14,0
158,7
-98,002
Caracteres
Un conjunto finito y ordenado de caracteres que
el computador reconoce.
• Caracteres Alfabéticos : a,b,c,d…z A,B,C,D,…Z

• Caracteres Numéricos: 0,1,2,3,….9

• Caracteres Especiales: +,-,*,/,<,>,$,%............


Cadenas
Es una sucesión de caracteres que se encuentran
delimitados por una comilla (apostrofe), la
longitud de una cadena de caracteres es el
numero de ellos comprendido entre los
separadores o delimitadores, por lo general en
todos los lenguajes de programación la máxima
longitud son 255 caracteres.
`Topografía`
`Ingeniería en geomensura`
`7-46-01-48`
Datos Lógicos
También a este tipo de datos se les denomina
Booleanos, este corresponde al que puede
adoptar uno de los dos valores posibles,
verdadero y falso, si o no.

Por ejemplo cuando se pide determinar si un


mayor entero es numero primo, la respuesta será
verdadera o falsa según sea el caso.
Identificadores
Todos los datos que procesa el computador, sean
estos simples, estructurados deben ser
almacenados en celdas de memoria para su
utilización, estas tienen un nombre que permite
su utilización.
• El primer carácter debe ser una Letra

• Los demás caracteres pueden ser letras dígitos


o un símbolo especial
Constantes
Son aquellas que no cambian el valor durante la
ejecución de un programa, estas pueden ser
enteros, real, caracteres.

Variables
Son objetos los cuales cambian de valor durante
la ejecución de un programa , pueden ser
enteros, reales, caracteres.
Operadores Aritméticos

Un operador es el símbolo que determina el tipo


de relación que habrá entre variables.

Estos operadores en particular permiten realizar


operaciones aritméticas entre números,
constantes o variables, el resultado de estas
operaciones siempre será un numero.
Operadores Aritméticos
Cuando se evalúan expresiones que contienen
operadores aritméticos se debe respetar una
jerarquía, cabe destacar que () es asociativo y
tiene la prioridad mas alta en cualquier lenguaje
de programación.

De existir dos operadores


de igual jerarquía se le da
la prioridad aquel que
este mas a la izquierda.
Ejercicios
Resuelva las siguientes operaciones
• A= 10/2*(7+(68-15*33+(45**2/16)/3)/15)+1
• A=10/2*(7+(68-15*33+(2025/16)/3)/15)+1
• A=10/2*(7+(68-15*33+126.5625/3)/15)+1
• A=10/2*(7+(68-495+126.5625/3)/15)+1
• A=10/2*(7+(68-495+42.1875)/15)+1
• A=10/2*(7+(-427+42.1875)/15)+1
• A=10/2*(7-384.8125/15)+1
• A=10/2*(7-25.6541)+1
Ejercicios
• A=10/2*(-18.6541)+1
• A=5*(-18.6541)+1
• A=-93.2705+1
• A=-92.2705

Ejercicio Nº2
• B=7*2*(160mod3**3)+(10div5)*13-6
Operadores Relacionales
Son los que permiten comparar dos variables,
en cualquier lenguaje de programación es la
característica de considerar alternativas, es
decir proceder de una determinada manera si
se cumplen o no las condiciones fijadas, con
este tipo de operadores se puede determinar
si se cumple dicha condición.
Ejercicios
Teniendo las siguientes variables proceder:
A=10 y B=4
• (A*5+B**2/2)<=(B**2)div2
Asignaciones
Las asignaciones son acciones que permiten
darle o asignarle a una variable un valor
determinado, los valores asignados a la
variable deben ser del mismo tipo de variable.
En una asignación se resuelve primero la
expresión (lado derecho del símbolo de
asignación) y se almacena el resultado en la
variable.
Variable ←Expresión o valor
Ejemplo
Variables 8. BAND ← (8>5) y (15<2**3)
I,TOPO,J : entero 9. INV ← TOPO*5/J**2
DIR, INV : real 10. I ← I*3
CAR : carácter 11. DIR ← DIR/5
BAND : booleano 12. BAND ← BAND o (I=J)
1. I ← 0 13. I ← DIR
2. I ← I+1 14. CAR ← J
3. TOPO ← 0
4. J ← (5**2)div3
5. CAR ← ´a´
Confeccionar valores en
6. TOPO ← J div I memoria – proceso de
7. DIR ← TOPO/3 asignación.
Fundamentos de
Programación en Topografía