1. Cada expresión toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecución de las operaciones indicadas. Una expresión consta de operandos y operadores. Según sea el tipo de objetos que manipulan, las expresiones se clasifican en: • aritméticas, • relacionales, • lógicas, • carácter.
1.1. Expresiones aritméticas Las expresiones aritméticas son análogas a las fórmulas matemáticas. Las variables y constantes son numéricas (real o entera) y las operaciones son las aritméticas. + suma - resta * multiplicación / división ↑, **, ^ exponenciación div, / división entera mod, % módulo (resto)
2. Datos: El primer objetivo de toda computadora es el manejo de la información o datos. Estos datos pueden ser las cifras de ventas de un supermercado o las calificaciones de una clase. Un dato es la expresión general que describe los objetos con los cuales opera una computadora.
2.1. Datos numéricos: El tipo numérico es el conjunto de los valores numéricos. Estos pueden representarse en dos formas distintas: • tipo numérico entero (integer). • tipo numérico real (real).
2.1.1. Enteros:Los enteros son números completos, no tienen componentes fraccionarios o decimales y pueden ser negativos o positivos. Ejemplos de números enteros son: 5 6 –15 4 20 17 1340 26 Los números enteros se pueden representar en 8, 16 o 32 bits, e incluso 64 bits, y eso da origen a una escala de enteros cuyos rangos dependen de cada máquina Enteros –32.768 a 32.767 Enteros cortos –128 a 127 Enteros largos –2147483648 a 2147483647.
2.1.1.1. Reales: el tipo real consiste en un subconjunto de los números reales. Los números reales siempre tienen un punto decimal y pueden ser positivos o negativos. Un número real consta de un entero y una parte decimal. Los siguientes ejemplos son números reales: 0.08 3739.41 3.7452 –52.321 –8.12 3.0.
2.1.1.2. Existe un tipo de representación denominado notación exponencial o científica y que se utiliza para números muy grandes o muy pequeños. Así, 367520100000000000000 se representa en notación científica descomponiéndolo en grupos de tres dígitos 367 520 100 000 000 000 000 y posteriormente en forma de potencias de 10 3.675201 x 1020 y de modo similar .0000000000302579 se representa como 3.02579 x 10–11
3. Constantes y variables: Los programas de computadora contienen ciertos valores que no deben cambiar durante la ejecución del programa. Tales valores se llaman constantes. De igual forma, existen otros valores que cambiarán durante la ejecución del programa; a estos valores se les llama variables.
3.1. Una constante es un dato que permanece sin cambios durante todo el desarrollo del algoritmo o durante la ejecución del programa
3.1.1. Constantes reales válidas: 1. 234 -0.1436 +54437324. Constantes reales no válidas: 1,752.63(comas no permitidas) 83(normalmente contiene un punto decimal, aunque existen lenguajes que lo admiten sin punto). Constantes reales en notación científica 3.374562E equivale a 3.374562 × 102
3.2. Una variable es un objeto o tipo de datos cuyo valor puede cambiar durante el desarrollo del algoritmo o ejecución del programa. Dependiendo del lenguaje, hay diferentes tipos de variables, tales como enteras, reales, carácter, lógicas y de cadena. Una variable que es de un cierto tipo puede tomar únicamente valores de ese tipo. Una variable de carácter, por ejemplo, puede tomar como valor sólo caracteres, mientras que una variable entera puede tomar sólo valores enteros.
3.2.1. Los nombres de las variables, a veces conocidos como identificadores, suelen constar de varios caracteres alfanuméricos, de los cuales el primero normalmente es una letra. No se deben utilizar —aunque lo permita el lenguaje, caso de FORTRAN— como nombres de identificadores palabras reservadas del lenguaje de programación. Nombres válidos de variables son: A510 NOMBRES Letra SalarioMes NOTAS Horas SegundoApellido NOMBRE_APELLIDOS2 Salario Ciudad.
3.2.1.1. Existen lenguajes —Pascal— en los que es posible darles nombre a determinadas constantes típicas utilizadas en cálculos matemáticos, financieros, etc. Por ejemplo, las constantes π = 3.141592... y e = 2.718228 (base de los logaritmos naturales) se les pueden dar los nombres PI y E. PI = 3.141592 E = 2.718228
4. Expresiones: Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. Las mismas ideas son utilizadas en notación matemática tradicional; por ejemplo, a + (b + 3) + √c
5. Programa: Un programa de computadora es un conjunto de instrucciones (órdenes dadas a la máquina que producirán la ejecución de una determinada tarea). En esencia, un programa es un medio para conseguir un fin. El fin será probablemente definido como la información necesaria para solucionar un problema.
5.1. El proceso de programación es, por consiguiente, un proceso de solución de problemas —como ya se vio en el Capítulo 2— y el desarrollo de un programa requiere las siguientes fases: 1. definición y análisis del problema; 2. diseño de algoritmos: • diagrama de flujo, • diagrama N-S, • pseudocódigo; 3. codificación del programa; 4. depuración y verificación del programa; 5. documentación; 6. mantenimiento.
5.1.1. Definición del problema Diseño del algoritmo Codificación del programa Depuración y verificación DOCUMENTACIÓN MANTENIMIENTO
6. Instrucciones: Las acciones o instrucciones se deben escribir y posteriormente almacenar en memoria en el mismo orden en que han de ejecutarse, es decir, en secuencia.
6.1. Ejemplo: Instrucción 1 instrucción 2, igual a instrucción n.
6.1.1. En caso del algoritmo las instrucciones suelen ser acciones: Accion 1, Accion 2 son igual a: Acción n
6.1.2. Un programa no es lineal cuando se interrumpe la secuencia mediante instrucciones de bifurcación: acción 1 acción 2 . . . acción x acción n . acción n + i
7. LA OPERACIÓN DE ASIGNACIÓN La operación de asignación es el modo de almacenar valores a una variable. La operación de asignación se representa con el símbolo u operador ← (en la mayoría de los lenguajes de programación, como C, C++, Java, el signo de la operación asignación es =). La operación de asignación se conoce como instrucción o sentencia de asignación cuando se refiere a un lenguaje de programación. El formato general de una operación de asignación es:
7.1. <nombre de la variable> ← <expresión> expresión es igual a expresión, variable o constante
7.1.1. La acción de asignar es destructiva, ya que el valor que tuviera la variable antes de la asignación se pierde y se reemplaza por el nuevo valor. Así, en la secuencia de operaciones A ← 25 A ← 134 A ← 5
7.2. La flecha (operador de asignación) se sustituye en otros lenguajes por = (Visual Basic, FORTRAN), := (Pascal) o = (Java, C++, C#). Sin embargo, es preferible el uso de la flecha en la redacción del algoritmo para evitar ambigüedades, dejando el uso del símbolo = exclusivamente para el operador de igualdad. La operación de asignación: A ← 5
7.2.1. La computadora ejecuta la sentencia de asignación en dos pasos. En el primero de ellos, el valor de la expresión al lado derecho del operador se calcula, obteniéndose un valor de un tipo específico. En el segundo caso, este valor se almacena en la variable cuyo nombre aparece a la izquierda del operador de asignación, sustituyendo al valor que tenía anteriormente. X ← Y + 2
7.2.1.1. Es posible utilizar el mismo nombre de variable en ambos lados del operador de asignación. Por ello, acciones como N ← N + 1