Tipos de Datos
Los diferentes objetos de información con los que un programa trabaja se denominan datos.
Todos los datos tienen un tipo asociados con ellos que nos servirá para poder conocer con que información trabajaremos. Es decir, cuando ingresemos el sueldo de un trabajador necesitamos que este contenga decimales, o al solicitar la edad de una persona está tiene que estar con numeros enteros, etc.. Además la suma entre caracteres no tiene sentido.
La asignación de tipos a los datos tiene dos objetivos principales:
- Detectar errores de operaciones aritméticas en los programas
- Determinar como ejecutar las operaciones
Tipos de Datos Comunes
Estos son los tipos de datos mas útilizados en los lenguajes de programación:
- Númericos
- Caracteres y
- Lógicos
Tipos Númericos
Dentro de estos tipos se puede hacer mención de los tipos enteros, reales o de coma flotante, y de los exponenciales.
Tipos Carácter
Los tipos carácter se dividen también en caracteres ASCII, como por ejemplo: a A & * , etc.. El otro grupo de caracteres son los strings o cadenas de caracteres, como por ejemplo: "Hola Mundo".
Tipos Lógicos
Los tipos lógicos solamente pueden tomar los valores verdadero o falso.
En esta sección conoceremos los otros objetos que se útilizan en los programas, a saber, las variables y las constantes; además conoceremos también lo que es un identificador y para que se útiliza.
Identificadores
Representan los nombres de los objetos de un programa (constantes, variables, tipos de datos, procedimientos, funciones, etc.). Es una secuencia de carácteres que puede ser de cualquier longitud, aunque tiene ciertas reglas que hay que seguir, las cuales son:
- Debe comenzar con una letra o "_" y no puede contener espacios en blanco.
- Letras, dígitos y carácteres subrayados ("_") están permitidos después del primer carácter.
En síntesis un identificador es un método para nombrar a las celdas de memoria en la computadora, en lugar de memorizarnos una dirección de memoria.
Se utilizan para nombrar variables, constantes, procedimientos y funciones.
Constantes
Las constantes son valores que no pueden cambiar en la ejecución del programa. Recibe un valor en el momento de la compilación del programa y este no puede ser modificado.
Variables
Las variables son valores que se pueden modificar durante la ejecución de un programa. Al contrario de las constantes estos reciben un valor, pero este valor puede ser modificado durante la ejecución o la compilación del programa.
Sentencia de Asignación
Se utiliza para asignar o almacenar valores a variables o constantes. Es una operación que sitúa un valor determinado en una posición de memoria. Se demuestra en pseudocódigo con el símbolo <- (Una flecha apuntando hacia el identificador, donde se desea guardar el valor.). variable <- expresión
El tipo de expresión debe ser del mismo tipo que el de la variable, en caso contrario en la fase de compilación se produciría un error de tipos. Aunque a la fecha existen lenguajes de programación con una potente herramienta para la conversión de datos (tal es el caso de Visual Basic), no es recomendable asignar valores de un tipo diferente a variables de otro tipo.
Reglas de Asignación
- Una variable en el lado derecho de una sentencia de asignación debe tener un valor antes de que la sentencia de asignación se ejecute. Hasta que un programa le da un valor a una variable, esa variable no tiene valor. Por ejemplo:
Si x no tiene un valor antes de ejecutar y <- x+1, se producirá un error lógico. - En la izquierda de una sentencia de asignación solo pueden existir variables. Por consiguiente no es valido lo siguiente:
Valor_Neto - Tasas <- 34015.
Además hay que recordar que la operación de asignación es una operación destructiva debido a que el valor almacenado en una variable se pierde o se destruye y se sustituye por el nuevo valor en la sentencia de asignación.
Operadores utilizados en Programación
En todos los lenguajes de programación se útilizan operadores para efectuar operaciones aritmeticas. Combinando las variables y constantes en expresiones aritméticas por medio de funciones adecuadas.
Una expresión es un conjunto de datos o funciones unidos por operadores aritméticos, los cuales se muestran en la siguiente tabla:
| Operador | Significado |
| + | Suma |
| - | Resta |
| * | Multiplicación |
| / | División |
| ^ | Exponenciación |
| Mod | Módulo |
Operadores Lógicos
En ocasiones en los programas se necesitan realizar comparaciones entre distintos valores, esto se realiza utilizando los operadores relaciones, los cuales se listan a continuación:
| Operador | Significado |
| < | Menor que |
| > | Mayor que |
| <= | Menor o igual que |
| >= | Mayor o igual que |
| = | Igual a |
| <> | Distinto a, diferente de |
Precedencia de Operadores
Cuando una expresión aritmética se evalúa, el resultado es un número. Ahora bien, cuando aparecen dos o mas expresiones aritméticas, qué operaciones se realizan primero?
Una expresión aritmética en programación tiene una sintaxis de la forma:
x2+1/2
Hay que observar que esta expresión es totalmente diferente a esta otra (x2+1)/2, por lo que es importante codificar las expresiones aritméticas correctamente.
Para realizar esto se deberán conocer las reglas de evaluación de los operadores, que se estudian a continuación.
Reglas de Evaluación
- Todas las subexpresiones entre parentesis se evalún primero. Las subexpresiones entre parentesis anidados se evalúan de adentro hacia afuera, es decir, que el parentesis mas interno se evalúa primero.
- Prioridad de Operaciones: Dentro de una misma expresión o subexpresión, los operadores se evalúan en el siguiente orden:
| * , / | Multiplicación y división |
| div,mod | División y Modulo de enteros |
| +,- | Suma y Resta |
- Los operadores en una misma expresión o subexpresión con igual nivel de prioridad se evalún de izquierda a derecha
Escritura de Fórmulas
Las fórmulas matematicas se deben escribir en formato lineal. Esto obliga al uso frecuente de parentesis que indiquen el orden de evaluación correcto de las operaciones.
Por ejemplo, si deseamos codificar la fórmula de Vieta, tendríamos que escribirla así:
Vamos a escribir el dato solo del valor positivo
(-b+raiz(b*b-4*a*c))/(2*a)
Donde a,b,c son numeros reales.
Operaciones de Entrada y Salida (I/O) de Datos
Los datos se pueden almacenar en memoria de tres formas diferentes:
asociados con constantes, asignados a una variable con una sentencia de asignación o una sentencia de lectura. Siendo el último el mas indicado si se desea manipular diferentes datos cada vez que se ejecuta el programa. Además la lectura de datos permite asignar valores desde dispositivos hasta archivos externos en memoria, esto se denomina operación de entrada o lectura.
Algunos ejemplos de dispositivos de entrada y salida, son:
teclado,monitor,mouse,etc.
La operación de entrada en pseudocódigo se representa de la siguiente manera:
leer(lista de variables)
A medida que se realizan calculos en el programa, se necesitan visualizar los resultados. Está se conoce como operación de escritura o salida.
Esta operación se representa en pseudocódigo de la siguiente manera:
escribir(lista de variables,"Mensaje")
En la instrucción de salida se pueden incluir además mensajes de texto y variables.
Con lo que hemos visto hasta aquí podemos ya realizar un pequeño ejemplo, el clásico "Hola Mundo", en pseudocódigo.
Algoritmo Ejemplo
escribir("Hola Mundo")
Fin
Esto imprimirá en pantalla la frase 'Hola Mundo'.
Programación Interactiva
En la programación interactiva el usuario del programa puede interactuar con el programa e introducir datos mientras se ejecuta el programa.
Al objeto de facilitar esta entrada de datos, la computadora debe indicar al usuario el momento en que debe introducir los datos. Para ello se deben visualizar mensajes interactivos con indicaciones al usuario.
Ejemplo: Suma de dos números ingresados por el usuario
Algoritmo Suma
Variables
numero1,numero2,total
escribir('Introduce el primer número:')
leer(numero1)
escribir('Introduce el segundo número:')
leer(numero2)
escribir('El total es: ',numero1 + numero2)
Fin
Esto debe visualizar en pantalla lo siguiente:
Introduce el primer número:
89 Intro presionado por el usuario
Introduce el segundo número
1 Intro presionado por el usuario
El total es: 90
Capítulo 2
Estructuras de Control
Las estructuras de control de un lenguaje de programación se refieren a el orden en que las instrucciones de un algoritmo se ejecutarán. El orden de ejecución de las sentencias o instrucciones determinán el flujo de control.
Estas estructuras de control son por consiguiente fundamentales en los lenguajes de programación y en los diseños de algoritmos especialmente los pseudocódigos.
Las tres estructuras de control básico son:
- secuencia
- selección
- repetición
La programación estructurada hace los programas mas faciles de escribir, verificar, leer y mantener, útiliza un número limitado de estructuras de control que minimizan la complejidad de los problemas.
En mayo de 1996, Bôhm y Jacopin demostrarón que un programa propio puede ser escrito útilizando solamente tres tipos de estructuras de control: secuenciales, selectivas y repetitivas.
Un programa se define como propio si cumple lo siguiente:
- Posee un solo punto de entrada y salida o fin para control del programa.
- Existen caminos desde la entrada hasta la salida que se pueden seguir y que pasan por todas las partes del programa.
- Todas las instrucciones son ejecutadas y no existen lazos o bucles infinitos.
En síntesis la programación estructurada significa:
- El programa completo tiene un diseño modular
- Los módulos se diseñan con metodología descendente (método top-down)
- Cada módulo se codifica útilizando las 3 estructuras de control básicas: secuenciales,selectivas,repetitivas.
- Estructuración y modularidad son complementarios mas no iguales
Estos son los temas a tratar:
- Expresiones Lógicas
- Operadores Relacionales
- Orden de evaluación
- Operadores Lógicos
- Estructuras de Control
- Estructuras Repetitivas (Bucles o Loops)

No hay comentarios:
Publicar un comentario