Cátedra de COMPUTACION Carreras: Licenciatura en Matemática – Profesorado en Matemática Equipo docente: Prof. César Orsetti – Mgr. María del Carmen Varaldo __ __________________ PRACTICA 1 : VARIABLES Y TIPOS DE DATOS 1- Siendo i y j dos variables de tipo entero describa el estado al que se llega después de aplicar las siguientes asignaciones en forma secuencial, considerando en cada caso el estado inicial correspondiente : ESTADO INICIAL i : = 1, j : = 1 i : = 0, j : = -1 i : = 0, j : = 0 i : = -5, j : = 0 ASIGNACIONES i : = 2, j : = 3 i : = i + 1, j : = j + 2 i : = i –2 ; j : = 2 * (j - i) + 1 j : = j + 1, i : = i + 1, j : = j + i ESTADO FINAL Realice una representación gráfica para cada caso indicando el estado inicial, el estado final conseguido y, además, los estados intermedios de las variables i y j. 2- Considere la siguiente tabla de variables: VARIABLE TIPO A B C P Q ESTADO INICIAL ESTADO FINAL 16 9 3 falso verdadero a) Indique el tipo de cada una de las variables . b) Determine el estado final de las mismas, luego de ejecutarse secuencialmente las siguientes instrucciones : P (A < B ) OR ( B mod 3 = 0 ) A trunc (A / 3 ) B sqrt ( A * C + 1 ) Q (Q B<A) A ( C * B ) div 4 3- En el código ASCII se identifica a cada carácter con un número de orden. Existen dos funciones inversas asociadas a esta tabla: ord (devuelve el nº de orden de un carácter) y chr (devuelve el carácter correspondiente a un número). La función ord también se utiliza para calcular el lugar que ocupa un cierto elemento dentro de un conjunto ordinal. Por ejemplo, si se tiene un tipo enumerado sem = (lunes, martes, miércoles, jueves, viernes), ord (jueves) devuelve el valor 3. Otras dos funciones que se aplican sobre conjuntos ordinales son pred y succ que devuelven el elemento anterior y el posterior de un elemento dado, respectivamente. Evalúe las siguientes expresiones: Pág. 1-Prác. 1 (L.M. - P.M.) ord (‘d’) – ord (‘a’) chr (ord (‘p’)) chr (ord (‘m’) + ord (‘A’) – ord (‘a’)) ord (lunes) succ ( succ (true)) pred (succ (viernes)) chr ( ord (‘=’) + 30) ord (false) ord (true) succ (jueves) pred (false) ord (succ (martes)) 4- Sabiendo que : NOMBRE Peso Velocidad Altura Letra VALOR 4 3 2.6 ‘c’ TIPO Integer Integer Real Char ¿Cuáles son los valores de las siguientes expresiones? a) (abs(peso) - sqr(velocidad)) * round(altura) b) ord(letra) - peso div velocidad + peso mod velocidad c) (letra > ‘n’ ) and (velocidad < = peso) 5- Sea MAX una constante entera que vale 1000, X e Y variables reales y A, B e I variables enteras. Indique las sentencias válidas y su valor, justificando su respuesta. Suponga que A = 3, B = 4 e Y = -1.0 a) I := (990 - MAX) div A e) I := 3.14 * A b) I := B div 0 f) X := A div B c) I := A mod (MAX -990) g) X := A mod (A / B) d) I := (MAX - 990) mod A h) I := A / B 6- Dado el alfabeto {a, b, c}, a) construya el conjunto V de cadenas de longitud a lo sumo 4 que tengan solamente dos b’s; b) describa el conjunto W de palíndromos de longitud 3; c) halle el conjunto diferencia entre V y W; d) defina algún conjunto de cadenas que incluya a la cadena vacía. 7- Sea el alfabeto A = {0,1}. Considere los conjuntos: U= {u / u es cualquier cadena sobre A, incluida } S = { , 0, 1, 00, 01, 10, 11} T = {1, 01, 10, 001, 010, 100, 0001, 0010, 0100, 1000, ...} a) Describa, con palabras, los conjuntos S y T. b) Describa los siguientes conjuntos: i) Las cadenas sobre A de longitud menor o igual que 5, que contenga por lo menos 4 ceros. ii) Las cadenas sobre A de longitud a lo sumo dos. iii) Las cadenas sobre A de longitud 0. iv) Las cadenas sobre A con un número par de unos y de longitud 3. Pág. 2-Prác. 1 (L.M. - P.M.) 8- Suponga que s y t son cadenas sobre el alfabeto {a, b, ..,z}.Es posible definir concat (s,t) como la cadena que resulta de poner t a continuación de s (concatenar). Por ejemplo, si s=abc y t=xy, entonces concat (s,t)=abcxy. Del mismo modo si S y T son conjuntos de este tipo de cadenas, podemos definir concat (S,T) como el conjunto de todas las cadenas que resultan de concatenar una cadena arbitraria s de S y otra t deT. Sea, entonces, S={ ,x,xy,xyy} y T={ ,y,yx,yxx}. Se pide encontrar cada uno de los conjuntos siguientes: a) concat ( S , T ) b) concat ( T , S ) c) S T d) S T e) T – S 9- Supongamos que S y T son conjuntos de cadenas. Encuentre S y T que satisfagan: concat ( S , T ) = S T 10- Una alternativa en criptografía para el cifrado de César es la utilización de una clave de codificación, que consiste en un patrón que se repite e indica al decodificador a qué distancia a la derecha en el alfabeto se encuentra la letra correcta. Por ejemplo, A significa "desplaza 0 letras"; B significa "desplaza 1 letra"; y así sucesivamente. Por lo tanto, si la clave de codificación es ABCABC…, el mensaje (en inglés) FOURSCOREANDSEVEN se codificaría FPWRTEOSGAOFSFXEO. Invertir el proceso para el mensaje codificado DPUIASTSGSEGRTGITKZR. ¿Es este esquema una función de caracteres uno-a-uno? ¿Es una función uno-a-uno de cadena de caracteres? Pág. 3-Prác. 1 (L.M. - P.M.)