Solucionario Consolidado Utilizando PSeInt

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Solucionario Consolidado Utilizando PSeInt"

Transcripción

1 Solucionario Consolidado Utilizando PSeInt 2da Olimpiada Boliviana de Informática Estado Plurinacional de Bolivia, febrero de 2013 Alberto J. Suxo Riveros Alberto J. Suxo Riveros 1

2 Contenidos Fase 4 Final Nacional... 1 Problema A: Distancia de Hamming... 1 Problema B: Hallando números capicúas... 3 Problema C: Poema... 5 Problema D: La Última Esperanza... 7 Problema E: Bolivia Word Fase 3 - Departamental Problema A: Cena para Cinco Problema B: Código USSD Problema C: Sumando Fibonacci Problema D: Leones Problema E: Número de la suerte Problema F: Aritmética Maya Problema G: Narcisos Fase 2 - Regional Problema A: Trinomios Triangulares Problema B: Calculadora Inca Problema C: Aritmética Problema D: Bender Problema E: Eratóstenes Problema F: Examen Problema G: Lago Problema H: Química Anexo Opciones del Lenguaje PSeInt Alberto J. Suxo Riveros 2

3 Fase 4 Final Nacional Problema A: Distancia de Hamming Autor: Jorge Terán La distancia de Hamming entre dos números está definida como el número de posiciones en sus representaciones binarias en las que difieren. Los ceros a la izquierda son usados si son necesarios para que a las representaciones binarias tengan misma longitud. Por ejemplo, los números y difieren en la primera, tercera y cuarta posición, así que dan una distancia de Hamming de 3. La entrada son cadenas que contienen las representaciones binarias de ciertos números (cada par de números tiene la misma longitud). Debe devolver las distancias de Hamming de todos los pares de números dados. Entrada La primera línea tendrá un número N, que es la cantidad de casos de prueba. Seguido de N líneas, En cada línea se vienen dos cadenas con las representaciones binarias separadas por un espacio. Cada cadena tendrá entre 1 y 50 caracteres, inclusive. Todos los elementos de números contendrán sólo los caracteres 1 y 0. Salida La salida consiste en una línea para cada caso de prueba que contiene la distancia Hamming. Ejemplo de entrada Ejemplo de salida Alberto J. Suxo Riveros 1

4 Solución // Olimpiada Boliviana De Informatica // Problema : Distancia de Hamming // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Hamming Definir N, i, j, cnt Como Entero; Definir a, b Como Caracter; Leer N; Para i<-1 Hasta N Con Paso 1 Hacer Leer a, b; cnt <- 0; Para j<-0 Hasta Longitud(a)-1 Con Paso 1 Hacer Si Subcadena(a,j,j) <> Subcadena(b,j,j) Entonces cnt <- cnt + 1; Escribir cnt; FinProceso Alberto J. Suxo Riveros 2

5 Problema B: Hallando números capicúas Autor: Jorge Terán Tome un número, lo invierte, luego lo suma al número original, luego otra vez lo invierte y lo suma. Este proceso se repite hasta que la suma sea capicúa o se haya hecho 100 sumas. Por ejemplo el 14 lo invertimos y obtenemos 41 sumamos al número original obteniendo 55 es capicúa. Imprimimos 55. Otro ejemplo 95+59=154. Invertimos y sumamos =605. Repetimos el proceso =1111 que es capicúa. Entrada La primera fila tendrá un número N que es el número de datos de entrada, seguido de N líneas, cada línea consiste de un numero entero n 500 un una línea. Salida Por cada números de entrada el numero capicúa hallado. Si no existe un imprima la palabra imposible. Ejemplo de entrada Ejemplo de salida Alberto J. Suxo Riveros 3

6 Solución // Olimpiada Boliviana De Informatica // Problema : Hallando números capicúas // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* SubProceso resultado <- invertir ( a ) Definir resultado Como Entero; Definir aux como Entero; aux <- 0; Mientras a > 0 Hacer aux <- (aux * 10) + (a % 10); a <- trunc(a / 10); FinMientras resultado <- aux; FinSubProceso Proceso Capicuas Definir N, i, cnt, A, B Como Entero; Definir seguir Como Logico; Leer N; Para i<-1 Hasta N Con paso 1 Hacer Leer A; cnt <- 0; seguir <- verdadero; Mientras seguir Hacer B <- invertir( A ); Si A = B Entonces seguir <- falso; Sino A <- A + B; cnt <- cnt + 1; Si cnt=100 Entonces seguir <- falso; FinMientras Si cnt = 100 Entonces Escribir "Imposible"; Sino Escribir A; FinProceso Alberto J. Suxo Riveros 4

7 Problema C: Poema Autor: Alberto Suxo Como cada año, en el colegio de José se organiza todo un evento por el día de la madre. Comenzará con un himno, coreografías de bailes, una pequeña obra de teatro, una banda de estudiantes tocará un tema especialmente dedicado y, por último, un poema, (a cargo de José). Pero, José está muy nervioso, ha hecho todo lo posible para memorizar el poema. Sus amigos decidieron ayudar a José quitando todas las vocales del poema y remplazarlos por guiones, luego dejaron que José lo lea para ver si realmente lo ha memorizado todo. El problema es que los amigos de José quieren estar seguros de remplazarlos bien sin arruinar el poema, para lo cual decidieron hacerlo mediante un programa. Tu trabajo es ayudar a estos niños. Entrada La primera línea tendrá un número entero N (0 < N < 1000) que representa el número de líneas que tendrá el poema. Cada línea del poema tendrá un máximo de 100 caracteres que contendrá: mayúscula (A-Z), minúscula (a-z), espacios ( ), puntos (.) y comas (,). Salida En la salida se mostrará el poema sin vocales como se muestra en el ejemplo de salida. Ejemplo de entrada 5 Creci de a poco con tu calor, me alimentaba con tus caricias y frases de amor. Con miedo de perderte... Se hizo la luz Ejemplo de salida Cr-c- d- - p-c- c-n t- c-l-r, m- -l-m-nt-b- c-n t-s c-r-c--s y fr-s-s d- -m-r. C-n m--d- d- p-rd-rt-... S- h-z- l- l-z Alberto J. Suxo Riveros 5

8 Solución // Olimpiada Boliviana De Informatica // Problema : Poema // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* SubProceso resultado <- esvocal( ch ) Definir resultado Como Logico; Definir c Como Caracter; c <- Minusculas( ch ); Si c="a" c="e" c="i" c="o" c="u" Entonces resultado <- verdadero; Sino resultado <- falso; FinSubProceso Proceso Poema Definir n, i, j Como Entero; Definir linea Como Caracter; Definir car, temporal Como Caracter; Leer n; Para j<-1 Hasta n Hacer Leer linea; Para i<-0 Hasta Longitud(linea)-1 Con paso 1 Hacer car <- Subcadena(linea,i,i); Si esvocal( car ) Entonces // Reemplazar un caracter :'( Si i > 0 Entonces temporal <- concatenar(subcadena(linea,0,i-1),"-"); Sino temporal <- "-"; Si i<longitud(linea)-1 Entonces temporal <- Concatenar(temporal,Subcadena(linea,i+1,Longitud(linea)-1)); linea <- temporal; // Fin de Reemplazar un caracter :-P Escribir linea; FinProceso Alberto J. Suxo Riveros 6

9 Problema D: La Última Esperanza Autor: Alvaro Rojas Los Terrans están siendo atacados por los Protoss una raza de Humanoides que aparecen en la serie Star Craft. Los Terrans ya casi sin tropas y con poca estructuras solo tienen una esperanza para vencer en esta guerra contra los Protoss. Y esa esperanza es poder usar el arma más poderosa que tienen, la Bomba Nuclear. Entonces necesitan un soldado para poder marcar el blanco para el ataque nuclear a los Protoss, el cual es Ghost, un soldado capaz de volverse invisible y poder infiltrarse en la base de los Protoss. Ghost se dirige hacia la Base de los Protoss y logra infiltrarse en ella para poder marcar el blanco del ataque Nuclear. Ghost está indeciso para marcar el blanco para el ataque Nuclear así que los Terrans piden tu ayuda. Ghost te enviara coordenadas de cada estructura de la base Protoss. Así que él quiere saber el número de estructuras que serán destruidas dadas las coordenadas del blanco de la bomba nuclear y el radio de alcance de esta. Entrada La primera línea es un entero T (1 T 100) el número de casos de prueba. Seguidamente se te dará un entero N (1 N 100) el número de coordenadas x, y que te enviará Ghost. A continuación vendrán N líneas, cada una de 2 valores x, y (0 x, y 1000) donde cada una representa la coordenada de una estructura Protoss. La última línea tendrá 3 valores x, y, r. Donde x, y son las coordenadas del blanco del ataque nuclear y r (1 r 500) el radio de alcance de la bomba Nuclear. Salida Para cada caso de prueba imprimir el número de estructuras Potross destruidas por la bomba Nuclear (Una estructura será destruida si la coordenada de la estructura Protoss está en el radio de alcance de la Bomba Nuclear) Alberto J. Suxo Riveros 7

10 Ejemplo de entrada Ejemplo de salida El gráfico corresponde al primer caso de prueba, donde claramente podemos notar que el alcance del radio de la bomba nuclear llega a tocar el punto (1, 0) (Pues la distancia del punto de la estructura Protoss a la bomba es menor o igual al radio de alcance de la bomba), por lo tanto la Bomba destruye una estructura, en cambio la estructura que se encuentra en el punto (1, 1) no es alcanzada por la bomba Nuclear. Alberto J. Suxo Riveros 8

11 Solución // Olimpiada Boliviana De Informatica // Problema : Ultima Esperanza // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* SubProceso resultado <- distancia( P1x, P1y, P2x, P2y) Definir resultado Como Real; resultado <- RC( (P1x-P2x)^2 + (P1y-P2y)^2 ); FinSubProceso Proceso UltimaEsperanza Definir t, n, coords, X, Y Como Entero; Definir bombx, bomby, radio Como Entero; Definir i, total Como Entero; Dimension coords[1001,2]; // alamacenaremos todas las coordenadas en las columnas // correspondientes, X en la primera columna y Y en la segunda. X <- 0; Y <- 1; Leer t; Mientras t > 0 Hacer t <- t - 1; Leer n; Para i <- 0 Hasta n-1 Hacer Leer coords[i,x]; Leer coords[i,y]; // leer datos de la bomba Leer bombx, bomby, radio; total <- 0; Para i <- 0 Hasta n-1 Hacer Si distancia( coords[i,x], coords[i,y], bombx, bomby)<= radio Entonces total <- total + 1; Escribir total; FinMientras FinProceso Alberto J. Suxo Riveros 9

12 Problema E: Bolivia Word Autor: Alvaro Rojas La organización de la IOI BOLIVIA hizo hacer letras de tamaño grande, para poder ponerlas en varios lugares del evento. Mientras transportaban el paquete que almacenaba las letras este se rompió y dejo caer las letras, al caer las letras varias de estas se perdieron. Así que ellos no están seguros si con las letras restantes podrán armar las palabras que ellos querían. Por ejemplo si tenemos las letras O, I, L, I, B, V, A, Z, T y queremos armar la palabra BOLIVIA, notaremos claramente que es posible armarla. En cambio si tuviéramos las letras O, L, I, B, V, A, Z, T no será posible armar la palabra BOLIVIA pues no faltaría una letra (la letra I). Los organizadores piden tu ayuda. Ellos te darán las letras disponibles y quieren saber si es posible armar la palabra BOLIVIA. Entrada La primera línea contendrá un entero N (1 N 10) el número de casos de prueba. A continuación se te dará N líneas, cada una con una cadena (solo mayúsculas), donde cada carácter representa la letra disponible para armar la palabra BOLIVIA. Salida Para cada cadena que se te dio anteriormente, si es posible armar la palabra BOLIVIA imprimir ES POSIBLE, caso contrario NO ES POSIBLE '. Ejemplo de entrada 3 BOLIVIA BOOIILVA BOLVZATY Ejemplo de salida ES POSIBLE ES POSIBLE NO ES POSIBLE Alberto J. Suxo Riveros 10

13 Solución // Olimpiada Boliviana De Informatica // Problema : Bolivia Word // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso BoliviaWord Definir N, j, k Como entero; Definir linea Como caracter; Definir car Como caracter; Definir B, O, L, I, V, A como Entero; Leer N; Para k <- 1 Hasta N Con Paso 1 Hacer Leer linea; B <- 0; O <- 0; L <- 0; I <- 0; V <- 0; A <- 0; Para j <- 0 Hasta Longitud(linea)-1 Con paso 1 Hacer car <- Subcadena(linea,j,j); Si car="b" Entonces B <- B + 1; Sino Si car="o" Entonces O <- O + 1; sino Si car="l" Entonces L <- L + 1; Sino Si car="i" Entonces I <- I + 1; Sino Si car="v" Entonces V <- V + 1; Sino Si car="a" Entonces A <- A + 1; Si B<1 O<1 L<1 I<2 V<1 A<1 Entonces Escribir "NO ES POSIBLE"; Sino Escribir "ES POSIBLE"; FinProceso Alberto J. Suxo Riveros 11

14 Fase 3 - Departamental Problema A: Cena para Cinco Autor: Gabriel Rea En un popular show llamado Cena para cinco, cinco concursantes compiten preparando delicias culinarias. Todas las noches uno de ellos hace la cena los otros cuatro lo califican entre 1 y 5. La cantidad de puntos que un concursante obtiene es igual a la suma de puntos que obtuvo. El ganador del programa de televisión es por supuesto el que obtiene más puntos. Escribe un programa que determine al ganador y cuantos puntos obtuvo. Entrada La primera línea contendrá un entero N (1 N 10) el número de casos de prueba. Cada caso de prueba está dado en cinco líneas, cada una contiene 4 enteros, los puntos que cada concursante obtuvo. Los concursantes están numerados del 1 al 5 en el orden en que sus puntajes son dados. Se garantiza que la entrada genera una solución única. Salida La salida es una línea con el número del ganador y sus puntos separados por un espacio. Ejemplos de entrada Ejemplos de salida Alberto J. Suxo Riveros 12

15 Solución // Olimpiada Boliviana De Informatica // Problema : Cena para Cinco // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Cena Definir N, i, j, k, sum, puntos, ganador, x Como Entero; Leer N; Para k<-1 Hasta N Hacer puntos <- 0; ganador <- 0; Para i<-1 Hasta 5 Hacer sum <- 0; Para j<-1 Hasta 4 Hacer Leer x; sum <- sum + x; Si sum > puntos Entonces puntos <- sum; ganador <- i; Escribir ganador, " ", puntos; FinProceso Alberto J. Suxo Riveros 13

16 Problema B: Código USSD Autor: Jorge Terán La empresa telefónica está implementando los códigos USSD para comunicarse con los teléfonos celulares de sus clientes para los cual te ha contratado con la finalidad de que elabores un programa que determine si un código USSD es válido. Los códigos USSD consisten de un texto que contiene un caracter asterisco seguido de un número de tres caracteres numéricos, continúa un segundo asterisco, sigue una cantidad variable de caracteres numéricos y termina con un caracter numeral. Por Ejemplo: *109*123456#. Se consideran códigos validos los que cumplen esta especificación. Entrada La primera línea contiene el número de casos de prueba. Las líneas siguientes contienen un caso de prueba. Salida Por cada caso de prueba imprima la frase "bien" si la cadena de caracteres es un código USSD valido ó "mal" si es código USSD es invalido. Ejemplos de entrada 8 *109*1234# *1234*109# *109*109# *109*1234#2 *109* *109# *abc*1234# *109*ab34# Ejemplos de salida bien mal bien mal mal mal mal mal Alberto J. Suxo Riveros 14

17 Solución // Olimpiada Boliviana De Informatica // Problema : Código USSD // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* SubProceso resultado <- NoEsValido( car ) Definir resultado Como Logico; Si car="0" car="1" car="2" car="3" car="4" car="5" car="6" car="7" car="8" car="9" Entonces resultado <- falso; Sino resultado <- verdadero; FinSubProceso Proceso CodigoUSSD Definir casos, tam, i, j Como Entero; Definir cad, num Como Caracter; Definir sw Como Logico; Leer casos; Para i<-1 Hasta casos Hacer Leer cad; Si Subcadena(cad,0,0)<>"*" Entonces Escribir "mal"; Sino Si Subcadena(cad,4,4)<>"*" Entonces Escribir "mal"; Sino tam <- Longitud(cad); Si Subcadena(cad,tam-1, tam-1)<>"#" Entonces Escribir "mal"; Sino sw <- Verdadero; num <- Subcadena(cad,1,4); Escribir num; Para j<-0 Hasta 2 Hacer Si NoEsValido( Subcadena(num,j,j) ) Entonces sw <- falso; Si sw Entonces num <- Subcadena(cad,5,tam-1); Escribir num; Para j<-0 Hasta Longitud(num)-2 Hacer Si NoEsValido( subcadena(num,j,j) ) Entonces sw <- falso; Alberto J. Suxo Riveros 15

18 Si sw Entonces Escribir "bien"; Sino Escribir "mal"; FinProceso Alberto J. Suxo Riveros 16

19 Problema C: Sumando Fibonacci Autor: Jorge Terán La serie de Fibonacci es aquella que se forma por la expresión f(n) = f(n - 1) + f(n - 2). Los primeros números de la serie son 1, 1, 2, 3, 5, 8, 13, 21, Podemos representar cada número entero como una suma de números Fibonacci. Por ejemplo el número 33 puede expresarse como: 33 = 1 * * * * * * * 21 Tomando solamente los números binarios tendríamos Otros ejemplos son: Fib(33) = Fib(18) = Fib(6) = 1001 Entrada La entrada de datos consiste en una línea con la representación de un número como la suma de números Fibonacci. Termina cuando no hay más datos. Vea que cuando lea la línea de entrada leerá caracteres 1 y 0 que se representan como los ascii 48 y 49 respectivamente. Salida La salida consiste en el número entero representado por la representación leída. Se imprime un número en una línea por cada línea de entrada. Ejemplos de entrada Ejemplos de salida Alberto J. Suxo Riveros 17

20 Solución // Olimpiada Boliviana De Informatica // Problema : Sumando Fibonacci // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Fibo Definir linea Como Caracter; Definir tam, i, valor Como Entero; Definir vec Como Entero; Dimension vec[100]; Leer linea; tam <- Longitud( línea ); vec[0] <- 1; vec[1] <- 2; Para i<-2 Hasta tam Hacer vec[i] <- vec[i-1] + vec[i-2]; valor <- 0; Para i<-0 Hasta tam-1 Hacer Si Subcadena( linea, i, i )="1" Entonces valor <- valor + vec[i]; Escribir valor; FinProceso Alberto J. Suxo Riveros 18

21 Problema D: Leones Autor: Leticia Blanco En la selva se han mimetizado varios leones, grrrrr..., debemos pasar la selva... es necesario... pero no queremos morir... :S, - piensa Hugo; pero como debe guardar compostura y mantener la calma con sus hermanos Paco y Luis; no muestra su temor. Más al contrario ha decidido buscar cuántos leones hay mimetizados para saber el número de balas que debe cargar si es necesario tomar alguna medida de emergencia. Pero hay un problema y es que la selva de letras que deben atravesar puede ser muy tupida y complicada; por lo que ha decidido recordar sus dotes de programador y no ha tenido éxito. Por lo que ha solicitado que escribas un programa para encontrar el número de leones, dado que se tiene la selva de letras. Entrada La entrada consiste de un número entero n que indica la cantidad de casos, le siguen n líneas con cadenas de hasta 200 caracteres en mayúscula. Cada una de estas cadenas representa una selva de letras. Salida La salida es un número entero, que indica la cantidad de leones que hay en la selva. Ejemplos de entrada 2 SELVADELEJEMPLODONDESEENCUNETRANDOSLEONES LEONIDASUNGRANGUERRERODELAANTIGUAGRECIA Ejemplos de salida 2 1 Alberto J. Suxo Riveros 19

22 Solución // Olimpiada Boliviana De Informatica // Problema : Leones // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* SubProceso posi <- buscar (selva, letra, pos ) Definir posi Como Entero; Definir i Como Entero; posi <- -1; i <- pos ; Mientras i < Longitud(selva) & posi = -1 Hacer Si Subcadena(selva,i,i) = letra Entonces posi <- i; i <- i + 1; FinMientras FinSubProceso // retornará 'posi' SubProceso cant <- contarleon ( selva ) Definir cant Como Entero; Definir pos, i Como Entero; Definir leon, letra Como Caracter; leon <- "LEON"; i <- 0; pos <- 0; cant <- 0; Mientras pos <> -1 Hacer Si i < 4 Entonces letra <- Subcadena( leon, i, i ); pos <- buscar ( selva, letra, pos ); Si pos <> -1 Entonces pos <- pos + 1; i <- i + 1; Si i = 4 & pos <> -1 Entonces cant <- cant + 1; i <- 0; FinMientras FinSubProceso // retornará 'cant' Proceso Leones Definir n, i Como Entero; Definir selva Como Caracter; Leer n; Para i <- 1 Hasta n Hacer Leer selva; Escribir contarleon( selva ); FinProceso Alberto J. Suxo Riveros 20

23 Problema E: Número de la suerte Autor: Jorge Terán En la teoría de números, un número de la suerte es un número natural en un conjunto que se genera por una criba similar a la Criba de Eratóstenes que genera los números primos. Comenzando con una lista de números enteros a partir de 1: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, Se eliminan los números de dos en dos, todos los números pares; en esta primera iteración sólo quedan los números impares: 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, El segundo término de esta secuencia es 3. Entonces se eliminan todos los números de tres en tres: 1, 3, 7, 9, 13, 15, 19, 21, 25, El tercer número que ha quedado es 7, así que cada séptimo número que queda se elimina: 1, 3, 7, 9, 13, 15, 21, 25, Dado que este procedimiento se repite indefinidamente, los sobrevivientes son los números de la suerte: 1, 3, 7, 9, 13, 15, 21, 25, 31, 33, 37, 43, 49, 51, 63, 67, 69, 73, 75, 79, 87, 93, 99, La lista anterior es también la lista de números de la suerte menores a 100. Entrada No existe entrada como tal, el estudiante debe asumir que buscamos los números de la suerte menores a 200. Salida Imprima en una línea cuantos números de la suerte existen menores a 200. Por ejemplo, para 100 es 23. Alberto J. Suxo Riveros 21

24 Solución // Olimpiada Boliviana De Informatica // Problema : Número de la suerte // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* // Cuenta el número de elementos del vector 'numeros' SubProceso resultado <- tam ( numeros ) Definir resultado Como Entero; Definir i como entero; i <- 0; Mientras numeros[i] > 0 Hacer i <- i + 1; FinMientras resultado <- i; FinSubProceso // Quita el elemento i del vector 'numeros' SubProceso quitar( numeros, i ) Definir j Como Entero; j <- i; Mientras numeros[j]>0 hacer numeros[j]<-numeros[j+1]; j <- j + 1; FinMientras FinSubProceso Proceso Suerte Definir max, i, j, vil, c, a, it, numerostam Como Entero; Definir numeros Como Entero; Definir sw Como Logico; max <- 200; // <- buscamos en entre los primeros 200 Dimension numeros[201]; i <- 1; j <- 0; Mientras i <= max Hacer numeros[j] <- i; i <- i + 2; j <- j + 1; FinMientras sw <- Verdadero; numeros[j] <- 0; it <- 1; Mientras sw Hacer vil <- numeros[it]; it <- it + 1; numerostam <- tam( numeros ); c <- numerostam % vil; Alberto J. Suxo Riveros 22

25 a <- numerostam - c - 1; Si vil >= numerostam Entonces sw <- falso; Sino i <- a; Mientras i>1 Hacer quitar( numeros, I ); i <- i - vil; FinMientras FinMientras Escribir numerostam; FinProceso Alberto J. Suxo Riveros 23

26 Problema F: Aritmética Maya Autor: Jorge Terán Los Mayas tenían una forma de escribir números que les permitía hacer los cálculos. La notación de sus números era con puntos y rayas que las representaremos por guiones. Cada punto representa la unidad y una raya representa 5 unidades. Veamos: -.. representaría el número 7, esto es una raya cinco más dos puntos da siete. Cada vez que tenemos 5 unidades, o sea 5 puntos se cambian por una raya. El número más grande que se puede representar es el 20 que son cuatro rayas. Como ejemplo veamos el siguiente número Maya Cada una de las líneas representa un dígito Maya, por lo que las 4 líneas representan los dígitos 11, 2, 8, 15 que en notación decimal es El dígito 0 se representa con un cero en una sola línea. El digito menos significativo es el 15. Entrada La entrada contiene múltiples casos de entrada. La primera línea tiene el número de casos de prueba. Cada caso de prueba contiene 4 líneas. Cada línea contiene un número de cuatro dígitos en representación Maya. Salida Imprima en una línea el equivalente decimal del número Maya. Ejemplos de entrada Ejemplos de salida Alberto J. Suxo Riveros 24

27 Solución // Olimpiada Boliviana De Informatica // Problema : Aritmética Maya // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Maya Definir casos, c1, decimal, i, j, unos, cincos Como Entero; Definir maya Como Caracter; Leer casos; Para c1<-1 Hasta casos hacer decimal <- 0; Para i<-0 Hasta 3 hacer Leer maya; unos <- 0; cincos <- 0; Para j<-0 Hasta Longitud(maya)-1 Hacer Si Subcadena(maya,j,j)="-" Entonces cincos <- cincos + 1; Finsi Si Subcadena(maya,j,j)="." Entonces unos <- unos + 1; finsi finpara decimal <- decimal*20+(cincos*5+unos); finpara escribir decimal; finpara FinProceso Alberto J. Suxo Riveros 25

28 Problema G: Narcisos Autor: Leticia Blanco Como te imaginarás en el mundo de los números hay variedad de sociedades, una muy marcada es la comunidad de narcisistas. Estos ciudadanos son especiales y tienen niveles de alcurnia que están denotados por e, por ejemplo el 153 es un narcisista de nivel 3, ya que la suma de sus cifras elevadas al cubo suman el mismo número: 153 = En general un número narciso num que tiene la forma: d n d 3 d 2 d 1 d 0, se dice que es narcisista de nivel de alcurnia e, si se cumple que num = d n e + + d 3 e + d 2 e + d 1 e + d 0 e. En esta comunidad especial, es necesario identificar el nivel de alcurnia de algunos números si son narcisos. Para ello se cuenta con el número y sobre la base de esta información debes decidir cuál es el nivel de alcurnia del narciso. Se sabe que en esta comunidad ningún narciso tiene nivel de alcurnia menor a 2 ni mayor a 6. Por supuesto, hay números que quieren pasar por narcisos, en caso de no demostrar su alcurnia dentro los cañones de la comunidad, se debe emitir -1 como respuesta. Entrada La entrada consiste de un número entero c que indica la cantidad de casos. En las próximas c líneas están los números que quieren demostrar su nivel de narcisismo. Salida La salida por cada caso es el nivel de alcurnia del supuesto narciso. Ejemplos de entrada Ejemplos de salida Alberto J. Suxo Riveros 26

29 Solución // Olimpiada Boliviana De Informatica // Problema : Narcisos // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* SubProceso procesar( n ) Definir res, suma, copia, i Como Entero; Definir narciso Como Logico; narciso <- falso; i <- 2; Mientras i <= 6 & ~ narciso Hacer copia <- n; suma <- 0; mientras copia > 0 Hacer suma <- suma + (copia%10)^i; copia <- copia / 10; FinMientras narciso <- (suma=n); res <- i; i <- i + 1; FinMientras Si narciso Entonces Escribir res; Sino Escribir -1; FinSubProceso Proceso Narcisos Definir n, i, num Como Entero; Leer n; Para i<-1 Hasta n Hacer Leer num; procesar( num ); FinProceso Alberto J. Suxo Riveros 27

30 Fase 2 - Regional Problema A: Trinomios Triangulares Autor: Jorge Terán Consideremos la siguiente expresión: (1 + x + x 2 ) n Dado un valor de n se quiere conocer cuál es valor de los coeficientes de la expresión. Por ejemplo si n toma el valor de 1 los términos de la expresión son 1, 1, 1. Cuando n = 2 tenemos 1 + 2x + 3x 2 + 2x 3 + x 4 por lo que la respuesta es 1, 2, 3, 2, 1 Entrada La primera línea contiene un número que indica el número de casos de prueba. En una línea viene un caso de prueba que contiene el numero 0 n 40 exponente de la expresión. Salida Por cada caso de prueba su programa debe escribir en una línea y separados por un espacio los coeficientes del polinomio resultante. Ejemplos de entrada Ejemplos de salida Alberto J. Suxo Riveros 28

31 Solución // Olimpiada Boliviana De Informatica // Problema : Trinomios Triangulares // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Trinomiales // pre-calculamos todo // debemos llegar a la siguiente matriz: // // // // // 1... Definir Mat Como Entero; Definir i, j, k, sum Como Entero; Definir casos, n Como Entero; Dimension Mat[41,84]; Mat[0,0] <- 1; Mat[0,1] <- 0; Mat[0,2] <- 0; Para i<-1 hasta 40 hacer Para j<-0 Hasta i*2 Hacer sum <- 0; Para k<-(j-2) Hasta j Hacer Si k>=0 entonces sum <- sum + Mat[i-1,k]; Mat[i,j] <- sum; Mat[i,i*2+1] <- 0; Mat[i,i*2+2] <- 0; // Leemos los datos Leer casos; Mientras casos>0 Hacer Leer n; casos <- casos - 1; j <- 0; Mientras Mat[n,j]>0 Hacer Escribir Mat[n,j]; j <- j + 1; FinMientras FinMientras FinProceso Alberto J. Suxo Riveros 29

32 Problema B: Calculadora Inca Autor: Jorge Terán La Calculadora de los Incas denominada Yupana consiste de una base parecida a la base binaria. Los números se representan por varios unos y ceros que se dividen en 4 grupos como se muestra: Cada grupo representa a un número específico y corresponden a los números 5, 3, 2, 1. Cuando queremos representar un número simplemente colocamos en 1 en algunos de los 0 de las columnas. Por ejemplo para representar el numero 12 escogemos dos números de la columna de los cincos y uno de la columna del dos y escribimos: Un mismo número puede tener múltiples representaciones. La siguiente tabla muestra varias representaciones y su equivalente decimal = = = = = 6 Hay que hacer notar que hay varias interpretaciones diferentes de una Yupana y esta es una de ellas, no hay un consenso sobre el tema. Entrada La primera línea contiene un número que indica el número de casos de prueba. Cada caso de prueba contiene una línea con la representación en el formato de la Yupana que consiste en 11 números 1 o ceros. Salida Por cada caso de prueba su programa debe escribir en una línea y separados por un espacio la representación en formato decimal del número en formato de Yupana. Ejemplos de entrada Ejemplos de salida Alberto J. Suxo Riveros 30

33 Solución // Olimpiada Boliviana De Informatica // Problema : Calculadora Inca // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso CalculadoraInca Definir casos, i, total Como Entero; Definir cad Como Caracter; Leer casos; Para i<-1 Hasta casos Hacer total <- 0; Leer cad; Si Subcadena(cad, 0, 0) = "1" Entonces total <- total + 5; Si Subcadena(cad, 1, 1) = "1" Entonces total <- total + 5; Si Subcadena(cad, 2, 2) = "1" Entonces total <- total + 5; Si Subcadena(cad, 3, 3) = "1" Entonces total <- total + 5; Si Subcadena(cad, 4, 4) = "1" Entonces total <- total + 5; Si Subcadena(cad, 5, 5) = "1" Entonces total <- total + 3; Si Subcadena(cad, 6, 6) = "1" Entonces total <- total + 3; Si Subcadena(cad, 7, 7) = "1" Entonces total <- total + 3; Si Subcadena(cad, 8, 8) = "1" Entonces total <- total + 2; Si Subcadena(cad, 9, 9) = "1" Entonces total <- total + 2; Si Subcadena(cad, 10, 10) = "1" Entonces total <- total + 1; Escribir total; FinProceso Alberto J. Suxo Riveros 31

34 Problema C: Aritmética Autor: Hernan Payrumani En la clase de matemática el profesor a veces se siente cansado y para que el tiempo pase rápido da de tarea unas operaciones aritméticas. Las operaciones a veces son cortas como 10 dígitos de longitud, pero a veces son largas con 100 dígitos de longitud. Es estos días donde tu profesor esta aburrido tú también lo estas, por eso prefieres que tu computadora resuelva estos ejercicios de aritmética, por lo tanto primero debes escribir un programa que te devuelva los resultados de estas operaciones Entrada La Primera línea contiene el número de casos de entrada, cada caso de entrada contiene 3 líneas. La primera línea contiene un entero positivo x, el primer operando. La segunda línea contiene un caracter + o * representando la suma y la multiplicación. La tercera línea contiene un entero positivo y, el segundo operando. Los enteros x e y son potencias de 10 de hasta 10 dígitos. Salida El resultado de la operación entre x e y. Ejemplos de entrada * * 1000 Ejemplos de salida Alberto J. Suxo Riveros 32

35 Solución // Olimpiada Boliviana De Informatica // Problema : Aritmetica // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* SubProceso Multiplicar( A, B ) Definir tamb, i Como Entero; Definir resultado Como Caracter; resultado <- A; tamb <- Longitud( B ); i <- 1; Mientras i < tamb Hacer resultado <- Concatenar( resultado, "0" ); i <- i + 1 ; FinMientras Escribir resultado; FinSubProceso SubProceso Sumar( A, B ) Definir tama, tamb, max, i, sum Como Entero; Definir resultado Como Caracter; tama <- Longitud( A ); tamb <- Longitud( B ); Si tama > tamb Entonces max <- tama; Sino max <- tamb; tama <- tama - max; tamb <- tamb - max; resultado <- ""; Para i<-0 Hasta max-1 Hacer sum <- 0; Si tama>=0 & Subcadena(A,tamA,tamA)="1" Entonces sum <- sum + 1; Si tamb>=0 & Subcadena(B,tamB,tamB)="1" Entonces sum <- sum + 1; Segun sum Hacer 0: resultado <- Concatenar(resultado, "0" ); 1: resultado <- Concatenar(resultado, "1" ); 2: resultado <- Concatenar(resultado, "2" ); FinSegun tama <- tama + 1; tamb <- tamb + 1; Escribir resultado; FinSubProceso Alberto J. Suxo Riveros 33

36 Proceso Aritmerica Definir casos Como Entero; Definir i Como Entero; Definir A, B, op Como Caracter; Leer casos; Para i <- 1 Hasta casos Hacer Leer A, op, B; Si op= "+" Entonces Sumar ( A, B ); sino // entonces op = "*" Multiplicar ( A, B ); FinProceso Alberto J. Suxo Riveros 34

37 Problema D: Bender Autor: Hernan Payrumani El robot Bender es muy parecido a los humanos, en cuanto al sueño solo duerme bien cuando no tiene pesadillas. A diferencia de los humanos Bender sueña solo con dígitos binarios 0 y 1. Bender tiene pesadillas cuando sueña con dígitos distintos a 0 y 1. Por ejemplo si Bender sueña con el tendrá un dulce sueño. Pero si Bender sueña con Bender tendrá una pesadilla. Entrada La primera línea de entrada contiene el número de casos a ser evaluados. La primera línea de cada caso contiene c y f el número de columnas y filas de una matriz. Las siguientes líneas contienen f líneas con c dígitos entre 0 y 9. Salida Si la matriz solo contienen dígitos binarios 0, 1, imprime Dulce. Si la matriz contiene algún dígito que no es binario imprime Pesadilla Ejemplos de entrada Ejemplos de salida Dulce Pesadilla Alberto J. Suxo Riveros 35

38 Solución // Olimpiada Boliviana De Informatica // Problema : Bender // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Bender Definir n, m, i, j, casos, k Como Entero; Definir resultado, linea Como Caracter; Definir aux Como Caracter; Leer casos; Para k<-1 Hasta casos Hacer Leer n, m; resultado <- "Dulce"; Para i<-1 Hasta n Hacer Leer linea; Para j<-0 Hasta m-1 Hacer aux <- Subcadena(linea, j, j); Si aux<>"0" & aux<>"1" Entonces resultado <- "Pesadilla"; Escribir resultado; FinProceso Alberto J. Suxo Riveros 36

39 Problema E: Eratóstenes Autor: Hernan Payrumani La criba de Eratóstenes es un famoso algoritmo para buscar todos los números primos hasta N. El algoritmo es: 1. Escribir todos los números entre 2 y N inclusive. 2. Buscar el menor número no tachado y llamarlo P, donde P es primo. 3. Dejando fuera P, tachar todos los múltiplos que aún no estén tachados. 4. Si todos los números no han sido tachados ir al paso 2. Escribe un programa que dado un número N y K encuentre el K-esimo entero que será tachado. Entrada La primera línea indica el número de casos a ser evaluados. Cada caso consiste en dos enteros N y K (2 K < N 1000) Saluda Imprimir el K-esimo número a ser tachado. Ejemplos de entrada Ejemplos de salida En el tercer ejemplo, tachamos en el siguiente orden: 2, 4, 6, 8, 10, 3, 9, 5 y 7 el séptimo número es 9. Alberto J. Suxo Riveros 37

40 Solución // Olimpiada Boliviana De Informatica // Problema : Eratostenes // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Eratostenes Definir n, k, vec, cont, i, j, casos, k Como Entero; Dimension vec[500]; Leer casos; Para k<-1 Hasta casos Hacer Leer n; Leer k; cont <- 0; Para i<-2 Hasta n Hacer vec[i] <- 0; Para i<-2 Hasta n Hacer Si vec[i]=0 Entonces Para j<-i Hasta n Con Paso i Hacer Si vec[j] = 0 Entonces vec[j] <- 1; cont <- cont + 1; Si cont = k Entonces Escribir j; FinProceso Alberto J. Suxo Riveros 38

41 Problema F: Examen Autor: Hernan Payrumani Alvaro, Edwin y Gabriel darán un examen para ingresar a un instituto, este instituto tiene la peculiaridad de siempre realizar exámenes de selección múltiple. Desafortunadamente ellos no siempre tienen tiempo de estudiar pero quieren aprovechar que se les dará un examen de selección múltiple, ya que ellos tienen una teoría sobre estos. Alvaro dice que tendrá mejor nota utilizando la secuencia: A, B, C, A, B, C, A, B, C... Edwin está convencido de que la mejor secuencia: es B, A,B, C, B, A, B, C, B, A, B, C... Gabriel utilizara la secuencia: C, C, A, A, B, B, C, C, A, A, B, B... Tu tarea es determinar las respuestas correctas para el examen y así determinar quién de los tres tenía razón con su secuencia, la cual es la que contiene más respuestas correctas. Entrada La primera línea contiene un entero N (1 N 100), la cantidad de preguntas en el examen. La segunda línea contiene una cadena con N letras A, B, C Estas son en orden las respuestas correctas de las preguntas del examen. Salida En la primera línea imprime M, la cantidad máxima de respuestas correctas de uno de los tres. Después imprime los nombres de los chicos en orden alfabético de quienes tienen M respuestas correctas. Ejemplos de entrada 5 BAACC 9 AAAABBBBB Ejemplos de salida 3 Edwin 4 Alvaro Edwin Gabriel Alberto J. Suxo Riveros 39

42 Solución // Olimpiada Boliviana De Informatica // Problema : Examen // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Examen Definir len Como Entero; Definir linea, abc, babc, ccaabb Como Caracter; Definir ptsalvaro, ptsedwin, ptsgabriel Como Entero; Definir i, maximo Como Entero; Definir car Como Caracter; abc <- "ABC"; babc <- "BABC"; ccaabb <- "CCAABB"; Leer len; Leer linea; ptsalvaro <- 0; ptsedwin <- 0; ptsgabriel <- 0; Para i<-0 Hasta len-1 hacer car <- Subcadena( linea, i, i ); Si car = Subcadena( abc, i%3, i%3) Entonces ptsalvaro <- ptsalvaro + 1; Si car =Subcadena( babc, i%4, i%4) Entonces ptsedwin <- ptsedwin + 1; Si car = Subcadena( ccaabb, i%6, i%6 ) Entonces ptsgabriel <- ptsgabriel + 1; // encontrar el maximo maximo <- 0; Si ptsalvaro > maximo Entonces maximo <- ptsalvaro; Si ptsedwin > maximo Entonces maximo <- ptsedwin; Si ptsgabriel > maximo Entonces maximo <- ptsgabriel; // imprimir la respuesta Escribir maximo; Si ptsalvaro = maximo Entonces Escribir "Alvaro"; Si ptsedwin = maximo Entonces Alberto J. Suxo Riveros 40

43 Escribir "Edwin"; Si ptsgabriel = maximo Entonces Escribir "Gabriel"; FinProceso Alberto J. Suxo Riveros 41

44 Problema G: Lago Autor: Alvaro Rolas El lago Titicaca es el más alto y navegable del mundo, se encuentra a 3900 m sobre el nivel del mar. Este 2012 vinieron científicos reconocidos de Europa para poder hacer un análisis e investigaciones en el lago. La primera curiosidad que tienen es calcular el área (que es un polígono) del lago. Para tal propósito pudieron sacar las coordenadas x, y para poder calcular dicha área. Necesitan tu ayuda como participante IOI para poder calcular dicha área del lago. Se te darán coordenadas x y de manera ordenada y tú deberías retornar el área obtenida del lago. Entrada La entrada inicia con un entero N (Número de puntos x,y), seguidamente será listado N puntos xi, yi La entrada termina cuando N sea igual a 0. (3 n 50000), ( x, y 10000). Salida Retornar el área del polígono. Ejemplos de entrada Ejemplos de salida 0.50 Alberto J. Suxo Riveros 42

45 Solución // Olimpiada Boliviana De Informatica // Problema : Lago // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* // Debe saber que el area de un poligono irregular se calcula // de la siguiente forma, dados los puntos: // P_1 = (x_1, y_1) // P_2 = (x_2, y_2) //. // : // P_n = (x_n, y_n) // // el área se calcula mediante la fórmula determinante de Gauss // x_1 y_1 // x_1 y_1 // x_1 y_1 // Area = _1_.. // 2 : : // x_n y_n // x_1 y_1 Proceso Lago Definir n, sumas, i Como Entero; Definir X, Y Como Entero; Definir area Como Real; Dimension X[50001]; Dimension Y[50001]; Leer n; Mientras n>0 Hacer // Leer coordenadas Para i<-1 Hasta n Hacer Leer X[i]; // Leer un entero en la posicion i del vector X Leer Y[i]; // se copia la 1ra coordenada al final de los vectores X y Y X[n+1] <- X[1]; Y[n+1] <- Y[1]; // Se asume que los puntos estan ordenados // pro lo que no es necesario ordenarlos aqui sumas <- 0; Para i<-1 Hasta n Hacer sumas <- sumas + (X[i]*Y[i+1] - X[i+1]*Y[i] ); area <- sumas / 2.0; Escribir area; Leer n; // terminos cuando n=0 FinMientras FinProceso Alberto J. Suxo Riveros 43

46 Problema H: Química Autor: Hernan Payrumani Lucas está jugando otra vez en la clase de química. En vez de estar balanceando ecuaciones él está escribiendo secuencias codificadas en un papel. Lucas modifica cada palabra adicionando después de cada vocal la letra p y luego la misma vocal de nuevo. Por ejemplo, él tiene clase que llega a convertirse en clapasepe y la palabra juego llega a convertirse en jupuepegopo. El profesor mira el papel del Lucas con las palabras codificadas y desea saber que escribió. Escribe un programa que decodifique lo que escribió Lucas. Entrada En la primera línea se indica el número de casos que deberán ser evaluados. Cada una de las siguientes líneas es un caso de prueba que es una línea que contiene la sentencia codificada. La secuencia contiene solo letras minúsculas y espacios. Las palabras estarán separadas por un solo espacio y no habrá espacios de más al inicio o al final. La cantidad total de caracteres no sobrepasara los 100. Salida Imprime la sentencia decodificada en una sola línea. Ejemplos de entrada 2 zepelepenapa papapripikapa bapas jepe doposapadgapa opovapa kepemipijapa Ejemplos de salida zelena paprika bas je dosadga ova kemija Alberto J. Suxo Riveros 44

47 Solución // Olimpiada Boliviana De Informatica // Problema : Quimica // Autor : Alberto Suxo // Copyright: Team SIM // Lenguaje : Pseudocodigo PSeInt // ******************************* Proceso Quimica Definir linea, car, resultado Como Caracter; Definir i, tam, casos Como Entero; Leer casos; Mientras casos > 0 Hacer casos <- casos - 1; Leer linea; tam <- Longitud(linea); i <- 0; resultado <- ""; Mientras i < tam Hacer car <- Subcadena( linea, i, i ); resultado <- Concatenar( resultado, car ); i <- i + 1; Si car="a" car="e" car="i" car="o" car="u" Entonces i <- i + 2; FinMientras Escribir resultado; FinMientras FinProceso Alberto J. Suxo Riveros 45

48 Anexo Opciones del Lenguaje La ICPC- Bolivia ha visto por conveniente utiliza PSeInt como herramienta para programación y ejecución de diagramas de flujo. PSeInt puede ser encontrado en el siguiente enlace: Una instalada la Herramienta PSeInt, PSeInt le preguntará Cuál opción de lenguaje utilizará. El presente documento está desarrollado bajo la opción de lenguaje Estricto Alberto J. Suxo Riveros 46

49 PSeInt El presente anexo no pretende ser un manual de PSeInt, simplemente se listarán algunas de las opciones que ofrece PSeInt al estudiante. Nosotros lo utilizaremos ya que hace fácil al estudiante migrar del pseudocódigo a su respectivo lenguaje, además, PSeInt ofrece la posibilidad a futuro de exportar el Pseudocódigo a lenguaje C (esto está aún en fase experimental). Comentarios Los comentarios sin segmentos que no afectan el flujo del programan, inicial con // y son utilizados para adicionar aclaraciones del código que por sí mismas no son muy intuitivas. También se debe aclarar que los comentarios son segmentos de documentación aclaratoria que es considerada como una buena práctica. Ejemplo // Todo o que sigue a esos dos / s es un comentario // y jamás se ejecuta. Tipos de Datos PSeInt soporta 4 tipos de datos. Entero Acepta valores enteros Real Acepta valore decimales Logico Acepta solo valores lógicos (verdadero o falso) Caracter Acepta caracteres y cadenas. Para definir una o más variables usamos la siguiente sintaxis: Sintaxis Definir <variable1> [,<variable2>,...,<variablen>] Como <Tipo> Ejemplo: Definir linea Como Caracter; Ejemplo: Definir x, y como Real; Asignación Primero evalúa la expresión de la derecha y luego asigna el resultado a la variable de la izquierda. (Deben coincidir en tipo). Sintaxis: <variable> <- <expresión> ; Ejemplo: nombre <- "Juan Perez"; Ejemplo: contador <- contador + 1 ; Operaciones o instrucciones Representaremos las operaciones de forma simple y lo más claro posible. Ejemplos: resultado <- 12 * 4 ; costo <- (resultado * 2) + 7 ; hipotenusa <- raiz( a*a + b*b ) ; Alberto J. Suxo Riveros 47

50 Operadores La jerarquía de los operadores matemáticos es igual a la del algebra, y puede alterarse mediante el uso de paréntesis. Operador Significado Ejemplo Relacionales > < Mayor que Menor que 3 > 2 10 < 50 = Igual que 4 = 5 <= Menor o igual que 2 <= 2 >= Mayor i igual que var >= 0 <> Distinto que 0 <> 0 Lógicos & ~ Algebraicos + - * / ^ Conjunción ( y ) Disyunción ( o ) Negación ( no ) Suma Resta Multiplicación División Potencia (2<4) & (0=>1) // falso (2<4) (0=>1) // verdadero ~( 2 < 4 ) // falso Entrada de datos Podemos leer variables desde teclado. La entrada es secuencial y cada línea es almacenada en cada una de las variables respectivamente. Podemos definir más de una variable separándolas con comas. Sintaxis: Leer <variable1> [, <variable2>,,<variablen>] ; Ejemplo: Leer nombre; Ejemplo: Leer x, y, radio; Salida de datos Podemos escribir datos en la pantalla, estos datos son los resultados de las expresiones o los contenidos de las variables. También podemos tener uno o más parámetros separados por comas. Sintaxis: Escribir <expresion1> [,<expresion2>,,<expresionn>]; Ejemplo: Escribir "Ingrese un numero: "; Ejemplo: Escribir "Resultado: ", x*2 ; Condicionales Selectiva si Las instrucciones selectivas representan instrucciones que pueden o no ejecutarse, según el cumplimiento de su condición. Alberto J. Suxo Riveros 48

51 Sintaxis Si <condición> Entonces Instrucciones [Sino Instrucciones] La condición puede ser simple o compuesta, dando como único resultado una respuesta o verdadera o falsa. Ejemplo Si edad >= 18 Entonces Escribir "ya puede votar"; La instrucciones selectiva doble es opcional, solo se aplica cuando requerimos realiza otra tarea cuando no se cumple la condición. Ejemplo Si edad >= 18 Entonces Escribir "Ya puede votar" ; Sino Escribir "esperar una año más" ; Escribir "vuelva a intentar" ; Selectiva múltiple-casos Permite elegir entre dos o más posibles grupos de acciones. Evalúa el contenido de la variable y selecciona el camino a seguir. La variable debe ser de tipo numérico. Las opciones se delimitan por los dos puntos al final. Si un grupo de acciones se debe ejecutar en dos o más casos, los valores se pueden poner separados por comas en la misma línea. La opción final puede ser De otro modo, y se ejecuta si la variable no coincide con ninguna de las anteriores. Sintaxis Segun <variable> Hacer <valor1>[,<valor2>,,<valorn>]: <instrucción(es)>; [<valor>, <valor>:<instriccion(es)>;] [De Otro Modo: <Instrucción(es)>;] FinSegun Ejemplo: Leer A; Segun A Hacer 1: Escribir 1; 2,3,5,7: Escribir "es numero primo menor a 10"; De Otro Modo: Escribir "intente de nuevo"; FinSegun Estructuras iterativas (bucles) Mientras Como su nombre lo indica, se repite mientras la condiciones sea verdadera. En el bucle mientras las instrucciones del contenido pueden o no ser ejecutadas dependiendo de Alberto J. Suxo Riveros 49

52 la condiciones, (de ser inicialmente falsa jamás entrará dentro del bucle). Debe contener dentro alguna acción que pueda modificar la condición para salir. Sintaxis Mientras <condición> Hacer <instrucciones> FinMientras Ejemplo edad <-16 ; Mientras edad<18 Hacer Escribir edad; edad <- edad + 1 ; FinMientras Escribir "por fin puede votar con: ", edad, " años" ; Este programita dará como resultado: Por fin puede votar con: 18 años Hacer mientras La estructura Hacer Mientras no es soportada por PSeInt, pero estada definida en casi todos los lenguajes de programación. A diferencia del bucle mientras, en hacer mientras se tiene la seguridad que siempre se ejecutará por lo menos una vez el contenido del bucle, este contenido se ejecutará mientras la condición sea verdadera. Sintaxis: Hacer <instrucciones>; Mientras <condición>; Ejemplo ahorro <-10 ; Hacer ahorro <- ahorro + 10 ; Escribir "ya tengo Bs. ", ahorro, " de ahorro" ; Mientras ahorro<97 ; En este pequeño programita, seguiremos ahorrando hasta tener Bs.100 Bucle Repetir Algunos lenguajes de programación implementan el bucle repetir hasta que (ejemplo: Pascal), sin embargo, en lenguajes como C o Java simplemente no existe, pero se puede llegar a implementar negando la condición y utilizando la estructura Hacer Mientras. El contenido del bucle se ejecutará hasta que la condición sea verdadera (o, lo que es lo mismo con mientras, se ejecutará mientras la condición sea falsa). Sintaxis Repetir <instrucciones>; Hasta Que <condición>; Alberto J. Suxo Riveros 50

53 El equivalente con Hacer Mientras es: Hacer <Instrucciones>; Mientras ~ <condición> ; Ejemplo horastrabajadas <- 0 ; Repetir Escribir "Trabajando " ; horastrabajadas <- horastrabajadas + 1 ; Hasta Que horastrabajadas=8 ; Bucle Para Quizá la estructura de control más utilizada, la cual se utiliza cuando se desea iterar un número conocido de veces, empleando una variable como índice que se incremente (o decremente). Sintaxis Para <variable> <- <valor inicial> Hasta <valor final> [Con Paso <incremento/decremento>] Hacer <instrucciones>; El equivalente con mientras es: <variable> <- <valor inicial> Mientras <variable> <> <valor final> hacer <instrucciones>; <variable> <- <varialbe> + <incremento/decremento> ; FinMientras Con Paso es opcional, cuando no está definido el incremento será de 1: Ejemplo Para i <- 1 Hasta 12 Hacer Escribir "Número ", i ; Este ejemplo escribe los números: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 y 12. Ejemplo: Para j <- 10 Hasta 0 Con paso -2 Hacer Escribir j; ; En este ejemplo, los números resultantes serán: 10, 8, 6, 4, 2 y 0, en ese orden respectivamente. Arreglos Los arreglos son estructuras de datos unidimensionales (vectores) bidimensionales (matrices), etc de datos del mismo tipo. Alberto J. Suxo Riveros 51

54 Para cerrar arreglos primero debemos definir su tipo, y luego, definir su tamaño de la siguiente forma: Sintaxis: Definir <nombre de arreglo> Como <Tipo de Dato>; Dimension <nombre de arreglo>[<tamaño>[,<tamaño>, ]]; Para declararlos utilizaremos la palabra arreglo seguido de nombre de la variable y su tamaño. Ejemplo vector Definir i Como Entero; Definir datos Como Entero; Dimension datos[20]; datos[0] <- 0; datos[1] <- 1; Para i<-2 Hasta 19 Hacer datos[i] <- datos[i-1] + datos[i-2]; Escribir "El 20vo numero de Fivonacci es : ", datos[19]; Debemos tener claro que, cuando definimos un vector o matriz, siempre comenzará desde 0, es decir, si definimos un vector de 20 elementos, las posiciones de esos elementos serán: 0, 1, 2, 17, 18 y 19, sumando un total de 20 elementos. Ejemplo matriz Definir mat, fila, col Como Entero; Dimension mat[4,6]; Para fila<-0 Hasta 3 Hacer Para col<-0 Hasta 5 Hacer mat[fila][col] <- fila + col; En este ejemplo podemos ver que una matriz se define por lo general como un arreglo de dimensionado por filas x columnas, siendo el número total de elementos la multiplicación de estos datos, (en el ejemplo es 4x6=24). También podemos ver que los bucles pueden anidarse. Funciones En muchas ocasiones, el número de instrucciones es muy grande y muchas veces repetitiva, para lo cual, utilizamos las funciones para simplificar el programa. Las funciones pueden o no recibir parámetros de entrada, y, no siempre devolverá algún resultado. Sintaxis SubProceso [<var resultado> <-] <nombre función>[(<paramentos>)] [Definir <var resultado> Como <Tipo>; ] <instrucciones>; [<var resultado> <- <instrucción> ; ] FinSubProceso Alberto J. Suxo Riveros 52

55 Ejemplo: SubProceso prom <- Promedio ( arreglo, cantidad ) Definir i como Entero; Definir suma como Real; Definir prom como Real; suma <- 0; Para i<-0 Hasta cantidad-1 Hacer suma <- suma + arreglo[i]; prom <- suma/cantidad; FinSubProceso Proceso Principal Definir i,n como Entero; Definir acum,datos,prom como Reales; Dimension datos[100]; Escribir "Ingrese la cantidad de datos:"; Leer n; Para i<-0 Hasta n-1 Hacer Escribir "Ingrese el dato ",i+1,":"; Leer datos[i]; Escribir "El promedio es: ",Promedio(datos,n); FinProceso PSeInt nos provee de funciones predefinidas Funciones Matemáticas Función Significado RC(X) Raíz Cuadrada de X ABS(X) Valor Absoluto de X LN(X) Logaritmo Natural de X EXP(X) Función Exponencial de X SEN(X) Seno de X COS(X) Coseno de X ATAN(X) Arco tangente de X TRUNC(X) Parte entera de X REDON(X) Entero más cercano a X La función raíz cuadrada no debe recibir un argumento negativo. La función exponencial no debe recibir un argumento menor o igual a cero. Funciones para Cadenas Función Longitud(x) Mayusculas(x) Minusculas(x) Subcadena(x,inicio,fin) Concatenar(x,y) Significado Retorna la cantidad de caracteres de una cadena x. Convierte a mayúsculas la cadena x. Convierte a minúsculas la cadena x. Extrae una parte de la cadena x indicando desde cual hasta que letra. Une las cadenas x y y. Alberto J. Suxo Riveros 53

Divisibilidad y números primos

Divisibilidad y números primos Divisibilidad y números primos Divisibilidad En muchos problemas es necesario saber si el reparto de varios elementos en diferentes grupos se puede hacer equitativamente, es decir, si el número de elementos

Más detalles

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016!

!!!!!!!! !!!!! Práctica!4.! Programación!básica!en!C.! ! Grado!en!Ingeniería!!en!Electrónica!y!Automática!Industrial! ! Curso!2015H2016! INFORMÁTICA Práctica4. ProgramaciónbásicaenC. GradoenIngenieríaenElectrónicayAutomáticaIndustrial Curso2015H2016 v2.1(18.09.2015) A continuación figuran una serie de ejercicios propuestos, agrupados por

Más detalles

Introducción a la Computación TFA

Introducción a la Computación TFA Introducción a la Computación TFA Departamento de Informática Facultad de Ciencias Físico, Matemáticas y Naturales- UNSL Lenguaje de Diseño de Algoritmos Estructura de Control Condicional Simple y Múltiple

Más detalles

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)

Unidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.

Más detalles

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03.

INFORMÁTICA. Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial. Curso 2013-2014. v1.0 (05.03. INFORMÁTICA Práctica 5. Programación en C. Grado en Ingeniería en Electrónica y Automática Industrial Curso 2013-2014 v1.0 (05.03.14) A continuación figuran una serie de ejercicios propuestos, agrupados

Más detalles

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para.

Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para. ESTRUCTURAS DE REPETICIÓN OBJETIVOS Aprender a construir grandes y complejos problemas a través de la ejecución repetida de una secuencia de proposiciones llamados ciclos o estructuras repetitivas. Distinguir

Más detalles

Tema 2. Espacios Vectoriales. 2.1. Introducción

Tema 2. Espacios Vectoriales. 2.1. Introducción Tema 2 Espacios Vectoriales 2.1. Introducción Estamos habituados en diferentes cursos a trabajar con el concepto de vector. Concretamente sabemos que un vector es un segmento orientado caracterizado por

Más detalles

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014

Tecnologías en la Educación Matemática. Expresiones. Datos. Expresiones Aritméticas. Expresiones Aritméticas 19/08/2014 Tecnologías en la Educación Matemática [email protected] Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR 1 Datos Los algoritmos combinan datos con acciones. Los datos de entrada

Más detalles

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad

Más detalles

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.

TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse. TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.

Más detalles

Ejemplos de conversión de reales a enteros

Ejemplos de conversión de reales a enteros Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print

Más detalles

UNIDAD 1. LOS NÚMEROS ENTEROS.

UNIDAD 1. LOS NÚMEROS ENTEROS. UNIDAD 1. LOS NÚMEROS ENTEROS. Al final deberás haber aprendido... Interpretar y expresar números enteros. Representar números enteros en la recta numérica. Comparar y ordenar números enteros. Realizar

Más detalles

SISTEMAS NUMERICOS CAMILO ANDREY NEIRA IBAÑEZ UNINSANGIL INTRODUCTORIO A LA INGENIERIA LOGICA Y PROGRAMACION

SISTEMAS NUMERICOS CAMILO ANDREY NEIRA IBAÑEZ UNINSANGIL INTRODUCTORIO A LA INGENIERIA LOGICA Y PROGRAMACION SISTEMAS NUMERICOS CAMILO ANDREY NEIRA IBAÑEZ UNINSANGIL INTRODUCTORIO A LA INGENIERIA LOGICA Y PROGRAMACION CHIQUINQUIRA (BOYACA) 2015 1 CONTENIDO Pág. QUE ES UN SISTEMA BINARIO. 3 CORTA HISTORIA DE LOS

Más detalles

Matemática de redes Representación binaria de datos Bits y bytes

Matemática de redes Representación binaria de datos Bits y bytes Matemática de redes Representación binaria de datos Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo pueden entender

Más detalles

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL

Transformación de binario a decimal. Transformación de decimal a binario. ELECTRÓNICA DIGITAL ELECTRÓNICA DIGITAL La electrónica es la rama de la ciencia que se ocupa del estudio de los circuitos y de sus componentes, que permiten modificar la corriente eléctrica amplificándola, atenuándola, rectificándola

Más detalles

Sistemas de numeración

Sistemas de numeración Sistemas de numeración Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan

Más detalles

Curso PHP Módulo 1 R-Luis

Curso PHP Módulo 1 R-Luis Lenguaje PHP Introducción Archivos HTML y PHP: Crear un archivo php es tan sencillo como cambiarle la extensión a un archivo html, por ejemplo podemos pasar de index.html a index.php sin ningún inconveniente.

Más detalles

UNIDAD 2 Configuración y operación de un sistema de cómputo Representación de datos Conceptos El concepto de bit (abreviatura de binary digit) es fundamental para el almacenamiento de datos Puede representarse

Más detalles

UNIDADES DE ALMACENAMIENTO DE DATOS

UNIDADES DE ALMACENAMIENTO DE DATOS 1.2 MATÉMATICAS DE REDES 1.2.1 REPRESENTACIÓN BINARIA DE DATOS Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS. Los computadores sólo

Más detalles

El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica.

El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica. 5.2 SISTEMAS DE NUMERACIÓN. DECIMAL El sistema decimal, es aquél en el que se combinan 10 cifras (o dígitos) del 0 al 9 para indicar una cantidad específica. La base de un sistema indica el número de caracteres

Más detalles

1º) Siempre que se pueda, hay que sacar factor común: :a b ± a c ± a d ± = a (b ± c ± d ± ):

1º) Siempre que se pueda, hay que sacar factor común: :a b ± a c ± a d ± = a (b ± c ± d ± ): Pág. 1 de 7 FAC T O R I Z AC I Ó N D E P O L I N O M I O S Factorizar (o descomponer en factores) un polinomio consiste en sustituirlo por un producto indicado de otros de menor grado tales que si se multiplicasen

Más detalles

Estructuras de datos: Proyecto 2

Estructuras de datos: Proyecto 2 Estructuras de datos: Proyecto 2 28 de mayo de 2013 Instrucciones Enviar las soluciones por email a los ayudantes, con copia a la profesora. Plazo de entrega: 16 de junio (durante todo el día). Se debe

Más detalles

Lección 1-Introducción a los Polinomios y Suma y Resta de Polinomios. Dra. Noemí L. Ruiz Limardo 2009

Lección 1-Introducción a los Polinomios y Suma y Resta de Polinomios. Dra. Noemí L. Ruiz Limardo 2009 Lección 1-Introducción a los Polinomios y Suma y Resta de Polinomios Dra. Noemí L. Ruiz Limardo 2009 Objetivos de la Lección Al finalizar esta lección los estudiantes: Identificarán, de una lista de expresiones

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema decimal

SISTEMAS DE NUMERACIÓN. Sistema decimal SISTEMAS DE NUMERACIÓN Sistema decimal Desde antiguo el Hombre ha ideado sistemas para numerar objetos, algunos sistemas primitivos han llegado hasta nuestros días, tal es el caso de los "números romanos",

Más detalles

Capítulo 4 Procesos con estructuras de repetición

Capítulo 4 Procesos con estructuras de repetición Estructura de contador Capítulo 4 Procesos con estructuras de repetición Esta es una operación que incrementa en una unidad el valor almacenado en la variable c, cada vez que el flujo del diagrama pasa

Más detalles

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO)

EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) Luis José Sánchez 1. Realiza un programa que sume los 100 números siguientes a un número entero y positivo introducido por teclado. Se debe

Más detalles

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda:

Apuntes de ACCESS. Apuntes de Access. Campos de Búsqueda: Apuntes de ACCESS Campos de Búsqueda: Los campos de búsqueda permiten seleccionar el valor de un campo de una lista desplegable en lugar de tener que escribirlos. El usuario sólo tiene que elegir un valor

Más detalles

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Accediendo a los contenidos Plataforma Moodle Accediendo a los contenidos Formatos ----------------------------------------------------------------------- 2 Glosarios -----------------------------------------------------------------------

Más detalles

Ecuaciones de primer grado con dos incógnitas

Ecuaciones de primer grado con dos incógnitas Ecuaciones de primer grado con dos incógnitas Si decimos: "las edades de mis padres suman 120 años", podemos expresar esta frase algebraicamente de la siguiente forma: Entonces, Denominamos x a la edad

Más detalles

PRACTICA 6. VECTORES Y MATRICES.

PRACTICA 6. VECTORES Y MATRICES. PRACTICA 6. VECTORES Y MATRICES. 1. Introducción. Los vectores y matrices son uno de los medios principales para el almacenamiento de los datos en un programa. En esta práctica veremos todos los conceptos

Más detalles

ESTRUCTURA DE DATOS: ARREGLOS

ESTRUCTURA DE DATOS: ARREGLOS ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción

Más detalles

PRÁCTICA 1: INTRODUCCIÓN A LA ALGORÍTMICA BOLETIN DE PROBLEMAS RESUELTOS. (Curso 03-04)

PRÁCTICA 1: INTRODUCCIÓN A LA ALGORÍTMICA BOLETIN DE PROBLEMAS RESUELTOS. (Curso 03-04) PRÁCTICA 1: INTRODUCCIÓN A LA ALGORÍTMICA BOLETIN DE PROBLEMAS RESUELTOS. (Curso 03-04) EJERCICIOS DE ESTRUCTURAS ALTERNATIVAS : 1.- Haga el algoritmo en pseudo código que, dada una variable cuyo valor

Más detalles

UNIDAD Nº 1: 1. SISTEMAS DE NUMERACION. Formalizado este concepto, se dirá que un número X viene representado por una cadena de dígitos:

UNIDAD Nº 1: 1. SISTEMAS DE NUMERACION. Formalizado este concepto, se dirá que un número X viene representado por una cadena de dígitos: UNIDAD Nº 1: TECNICATURA EN INFORMATICA UNLAR - CHEPES 1.1. INTRODUCCION 1. SISTEMAS DE NUMERACION El mundo del computador es un mundo binario. Por el contrario, el mundo de la información, manejada por

Más detalles

Materia: Informática. Nota de Clases Sistemas de Numeración

Materia: Informática. Nota de Clases Sistemas de Numeración Nota de Clases Sistemas de Numeración Conversión Entre Sistemas de Numeración 1. EL SISTEMA DE NUMERACIÓN 1.1. DEFINICIÓN DE UN SISTEMA DE NUMERACIÓN Un sistema de numeración es un conjunto finito de símbolos

Más detalles

❷ Aritmética Binaria Entera

❷ Aritmética Binaria Entera ❷ Una de las principales aplicaciones de la electrónica digital es el diseño de dispositivos capaces de efectuar cálculos aritméticos, ya sea como principal objetivo (calculadoras, computadoras, máquinas

Más detalles

Programación en lenguaje C++

Programación en lenguaje C++ Programación en Lenguaje C++ Objetivos Unidad Tema Subtema Objetivos VI 6.1 Metodología de la programación Metodologías Diseños de algoritmos Creación de algoritmos Entender y aplicar los pasos a seguir

Más detalles

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte)

Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA (primera parte) Unidad de trabajo 2: INFORMÁTICA BÁSICA... 1 1. Representación interna de datos.... 1 1.2. Sistemas de numeración.... 2 1.3. Aritmética binaria...

Más detalles

EXPRESIONES ALGEBRAICAS. POLINOMIOS

EXPRESIONES ALGEBRAICAS. POLINOMIOS EXPRESIONES ALGEBRAICAS. POLINOMIOS 1. EXPRESIONES ALGEBRAICAS. Estas expresiones del área son expresiones algebraicas, ya que además de números aparecen letras. Son también expresiones algebraicas: bac,

Más detalles

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO 1º) Considérese un número estrictamente positivo del sistema de números máquina F(s+1, m, M, 10). Supongamos que tal número es: z = 0.d 1 d...d s 10 e Responde

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97 SISTEMAS DE NUMERACIÓN Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. La norma principal en un sistema de numeración posicional es que un mismo símbolo

Más detalles

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO I. SISTEMAS NUMÉRICOS DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO LIC. LEYDY ROXANA ZEPEDA RUIZ SEPTIEMBRE DICIEMBRE 2011 Ocosingo, Chis. 1.1Sistemas numéricos. Los números son los mismos en todos

Más detalles

MATERIAL 2 EXCEL 2007

MATERIAL 2 EXCEL 2007 INTRODUCCIÓN A EXCEL 2007 MATERIAL 2 EXCEL 2007 Excel 2007 es una planilla de cálculo, un programa que permite manejar datos de diferente tipo, realizar cálculos, hacer gráficos y tablas; una herramienta

Más detalles

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases. BASES Y DIMENSIÓN Definición: Base. Se llama base de un espacio (o subespacio) vectorial a un sistema generador de dicho espacio o subespacio, que sea a la vez linealmente independiente. β Propiedades

Más detalles

Estructuras de Datos y Algoritmos Práctica I - Curso 2012/13

Estructuras de Datos y Algoritmos Práctica I - Curso 2012/13 Estructuras de Datos y Algoritmos Práctica I - Curso 2012/13 Rompiendo el Código Enigma Introducción y objetivos Como un pequeño homenaje a Alan Turing en su año conmemorativo, las prácticas de este curso

Más detalles

Tutorial Básico de vbscript

Tutorial Básico de vbscript Tutorial Básico de vbscript Bueno, primero aclarar que este tutorial, pretende explicar de manera básica las distintas instrucciones aplicadas en visual basic script (vbs de aquí en más), para que así

Más detalles

2 Potencias y radicales

2 Potencias y radicales 89 _ 09-008.qxd //08 09: Página Potencias y radicales INTRODUCCIÓN Los alumnos ya han trabajado con potencias de exponente positivo y han efectuado multiplicaciones y divisiones de potencias y potencias

Más detalles

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta

Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Conciliación bancaria en CheqPAQ Cargado de estado de cuenta Introducción Con la finalidad de mantenerte informado respecto a todos los cambios y mejoras de los productos de CONTPAQ i, ponemos a tu disposición

Más detalles

TEMA 2: Representación de la Información en las computadoras

TEMA 2: Representación de la Información en las computadoras TEMA 2: Representación de la Información en las computadoras Introducción Una computadora es una máquina que procesa información y ejecuta programas. Para que la computadora ejecute un programa, es necesario

Más detalles

UNIDAD 6. POLINOMIOS CON COEFICIENTES ENTEROS

UNIDAD 6. POLINOMIOS CON COEFICIENTES ENTEROS UNIDAD 6. POLINOMIOS CON COEFICIENTES ENTEROS Unidad 6: Polinomios con coeficientes enteros. Al final deberás haber aprendido... Expresar algebraicamente enunciados sencillos. Extraer enunciados razonables

Más detalles

Modulo 1 El lenguaje Java

Modulo 1 El lenguaje Java Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto

Más detalles

Informática I Notas del curso

Informática I Notas del curso EXCEL Objetivo: Identificar la funcionalidad general de Excel, sus herramientas y recursos Excel Objetivo Particular: Conocer los métodos básicos de trabajo de Excel, para el manejo de registros, datos

Más detalles

Unidad Didáctica. Códigos Binarios

Unidad Didáctica. Códigos Binarios Unidad Didáctica Códigos Binarios Programa de Formación Abierta y Flexible Obra colectiva de FONDO FORMACION Coordinación Diseño y maquetación Servicio de Producción Didáctica de FONDO FORMACION (Dirección

Más detalles

TEMA: ECUACIONES CON NÚMEROS NATURALES ECUACIONES DE PRIMER GRADO CON UNA INCÓGNITA.

TEMA: ECUACIONES CON NÚMEROS NATURALES ECUACIONES DE PRIMER GRADO CON UNA INCÓGNITA. TEMA: ECUACIONES CON NÚMEROS NATURALES INTRODUCCIÓN: Las ecuaciones sirven, básicamente, para resolver problemas ya sean matemáticos, de la vida diaria o de cualquier ámbito- y, en ese caso, se dice que

Más detalles

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L.

Programa diseñado y creado por 2014 - Art-Tronic Promotora Audiovisual, S.L. Manual de Usuario Programa diseñado y creado por Contenido 1. Acceso al programa... 3 2. Opciones del programa... 3 3. Inicio... 4 4. Empresa... 4 4.2. Impuestos... 5 4.3. Series de facturación... 5 4.4.

Más detalles

TALLER #5 ACCESS CONSULTAS. objeto Consulta en la vista lateral izquierda de la ventana Base de datos. Aparece esta ventana.

TALLER #5 ACCESS CONSULTAS. objeto Consulta en la vista lateral izquierda de la ventana Base de datos. Aparece esta ventana. TALLER #5 ACCESS CONSULTAS Las consultas son los objetos de una base de datos que permiten recuperar datos de una tabla, modificarlos e incluso almacenar el resultado en otra tabla. TIPOS DE CONSULTAS

Más detalles

Cifras significativas e incertidumbre en las mediciones

Cifras significativas e incertidumbre en las mediciones Unidades de medición Cifras significativas e incertidumbre en las mediciones Todas las mediciones constan de una unidad que nos indica lo que fue medido y un número que indica cuántas de esas unidades

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

Módulo 9 Sistema matemático y operaciones binarias

Módulo 9 Sistema matemático y operaciones binarias Módulo 9 Sistema matemático y operaciones binarias OBJETIVO: Identificar los conjuntos de números naturales, enteros, racionales e irracionales; resolver una operación binaria, representar un número racional

Más detalles

1.4.- D E S I G U A L D A D E S

1.4.- D E S I G U A L D A D E S 1.4.- D E S I G U A L D A D E S OBJETIVO: Que el alumno conozca y maneje las reglas empleadas en la resolución de desigualdades y las use para determinar el conjunto solución de una desigualdad dada y

Más detalles

ETS Caminos Santander. Curso 2012. Ejercicios de introducción a la programación.

ETS Caminos Santander. Curso 2012. Ejercicios de introducción a la programación. Ejercicio 1. Saludo. El programa preguntará el nombre al usuario y a continuación le saludará de la siguiente forma "Hola, NOMBRE" donde NOMBRE es el nombre del usuario. Ejercicio 2. Suma. El programa

Más detalles

EJERCICIOS SOBRE : DIVISIBILIDAD

EJERCICIOS SOBRE : DIVISIBILIDAD 1.- Múltiplo de un número. Un número es múltiplo de otro cuando lo contiene un número exacto de veces. De otra forma sería: un número es múltiplo de otro cuando la división del primero entre el segundo

Más detalles

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO

INSTITUTO DE EDUCACIÓN SUPERIOR TECNOLÓGICO PÚBLICO A. Entorno de desarrollo Windows Forms 1. Diseñar el siguiente formulario: Formulario Trámite Tab Datos del Trámite Taller Ejercicios I Docente: Juan Carlos Arcila Díaz Computación e Informática IV-2013

Más detalles

Creación de Funciones de Conducción

Creación de Funciones de Conducción Creación de Funciones de Conducción Requerimientos Para el desarrollo de esta actividad se requiere que: Contemos con un robot BoeBot armado con placa Arduino. Repetición En estos momentos habremos notado

Más detalles

ARREGLOS DEFINICION GENERAL DE ARREGLO

ARREGLOS DEFINICION GENERAL DE ARREGLO ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un

Más detalles

Charla No 3: Fórmulas de mayor uso.

Charla No 3: Fórmulas de mayor uso. 1 Charla No 3: Fórmulas de mayor uso. Objetivos generales: Explicar el uso de las funciones de mayor uso en MS-Excel Objetivos específicos: Autosuma. Asistente de fórmulas. Max y Min. Buscarv Contar Si

Más detalles

Base de datos en Excel

Base de datos en Excel Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de

Más detalles

Qué son los monomios?

Qué son los monomios? Qué son los monomios? Recordemos qué es una expresión algebraica. Definición Una expresión algebraica es aquella en la que se utilizan letras, números y signos de operaciones. Si se observan las siguientes

Más detalles

Comenzando con MATLAB

Comenzando con MATLAB ÁLGEBRA LINEAL INGENIERÍA INFORMÁTICA Curso 08/09 PRÁCTICA 1 Comenzando con MATLAB 1 Funcionamiento de Matlab MATLAB es un sistema interactivo basado en matrices para cálculos científicos y de ingeniería.

Más detalles

MANUAL DE USUARIO SISTEMA DE FACTURACION ELECTRÓNICA

MANUAL DE USUARIO SISTEMA DE FACTURACION ELECTRÓNICA Manual de Usuario CONSULTORES INFORMATICOS EN TI Sistema de Facturación Electrónica por Internet A manera de facilitar la operación de nuestros clientes, en CIATI nos hemos dado a la tarea de desarrollar

Más detalles

Academia técnica de computación A.T.C.

Academia técnica de computación A.T.C. Academia técnica de computación A.T.C. Free Pascal (FPC) El Free Pascal es un compilador Pascal portable, libre y de código abierto, que representa una alternativa a los productos comerciales Turbo Pascal

Más detalles

Tema 7: Programación con Matlab

Tema 7: Programación con Matlab Tema 7: Programación con Matlab 1. Introducción Matlab puede utilizarse como un lenguaje de programación que incluye todos los elementos necesarios. Añade la gran ventaja de poder incorporar a los programas

Más detalles

Roberto Quejido Cañamero

Roberto Quejido Cañamero Crear un documento de texto con todas las preguntas y respuestas del tema. Tiene que aparecer en él todos los contenidos del tema. 1. Explica qué son los modos de presentación en Writer, cuáles hay y cómo

Más detalles

Un juego de cartas: Las siete y media

Un juego de cartas: Las siete y media Un juego de cartas: Las siete y media Paula Lagares Federico Perea Justo Puerto * MaMaEuSch ** Management Mathematics for European Schools 94342 - CP - 1-2001 - DE - COMENIUS - C21 * Universidad de Sevilla

Más detalles

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL OBJETIVO Mejorar el nivel de comprensión y el manejo de las destrezas del estudiante para utilizar formulas en Microsoft Excel 2010. 1) DEFINICIÓN Una fórmula de Excel es un código especial que introducimos

Más detalles

MANUAL DE AYUDA MODULO TALLAS Y COLORES

MANUAL DE AYUDA MODULO TALLAS Y COLORES MANUAL DE AYUDA MODULO TALLAS Y COLORES Fecha última revisión: Enero 2010 Índice TALLAS Y COLORES... 3 1. Introducción... 3 CONFIGURACIÓN PARÁMETROS TC (Tallas y Colores)... 3 2. Módulos Visibles... 3

Más detalles

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto INFORMÁTICA INFORMÁTICA 1 Sesión No. 4 Nombre: Procesador de Texto Contextualización La semana anterior revisamos los comandos que ofrece Word para el formato del texto, la configuración de la página,

Más detalles

1. SISTEMAS DIGITALES

1. SISTEMAS DIGITALES 1. SISTEMAS DIGITALES DOCENTE: ING. LUIS FELIPE CASTELLANOS CASTELLANOS CORREO ELECTRÓNICO: [email protected] [email protected] PAGINA WEB MAESTROFELIPE.JIMDO.COM 1.1. INTRODUCCIÓN

Más detalles

Lección 9: Polinomios

Lección 9: Polinomios LECCIÓN 9 c) (8 + ) j) [ 9.56 ( 9.56)] 8 q) (a x b) d) ( 5) 4 k) (6z) r) [k 0 (k 5 k )] e) (. 0.) l) (y z) s) (v u ) 4 f) ( 5) + ( 4) m) (c d) 7 t) (p + q) g) (0 x 0.) n) (g 7 g ) Lección 9: Polinomios

Más detalles

Que es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos.

Que es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos. Que es PHP? Que se puede hacer con PHP? Sintaxis del lenguaje. Variables. Operadores básicos. Condicionales. Ciclos. Qué es PHP? PHP (Hypertext Preprocessor). Es un lenguaje de programación: De código

Más detalles

Ecuaciones de segundo grado

Ecuaciones de segundo grado 3 Ecuaciones de segundo grado Objetivos En esta quincena aprenderás a: Identificar las soluciones de una ecuación. Reconocer y obtener ecuaciones equivalentes. Resolver ecuaciones de primer grado Resolver

Más detalles

Estructura de datos y de la información Boletín de problemas - Tema 7

Estructura de datos y de la información Boletín de problemas - Tema 7 Estructura de datos y de la información Boletín de problemas - Tema 7 1. Un concesionario de coches tiene un número limitado de M modelos, todos en un número limitado de C colores distintos. Cuando un

Más detalles

Nota 2. Luis Sierra. Marzo del 2010

Nota 2. Luis Sierra. Marzo del 2010 Nota 2 Luis Sierra Marzo del 2010 Cada mecanismo de definición de conjuntos que hemos comentado sugiere mecanismos para definir funciones y probar propiedades. Recordemos brevemente qué son las funciones

Más detalles

Los sistemas de numeración se clasifican en: posicionales y no posicionales.

Los sistemas de numeración se clasifican en: posicionales y no posicionales. SISTEMAS NUMERICOS Un sistema numérico es un conjunto de números que se relacionan para expresar la relación existente entre la cantidad y la unidad. Debido a que un número es un símbolo, podemos encontrar

Más detalles

Quadice REGLAS DEL JUEGO

Quadice REGLAS DEL JUEGO Quadice REGLAS DEL JUEGO PARA COMENZAR EL JUEGO Acción Cada jugador tira los dados y suma los números. El estudiante que obtenga el número mayor es #; el jugador con el segundo número más alto es el número

Más detalles

Estructuras de Control - Diagrama de Flujo

Estructuras de Control - Diagrama de Flujo RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS Ingeniería en Computación Ingeniería en Informática UNIVERSIDAD NACIONAL DE SAN LUIS DEPARTAMENTO DE INFORMÁTICA AÑO 2015 Índice 1. Programación estructurada 2 1.1.

Más detalles

Sistema binario. Representación

Sistema binario. Representación Sistema binario El sistema binario, en matemáticas e informática, es un sistema de numeración en el que los números se representan utilizando solamente las cifras cero y uno ( y ). Es el que se utiliza

Más detalles

La ventana de Microsoft Excel

La ventana de Microsoft Excel Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft

Más detalles

Profr. Efraín Soto Apolinar. La función lineal. y = a 0 + a 1 x. y = m x + b

Profr. Efraín Soto Apolinar. La función lineal. y = a 0 + a 1 x. y = m x + b La función lineal Una función polinomial de grado uno tiene la forma: y = a 0 + a 1 x El semestre pasado estudiamos la ecuación de la recta. y = m x + b En la notación de funciones polinomiales, el coeficiente

Más detalles

Unidad 1 Sistemas de numeración Binario, Decimal, Hexadecimal

Unidad 1 Sistemas de numeración Binario, Decimal, Hexadecimal Unidad 1 Sistemas de numeración Binario, Decimal, Hexadecimal Artículo adaptado del artículo de Wikipedia Sistema Binario en su versión del 20 de marzo de 2014, por varios autores bajo la Licencia de Documentación

Más detalles

Tema 2 : Códigos Binarios

Tema 2 : Códigos Binarios Tema 2 : Códigos Binarios Objetivo: Conocer diferentes códigos binarios Conocer algunos códigos de detección y corrección de errores. Códigos alfanuméricos 1 Códigos Binarios A la representación de cifras,

Más detalles

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011

Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 Módulo 2. Fundamentos de Programación Informática y Programación Escuela de Ingenierías Industriales y Civiles Curso 2010/2011 1 CONTENIDO Tema 1. Conceptos generales de algorítmica Tema 2. Sentencias

Más detalles

INTRODUCCION A LA PROGRAMACION DE PLC

INTRODUCCION A LA PROGRAMACION DE PLC INTRODUCCION A LA PROGRAMACION DE PLC Esta guía se utilizará para estudiar la estructura general de programación de um PLC Instrucciones y Programas Una instrucción u orden de trabajo consta de dos partes

Más detalles

Sobre la lectura y escritura de datos en FORTRAN.

Sobre la lectura y escritura de datos en FORTRAN. Sobre la lectura y escritura de datos en FORTRAN. 1. Las sentencias READ /WRITE Uno de los elementos básicos de la programación e cualquier lenguaje es la lectura y/o escritura de datos. En el lenguaje

Más detalles

Múltiplos y divisores

Múltiplos y divisores 2 Múltiplos y divisores Objetivos En esta quincena aprenderás a: Saber si un número es múltiplo de otro. Reconocer las divisiones exactas. Hallar todos los divisores de un número. Reconocer los números

Más detalles

Operación de Microsoft Word

Operación de Microsoft Word Generalidades y conceptos Combinar correspondencia Word, a través de la herramienta combinar correspondencia, permite combinar un documento el que puede ser una carta con el texto que se pretende hacer

Más detalles

Matrices equivalentes. El método de Gauss

Matrices equivalentes. El método de Gauss Matrices equivalentes. El método de Gauss Dada una matriz A cualquiera decimos que B es equivalente a A si podemos transformar A en B mediante una combinación de las siguientes operaciones: Multiplicar

Más detalles

Propuesta para la enseñanza de una clase de regularidades. Jóvenes: Liceo Mario Bahamondes Silva; Primer año medio G

Propuesta para la enseñanza de una clase de regularidades. Jóvenes: Liceo Mario Bahamondes Silva; Primer año medio G Propuesta para la enseñanza de una clase de regularidades Jóvenes: Liceo Mario Bahamondes Silva; Primer año medio G Profesor en práctica: Nicanor Sánchez Trujillo Tema estudio de Poder realizar una clase

Más detalles

ZCARTAS: Iniciación a la suma y resta de números enteros... 4. Introducción... 4. Actividad 1: Escenario con cartas numeradas desde -2 hasta 2...

ZCARTAS: Iniciación a la suma y resta de números enteros... 4. Introducción... 4. Actividad 1: Escenario con cartas numeradas desde -2 hasta 2... CONTENIDO ZCARTAS: Iniciación a la suma y resta de números enteros... 4 Introducción... 4 Actividad 1: Escenario con cartas numeradas desde -2 hasta 2... 4 Contenidos trabajados... 4 Instrucciones de Scratch...

Más detalles

ANÁLISIS DE DATOS NO NUMERICOS

ANÁLISIS DE DATOS NO NUMERICOS ANÁLISIS DE DATOS NO NUMERICOS ESCALAS DE MEDIDA CATEGORICAS Jorge Galbiati Riesco Los datos categóricos son datos que provienen de resultados de experimentos en que sus resultados se miden en escalas

Más detalles