Curso de Programación I Parte II Ing. Jorge Traveria Lic. Cristian Kenny UTN San Martín de los Andes
PROGRAMACIÓN I Tipos de datos
Tipos de datos Los datos a procesar por una computadora pueden ser: Simples Estructurados Los simples ocupan solo una celda de memoria. Estos pueden ser: enteros, reales, caracteres y booleanos. Los estructurados emplean un nombre (identificador) que hace referencia a un grupo de celdas de memoria. Pueden contener datos simples o grupos como: arreglos, cadenas y registros Datos numéricos: enteros: 128, -17890 y reales: 7,5 ; -37,865 Datos alfanuméricos: letras, dígitos o símbolos. Pueden ser: tipo carácter: ‘a’ , ‘B’ (ojo! Van con apóstrofe) Pueden ser: tipo cadena de caracteres: “abcde” , “x98y76” (ojo! Con comillas)
Identificador. Variables y constantes Un identificador define una celda o posición de memoria. Cada variable tiene un nombre, un tipo y un valor Es un nombre dado por una serie de caracteres formados por letras, dígitos y/o guión bajo que no inicien con un digito. ANSI C establece 31 caracteres de longitud. Mayúsculas y minúsculas son diferentes. A1 no es igual a1 sueldo_total
Variables y constantes Una variable es una posición de memoria donde se puede almacenar un valor para uso de un programa. Pueden cambiar durante la ejecución del programa Un nombre de variable es cualquier identificador válido. Una constante es un dato como una variable pero que no cambia durante la ejecución de un programa Pueden ser de tipo entero, real, carácter o cadena de caracteres
Operaciones aritméticas Se requiere de operadores aritméticos y de operandos Operador aritmético operación ejemplo resultado ** potencia 4**3 64 * multiplic 8,25*7 57,75 / división 15/4 3,75 % módulo 15 %2 1 +/ - Suma/ resta 125.78+62.5 188.28
Operaciones aritméticas en C operación descripción ejemplo potencia pow( x, y ) pow(2,3)…..8 raíz sqrt( x) sqrt(9.0)…..3 Operador aritmético operación ejemplo resultado * multiplic 8,25*7 57,75 / división 15/4 3,75 % módulo 15 %2 1 +/ - Suma/ resta 125.78+62.5 188.28
Precedencia de operaciones aritméticas Se requiere de operadores aritméticos y de operandos Operador operación orden ( ) paréntesis Si existen varios en el mismo nivel, se calculan de izquierda a derecha ** potencia Se evalua en segundo lugar * multiplic Se evalua en tercer lugar / división % (mod) módulo div divi. entera +/ - Suma/ resta Se calculan al final
Toma de desiciones: Operadores relacionales Los encunciados en un programa llevan a cabo acciones (cálculos, entradas, salidas) o toman decisiones. Las condiciones en las estructuras de decisión de los programas se forman utilizando los operadores de igualdad y relacionales. Operador standard Operador en C Ejemplo Resultado = == x==y x es igual a y != x!=y X no es igual a y > x>y X es mayor que y < X<y X es menor que y >= X>=y X es mayor e igual a y <= X<=y X es menor e igual a y
Toma de desiciones: Operadores lógicos Son operadores que permiten formular condiciones complejas a partir de condiciones simples. Conjunción : Y Disyunción: O Negación: No Operador lógico Expresión Significado No No P Es falso que P Y P Y Q P sin embargo Q O P O Q P ó Q
Toma de desiciones: Operadores lógicos Tabla de verdad de los operadores lógicos P Q NO P NO Q P o Q P y Q VERDAD FALSO
Precedencia de los operadores ( ) mayor ** *, / ,mod = ,< >, < ,>, <=, >= NO Y O menor
Asociatividad de los operadores ( ) de izq a der *, / ,% + - = ,< >, < ,>, <=, >= == != = de der a izq
Algebra / C Precedencia en C Ejemplo: Algebra: m= a+b+c y=mx+b C: m = (a+b+c) / 3; y = m * x + b; Z = p * r % q + w / x – y; 3 1 2 4 3 5
Construcción de un algoritmo Resolución de problemas y los algoritmos Construcción de un algoritmo Ejemplo: Objetivo: Calcular el precio de un lote de tierra Entradas Precio (en pesos) del metro cuadrado de tierra Metros cuadrados (en m2) de un lote Salida Precio (en pesos) de un lote
Construcción de un algoritmo Inicio {asignar valores de Pm2 y Mt} Pm2 0 Mt 0 Pt 0 leer Pm2, Mt hacer Pt Pm2 x Mt escribir Pt Fin.
Construcción de un algoritmo inicio Pm2 y Mt Pt=Pm2 x Mt Pt fin
Utilización de variables Durante la ejecución del algoritmo, es importante recordar los resultados parciales de cada paso. Estos resultados se etiquetan con un nombre. Al invocar con posterioridad ese nombre, recuperamos el resultado parcial.
Utilización de variables Pm2 precio del metro cuadrado es un dato de entrada, y también se considera una variable Pt=Pm2 * Mt Esta variable se denomina Mt y se utiliza para recordar el valor de X metros cuadrados.
Utilización de variables La principal característica de una variable es que su valor puede cambiar en el tiempo. Usualmente se compara con una celda donde se puede almacenar un solo “elemento”. Por lo general, las variables se definen con un tipo de dato. El tipo de dato restringe que tipo de “elemento” se pueden guardar en las “celdas”.
Utilización de constantes Además de las variables, un algoritmo requiere de constantes. A diferencia de las variables, su valor no puede cambiar en el tiempo. Las constantes también pueden recibir nombres para mayor claridad. Ej.: PI = 3,1416
Utilización de constantes totm2 = nha * 10000 La constante “10000” sirva para transformar el valor por hectárea a un valor por metro cuadrado
Aplicación de operadores Para obtener resultados, generalmente es necesario “transformar” las entradas en operandos Para esto se aplican operadores de distinta índole Aritméticos ( + , - , * , / ) Relacionales y lógicos (igual que, mayor que, menor que, y, o, no) etc. Los operadores requieren de operandos y entregan un resultado. Por lo general, los operadores son unarios o binarios.
Aplicación de operadores operandos Pt=Pm2 * Mt operador
Asignación de valores El resultado de la utilización de un operador se puede almacenar en una variable. En este caso se utiliza un tipo especial de operador. Este se denomina: operador de asignación.
Asignación de valores Operador de asignación Pt=Pm2 * Mt El resultado de Pm2 x Mt se asigna a la variable Pt
Bloques de asignación Un bloque de asignación se utiliza para asignar valores o expresiones a una variable. La asignación es una operación destructiva Formato de la asignación: Variable expresión o valor Expresión puede ser: operación aritmética lógica constante variable Ejemplo: var 200