ARREGLOS Y MATRICES 1. Arreglos
|
|
|
- Celia Sandoval Sosa
- hace 10 años
- Vistas:
Transcripción
1 ARREGLOS Y MATRICES 1. Arreglos Un arreglo es una estructura de datos, o más técnicamente, un espacio de memoria que permite almacenar una colección de elementos, todos del mismo tipo. Conviene imaginar un arreglo como una secuencia contigua de celdas (espacios de memoria), o casillas, en cada una de las cuales se puede guardar un elemento de la colección. Además, es usual dibujarlo como lo ilustra la figura siguiente: Esta figura representa un arreglo de siete casillas cada una de las cuales se puede utilizar para guardar un dato. La dimensión o tamaño de un arreglo es el número de casillas que lo conforman. Debe ser claro, entonces, que la figura anterior corresponde a un arreglo de dimensión 7. Cada una de las casillas de un arreglo tiene asociado un número que la identifica de manera única. A este número se le llama índice o dirección. En la figura anterior, debajo de cada casilla, aparece su índice. En lenguajes como C, C++ y java, la primera casilla del arreglo tiene índice 0, la segunda tiene índice 1, la tercera índice 2, y así sucesivamente. Es muy importante tener presente que si el arreglo es de dimensión N, la última casilla tiene índice N-1. Los lenguajes de programación, permiten que el programador declare arreglos de cualquier tipo y prácticamente de cualquier tamaño. En el seudolenguaje, un arreglo se declara usando el siguiente formato o plantilla: <NOMBRE> : arreglo [<N>] de <TIPO> En este formato aparecen en mayúsculas y entre los caracteres < y > los componentes que el programador debe determinar. Así por ejemplo, si se quiere declarar un arreglo con nombre letras, de dimensión 15 y que pueda almacenar datos de tipo caracter, se debe escribir la siguiente línea. letras : arreglo [15] de caracter Volviendo al formato anterior, el programador debe bautizar el arreglo (ponerle un nombre significativo), debe decir cuál es su dimensión, y también debe decir de qué tipo son los elementos que almacenará ese arreglo. Enseguida se dan algunos ejemplos de declaraciones de arreglos. Si se necesita guardar las ventas diarias de una tienda durante la última semana, se puede declarar el siguiente arreglo: 1
2 ventas : arreglo [7] de real Si se quiere guardar las notas que ha sacado un estudiante en los cinco talleres y en los cinco laboratorios del curso de Programación de Computadores se pueden declarar los siguientes arreglos: talleres : arreglo [5] de real laboratorios : arreglo [5] de real Si se quiere guardar el valor de las últimas 12 facturas telefónicas de una casa, se puede declarar el siguiente arreglo: facturastel : arreglo [12] de real Los índices se crearon para permitir que el programador se pueda referir, de forma específica, a una cualquiera de las casillas del arreglo, tanto para guardar un dato en esa casilla, como para obtener el dato guardado. Para referirse a una casilla particular de un arreglo se debe seguir el siguiente formato: <NOMBRE>[<INDICE>] es decir, se debe escribir el nombre del arreglo seguido por el índice de la casilla entre paréntesis cuadrados. Para los siguientes ejemplos, suponga que se declara el arreglo cifras, de la siguiente manera: cifras : arreglo [10] de entero La siguiente instrucción asigna o guarda el número 100 en la primera casilla de este arreglo: cifras[0]:= 100 La siguiente instrucción iterativa guarda 550 en cada una de las últimas 5 casillas de este arreglo: i:=5 MIENTRAS (i<10) HACER cifras[i]:= 550 i:=i+1 FIN-MIENTRAS La siguiente figura muestra el arreglo cifras después de ejecutadas las instrucciones de los dos ejemplos anteriores. Las casillas vacías no tienen valores definidos. 2
3 Ejemplo completo Un histograma para una colección de datos es una secuencia de parejas de la forma (d,f), donde d es un dato y f es su frecuencia en la colección. Por ejemplo, suponga que se le pide a 20 personas calificar con las letras a b c d y e el desempeño del gobierno actual, y que se obtienen las siguientes respuestas: c b c a b c d e e a b b d c a c c b d a. El histograma para esta colección de datos se muestra enseguida en dos formas: con números y con asteriscos: a: 4 a: **** b: 5 b: ***** c: 6 c: ****** d: 3 d: *** e: 2 e: ** Considere el problema de construir un algoritmo que haga un histograma para una lista de hasta 100 valores, donde cada valor es un número entero comprendido en el intervalo 1 al 5. Las entradas (datos conocidos) para el algoritmo son: El número de datos de la colección La colección misma La salida esperada (dato desconocido) es: El histograma de la colección En este problema, los arreglos son útiles para guardar los datos que conforman la colección y también para guardar el histograma. El número de datos de la colección se puede guardar en una variable entera. La siguiente gráfica resume las entradas y las salidas del algoritmo que se pretende diseñar. Además bautiza todas las variables mencionadas: totaldatos coleccion histograma Las condiciones iniciales y finales se pueden expresar mediante dos cláusulas: REQUIERE y GARANTIZA, de la siguiente manera: 3
4 REQUIERE: El número de datos de la colección debe ser mayor que cero y menor o igual que cien. (100 totaldatos>0) Cada uno de los elementos de la colección debe ser un número entre 1 y 5. GARANTIZA: Calcula el histograma asociado a la colección y lo presenta en la pantalla. La frecuencia de cada dato aparece graficado como una secuencia de asteriscos. Una primera versión del algoritmo solución puede ser simplemente la siguiente: Inicio Paso 1. Leer el número de elementos que tiene la colección Paso 2. Leer los elementos de la colección Paso 3. Calcular el histograma Paso 4. Presentar el histograma en la pantalla Fin Los pasos 1 y 2 son interacciones con el usuario que permiten capturar los datos de entrada. La versión inicial se puede refinar detallando estos pasos y además, definiendo las variables necesarias para hacerlos: Procedimiento principal Variables i,totaldatos: entero colección: arreglo [100] de entero Inicio escribir( Por favor digite el número de datos de la colección : (inferior o igual a 100) ) leer(totaldatos) i:=0 mientras (i<totaldatos) hacer escribir( Por favor digite el dato : ) escribir(i+1) leer(colección[i]) i:= i+1 fin-mientras Paso 3. Calcular el histograma Paso 4. Presentar el histograma en la pantalla Fin La parte nuclear de la solución es el Paso 3 (calcular el histograma). En este problema particular se sabe que todos los datos están entre 1 y 5, lo cual quiere decir que se necesita calcular cinco frecuencias: la del 1, la del 2, etc. Es natural entonces usar un arreglo de 5 casillas para guardar el histograma, de tal manera que en la casilla 0 estará la 4
5 frecuencia del 1, en la casilla 1 estará la frecuencia del 2, y así sucesivamente. A esta variable se le llamará histograma y su declaración es: histograma: arreglo[5] de entero Ahora, para calcular las frecuencias se puede hacer lo siguiente: Paso 3.1 inicializar las cinco casillas del arreglo histograma en cero Paso 3.2 revisar la colección, dato por dato, e ir incrementando la frecuencia asociada a cada uno de ellos. Así, si se encuentra un 5, se debe incrementar en 1 la frecuencia asociada al 5, es decir, se le debe sumar 1 a histograma[4]. En seudolenguaje, el cálculo del histograma puede ser: i:=0 mientras (i<5) hacer // inicializa las frecuencias en 0. Paso 3.1 histograma[i]:= 0 i:= i+1 fin-mientras i:=0 mientras (i<totaldatos) hacer // calcula las frecuencias. Paso 3.2 d:= colección[i]-1 histograma[d]:= histograma[d]+1 i:= i+1 fin-mientras Finalmente, una vez calculado el histograma, se debe presentar en la pantalla. Cada dato se debe presentar junto con su frecuencia, pero se requiere que la frecuencia aparezca como una cadena de asteriscos, en vez de como un número. Por ejemplo, si el dato 8 aparece 3 veces en la colección, en la pantalla debe aparecer 8: ***, como una línea del histograma. Esto quiere decir que para escribir la frecuencia de un dato, se requiere un ciclo que escriba tantos asteriscos como sea la frecuencia. Concluyendo, el paso 4 (presentar el histograma en la pantalla) se puede refinar como se muestra enseguida: i:=0 mientras (i<5) hacer // este ciclo recorre el histograma escribir(i+1) escribir( : ) f:= histograma[i] // f guarda la frecuencia de dato i+1 j:= 0 mientras(j<f) hacer // este ciclo escribe f asteriscos escribir ( * ) j:= j+1 fin-mientras escribir(salto-de-linea) 5
6 i:= i+1 fin-mientras El algoritmo completo se presenta enseguida. Se han definido algunas constantes para permitir que el programa sea más fácilmente modificable. Procedimiento principal Constantes N 5 / N es el tamaño máximo del histograma MAXDATOS 100 / MAXDATOS es el tamaño máximo de la colección Variables i,j,totaldatos: entero coleccion: arreglo [MAXDATOS] de entero histograma: arreglo [N] de entero Inicio escribir( Por favor digite el número de datos de la colección : (inferior o igual a 100) ) leer(totaldatos) i:=0 mientras (i<totaldatos) hacer escribir( Por favor digite el dato : ) escribir(i+1) leer(colección[i]) i:= i+1 fin-mientras i:=0 mientras (i<n) hacer // inicializa las frecuencias en 0. Paso 3.1 histograma[i]:= 0 i:= i+1 fin-mientras i:=0 mientras (i<totaldatos) hacer // este ciclo calcula las frecuencias. Paso 3.2 d:= colección[i]-1 histograma[d]:= histograma[d]+1 i:= i+1 fin-mientras i:=0 mientras (i<n) hacer // este ciclo recorre el histograma escribir(i+1) escribir( : ) f:= histograma[i] // f guarda la frecuencia de dato i+1 j:= 0 mientras(j<f) hacer // este ciclo escribe f asteriscos escribir ( * ) j:= j+1 6
7 fin-mientras escribir(salto-de-linea) i:= i+1 fin-mientras Fin 1.2 Problemas 1. Suponga que se quiere construir un algoritmo que califique un examen de selección múltiple presentado por un estudiante de Programación de Computadores. En cada una de las preguntas del examen, el estudiante debió elegir una de cinco opciones, identificadas con las letras A,B,C,D y E. Las entradas (datos conocidos) para el algoritmo son: El número de preguntas que tenía el examen Cada una de las respuestas dadas por el estudiante Las respuestas correctas La salida esperada (dato desconocido) es: la nota obtenida. Esta nota corresponde al número de aciertos que tuvo el estudiante. En este problema, los arreglos son útiles para guardar las respuestas correctas y las opciones elegidas por el estudiante. El número de preguntas del examen se puede guardar en una variable entera, al igual que la nota. Enseguida se muestra la especificación de este problema: totalpreguntas respuestas nota correctas REQUIERE: El número de preguntas del examen debe ser mayor que cero. (totalpreguntas>0) Cada una de las respuestas del estudiante debe ser una letra mayúscula que está entre A y E. Cada una de las respuestas correctas debe ser una letra mayúscula que está entre A y E. GARANTIZA: La nota dada por el algoritmo corresponde al total de respuestas acertadas del estudiante Escriba un algoritmo que cumpla con esta especificación. 7
8 2. Escriba un algoritmo que efectúe la normalización de una colección de números reales. Para llevar a cabo esta normalización, se debe en primer lugar encontrar el número mayor de la colección; luego se divide cada número por dicho valor máximo, de forma que los valores resultantes (normalizados) estén comprendidos en el intervalo del 0 al Escriba un algoritmo que sume en binario. Las entradas son dos números (binarios) y la salida es la suma de estos dos valores (también en binario). Por ejemplo, si el usuario digita las cadenas binarias 101 y 1101, la respuesta dada debe ser Ejercicios 1. Escriba un algoritmo que lea dos arreglos de números enteros ORDENADOS ascendentemente y luego produzca la lista ordenada de la mezcla de los dos. Por ejemplo, si los dos arreglos tienen los números y , respectivamente, la lista de números en la pantalla debe ser Escriba un algoritmo que lea un arreglo de números enteros, y un número x, y escriba en la pantalla todos los índices de las posiciones del arreglo donde está x. Por ejemplo, si el arreglo es el que aparece enseguida y x es 2: El programa debe escribir: Un arreglo de números se llama partidario si todo número que está en una casilla par (0,2,4, ) es mayor que cualquiera de los números que están en las casillas impares (1,3,5, ). Escriba un algoritmo que lea un arreglo de números enteros y luego, diga si es partidario o no. Por ejemplo, si el arreglo es el siguiente: El programa debe escribir: es partidario. 2. Cadenas de caracteres Los elementos del tipo caracter (tipo char en lenguaje C) se pueden agrupar para formar secuencias que se denominan cadenas de caracteres, o simplemente cadenas. En este texto, y también en el texto de un programa en C, las cadenas se delimitan por dobles comillas. Por ejemplo, CH?*$A7! y soy cadena son dos cadenas, la primera formada por 8 caracteres y la segunda por 10. En la memoria del computador una cadena se guarda en un arreglo de tipo caracter, de tal manera que cada símbolo de la cadena ocupa una casilla del arreglo. Sin embargo, se utiliza una casilla adicional del arreglo para guardar un carácter especial que se llama terminador de cadena. En C y en el seudolenguaje este carácter especial es \0. Como lo indica su nombre, la función de este carácter especial es indicar que la cadena termina. Las dos cadenas mencionadas arriba, se representan en la memoria del computador como lo indica la siguiente figura: 8
9 C H? * $ A 7! \ s o y c a d e n a \ La longitud de una cadena se define como el número de símbolos que la componen, sin contar el terminador de cadena. Es muy importante tener en cuenta que aunque el terminador de cadena no hace parte de la cadena, sí ocupa una casilla de memoria en el arreglo. Dado que la representación de cadenas es mediante arreglos de tipo caracter, aplican todos los conceptos que ya explicaron para esta estructura de datos. Por otra parte, por el hecho de que las cadenas son de uso muy frecuente y generalizado en programación, en muchos lenguajes se dispone de muchas operaciones (funciones) sobre estas. La siguiente es una lista corta de estas operaciones para el seudolenguaje, en la cual debe suponerse que cad, cad1 y cad2 son nombres de arreglos de tipo caracter. OPERACIÓN leercadena(cad) escribircadena(cad) longitudcadena( cad) copiarcadena( cad1, cad2 ) concatenarcadena( cad1, cad2 ) compararcadena( cad1, cad2 ) DESCRIPCIÓN Guarda la cadena digitada por el usuario en el arreglo cad Escribe en la pantalla la cadena cad Retorna la longitud de la cadena cad Copia la cadena cad2 en la cadena cad1 Retorna la concatenación de cad1con cad2, en la cadena cad1 Retorna menos uno (-1) si cad1 es menor que cad2, cero (0) si son iguales y uno (1) si cad2 es menor que cad1 Para determinar si una cadena es menor que otra se usa el orden lexicográfico, es decir, el mismo que usan los diccionarios. Así por ejemplo, casa es menor casita, y esta a su vez es menor que caza. De otra parte, la operación leercadena pone automáticamente el terminador de cadena, lo mismo que las operaciones copiarcadena y concatenarcadena. 2.1 Ejemplo completo. Un palíndromo es una palabra o frase, si se quiere del idioma español, que se puede leer igual de izquierda a derecha y de derecha a izquierda, obviando signos de puntuación y espacios. Para aclarar, son palíndromos las siguientes frases y palabras: Anilina Amor a Roma Dábale arroz a la zorra el abad Reconocer Anita lava la tina ala Considere el problema de construir un algoritmo que lea una PALABRA, de longitud máxima 30, y determine si es palíndromo o no. 9
10 Las entradas (datos conocidos) para el algoritmo son: La palabra a considerar La salida esperada (dato desconocido) es: Un mensaje que indica si es palíndromo o no La siguiente gráfica resume las entradas y las salidas del algoritmo que se pretende diseñar. Además bautiza las variables principales: pal respuesta Las condiciones iniciales y finales se pueden expresar mediante dos cláusulas: REQUIERE y GARANTIZA, de la siguiente manera: REQUIERE: Una palabra, llamada pal, que puede tener hasta 30 caracteres GARANTIZA: Escribe en pantalla un mensaje, respuesta, que indica si pal es palíndromo o no Una primera versión del algoritmo solución puede ser simplemente la siguiente: Inicio Paso 1. Leer la palabra Paso 2. Determinar si es palíndromo Paso 3. Escribir en pantalla el mensaje apropiado Fin Los pasos 1 y 3 son interacciones con el usuario que se implementan usando las operaciones sobre cadenas disponibles. La versión inicial se puede refinar detallando estos pasos y además, definiendo las variables necesarias para hacerlo: Procedimiento principal Variables pal: arreglo [31] de caracter respuesta: arreglo [20] de caracter Inicio escribir( Por favor digite una frase de máximo 30 letras ) leercadena(pal) Paso 2. Determinar si pal es palíndromo Paso 3. Escribir en pantalla el mensaje apropiado Fin Note que el arreglo pal se define de dimensión 31. Puede explicar cuál es el propósito de esto?. 10
11 La parte nuclear de la solución es el Paso 2 (determinar si el arreglo pal contiene un palíndromo). Para esto se deben comparar el primer carácter con el último, el segundo con el penúltimo, y así sucesivamente. En seudolenguaje, este proceso puede ser: i:= 0 // i señala el primer caracter de la cadena j:= longitudcadena(pal)-1 // j señala el último caracter de la cadena siga:= verdadero //variable que indica cuándo parar el proceso mientras (i<j y siga) hacer si (pal[i]=pal[j]) entonces i:= i+1 j:= j-1 sino siga:= falso fin-si fin-mientras si i<j entonces copiarcadena(respuesta, no es palindromo ) sino copiarcadena(respuesta, es palindromo ) fin-si El arreglo respuesta queda con la respuesta apropiada para el usuario. El algoritmo completo se presenta enseguida. Se han definido algunas constantes para permitir que el programa sea más fácilmente modificable. Procedimiento principal Constantes N 30 / N es la máxima longitud de la palabra dada por el usuario Variables pal: arreglo [31] de caracter respuesta: arreglo [20] de caracter i,j: entero siga: booleano Inicio escribir( Por favor digite una palabra de máximo 30 letras ) leercadena(pal) i:= 0 // i señala el primer caracter de la cadena j:= longitudcadena(pal)-1 // j señala el último caracter de la cadena siga:= verdadero //variable bandera que indica cuándo parar el proceso mientras (i<j y siga) hacer si (pal[i]=pal[j]) entonces i:= i+1 j:= j-1 sino siga:= falso fin-si fin-mientras 11
12 si i<j entonces copiarcadena(respuesta, no es palindromo ) sino copiarcadena(respuesta, es palindromo ) fin-si escribircadena(respuesta) Fin 2.2 Problemas 1. Construya un algoritmo que lea una FRASE, de longitud máxima 30, y determine si es palíndromo o no. El algoritmo debe procesar correctamente frases de más de una palabra. 2. Construya un algoritmo que lea una frase del español de máximo 100 caracteres y determine cuántas palabras, vocales y consonantes tiene. 3. Construya un algoritmo que lea dos palabras del español y determine si la primera es sufijo de la segunda. Por ejemplo, lote es prefijo de casalote. 4. Construya un algoritmo que lea dos palabras del español y determine si la primera es parte de la segunda. Por ejemplo, alo es parte de casalote. 2.3 Ejercicios 1. Suponga que la operación longitudcadena no está disponible. Escriba un algoritmo que calcule la longitud de una cadena, bajo el supuesto de que el terminador de cadena aparece en alguna casilla del arreglo. 2. Suponga que la operación compararcadena no está disponible. Escriba un algoritmo que compare dos cadenas, bajo el supuesto de que ambas tienen el terminador de cadena. 3. Escriba un algoritmo que invierta una cadena. Por ejemplo, si la cadena es épica, su inversa es acipé. 3. Matrices Una matriz es una estructura de datos, o más técnicamente, un espacio de memoria que permite almacenar una colección de elementos, todos del mismo tipo. La diferencia con los arreglos está en que, en las matrices, los elementos no están organizados linealmente sino que su organización es bidimensional, es decir, en filas y columnas. Conviene imaginar una matriz como una organización de celdas de memoria, o casillas, en cada una de las cuales se puede guardar un elemento de la colección. Además, es usual dibujarla como lo ilustra la figura siguiente: 12
13 Esta figura representa un matriz de cuatro filas (numeradas verticalmente de 0 a 3) y seis columnas (numeradas horizontalmente de 0 a 5). En cada una de las 24 celdas o casillas se puede guardar un dato. La dimensión o tamaño de una matriz es el número filas por el número de columnas. Debe ser claro entonces que la figura anterior es la gráfica de una matriz de dimensión 4x6. La numeración de las filas y las columnas determina que cada una de las casillas de una matriz tiene asociados dos números que la identifican de manera única. A estos números se les llama índice de fila e índice de columna, respectivamente. En el seudolenguaje, y también en C y C++, las filas y las columnas se numeran desde 0. Los lenguajes como C y C++, permiten que el programador declare matrices de cualquier tipo y prácticamente de cualquier tamaño. En el seudolenguaje, un matriz se declara usando el siguiente formato: <NOMBRE> : matriz [<N>][<M>] de <TIPO> En este formato aparecen en mayúsculas y entre los caracteres < y > los componentes que el programador puede determinar. Así por ejemplo, si se quiere declarar una matriz con nombre mat, de dimensión 15x4 y que pueda almacenar datos de tipo caracter, se debe escribir la siguiente línea. mat : matriz [15][4] de caracter Según el formato anterior, el programador debe bautizar la matriz (ponerle un nombre significativo), debe decir cuál es su dimensión, y también debe decir de qué tipo son los elementos que almacenará. Enseguida se dan algunos ejemplos de declaraciones de matrices. Si se necesita guardar la información relacionada con el tablero de un juego de tic tac toe (el tradicional triqui), se puede declarar la siguiente matriz: tablero : matriz [3][3] de caracter Si se requiere guardar las notas que han sacado 35 estudiantes en los 5 talleres y en los 5 laboratorios del curso de Programación de Computadores se pueden declarar las siguientes matrices. 13
14 talleres : matriz [35][5] de real laboratorios : matriz [35][5] de real Note que, en ambas matrices, cada fila guarda las notas de un estudiante del curso. Si se quiere guardar las letras que conforman una sopa de letras, como aquellas que vienen en los pasatiempos, se puede declarar la siguiente matriz. sopa : matriz [10][15] de caracter Note que la sopa de letras más grande que se puede guardar es de 10 filas por 15 columnas. Los índices se crearon para permitir que el programador se pueda referir, de forma específica y directa, a una cualquiera de las casillas de la matriz, tanto para guardar un dato en esa casilla, como para obtener el dato almacenado en ella. En el seudolenguaje, para referirse a una casilla particular de una matriz se debe seguir el siguiente formato: <NOMBRE>[<INDICE-DE-FILA>][<INDICE-DE-COLUMNA>] es decir, se debe escribir el nombre de la matriz seguido por el índice de fila y por el índice de columna, ambos entre paréntesis cuadrados, de la casilla que se quiere consultar. Para los siguientes ejemplos, suponga que se declara la matriz montos, de la siguiente manera: montos : matriz [6][10] de real La siguiente instrucción asigna o guarda el número 10,4 en la casilla de la esquina superior izquierda de esta matriz: montos[0][0]:= 10,4 La siguiente instrucción iterativa guarda 5,5 en cada una de las casillas de la última fila de esta matriz: k:=0 MIENTRAS (k<10) HACER montos[5][k]:= 5,5 k:=k+1 FIN-MIENTRAS La siguiente figura muestra la matriz montos después de ejecutadas las instrucciones de los dos ejemplos anteriores. Las casillas vacías no tienen valores definidos. 14
15 , ,5 5,5 5,5 5,5 5,5 5,5 5,5 5,5 5,5 5,5 3.1 Ejemplo completo Una matriz mágica es una matriz cuadrada (tiene igual número de filas que de columnas) que tiene como propiedad especial que la suma de las filas, las columnas y las diagonales es igual. Por ejemplo: En esta matriz las sumas son Considere el problema de construir un algoritmo que compruebe si una matriz de datos enteros es mágica o no, y en caso de que sea mágica escribir la suma. El usuario ingresa el tamaño de la matriz máximo hasta 10. Además debe guardar la suma de las filas, las columnas y las diagonales en un arreglo en el orden siguiente: Fila Fila Fila Columna Diagonal Diagonal Columna 0 Columna Las entradas (datos conocidos) para el algoritmo son: La dimensión de la matriz Los números que contiene la matriz La salida esperada (datos desconocidos) es: La matriz es mágica o no, y si es mágica cuál es el valor de la suma. En este problema, los arreglos son útiles para guardar los datos que conforman la matriz. Los números que contiene la matriz se pueden guardar en una variable entera. La siguiente gráfica resume las entradas y salidas del algoritmo que se pretende diseñar. Además bautizan todas las variables mencionadas. 15
16 tam suma mensaje magica Las condiciones iniciales y finales se pueden expresar mediante las cláusulas REQUIERE y GARANTIZA: REQUIERE: La dimensión de la matriz que debe ser máximo 10x10 Cada elemento de la matriz debe ser un número entero GARANTIZA Muestra en pantalla si es mágica o no, y si lo es cual es el valor de la suma. Una primera versión del algoritmo puede ser la siguiente: Inicio Paso 1: Leer el tamaño de la matriz Pado 2: Leer los elementos de la matriz Paso 3: Determinar si la matriz es mágica o no Paso 4: Si la matriz es mágica mostrar el valor de la suma. Fin Los pasos 1 y 2 son interacciones con el usuario que permiten capturar los datos de entrada. La versión inicial se puede refinar detallando estos pasos y además defiendo las variables para hacerlos: Procedimiento principal variables i, j, aux, tam, suma: enteros //i señala las filas //j señala las columnas magica: matriz [10][10] de enteros Inicio escribir( Por favor digite el número de filas de la matriz (entre 2 y 10): ) leer(tam) para (i=0 hasta tam-1) hacer para(j=0 hasta tam-1) hacer escribir( Por favor digite el dato en la posición ) escribir(i,j) leer(magica[i][j]) Paso 3 Paso 4 16
17 Se puede observar que el primer ciclo para tiene como contador la variable i, esto indica que se llenará la matriz por filas, el segundo ciclo para que tiene como contador la variable j, recorrerá la fila columna a columna para ubicar allí el dato correspondiente. La parte nuclear de la solución es el paso 3. En este problema en particular se sabe que el número de filas y de columnas es igual y que hay dos diagonales. Para el ejemplo mostrado al inicio sería 3 filas, 3 columnas y dos diagonales. Para almacenar las sumas en un arreglo este tendrá una dimensión de 2*tam+2. La declaración del arreglo sumas es: sumas: arreglo [22] de enteros Ahora para calcular las sumas se puede hacer lo siguiente: Paso 3.1: Inicializar el arreglo de sumas en cero Paso 3.2: Sumar fila por fila, columna por columna y las diagonales y guardar su valor en el arreglo. para(i=0 hasta 2*tam+2) hacer sumas[i]:=0 //Sumas correspondientes a las filas para(i=0 hasta tam-1) hacer para(j=0 hasta tam-1) hacer sumas[i]=magica[i][j]+sumas[i] //Sumas correspondientes a las columnas para(j=0 hasta tam-1) hacer para(i=0 hasta tam-1) hacer sumas[j+tam]=magica[i][j]+sumas[j+tam] //Sumas correspondientes a las diagonales para(i=0 hasta tam-1) hacer sumas[2*tam]=magica[i][i]+sumas[2*tam] para(i=0 hasta tam-1) hacer sumas[2*tam+1]=magica[i][(tam-1)-i]+sumas[2*tam+1]; Paso 4: Para determinar si la matriz es mágica se va a recorrer y comparar el vector sumas, si en algún momento se encuentra un valor diferente se muestra en pantalla que la matriz no es mágica y se lleva el contador i más allá del final del arreglo, si por el contrario se llega al final del arreglo, es decir que todo este contiene el mismo valor y la matriz si cumple con las características evaluadas, se muestra en pantalla que la matriz es mágica. //Comparar el vector suma y muestra el resultado 17
18 int con=0; con=sumas[0]; para(i=1 hasta 2*tam+1) hacer si(con<>sumas[i]) escribir("la matriz no es mágica) i=2*tam+3; fin_si fin-para si(i=2*tam+2) escribir( la matriz es mágica y la suma es: ) escribir(con); fin_si El algoritmo completo se presenta enseguida. Procedimiento principal variables i, j, aux, tam, suma: entero //i señala las filas //j señala las columnas con=0: entero magica: matriz [10][10] de enteros sumas: arreglo [22] de enteros Inicio escribir( Por favor digite el número de filas de la matriz (entre 2 y 10): ) leer(tam) para (i=0 hasta tam-1) hacer para(j=0 hasta tam-1) hacer escribir( Por favor digite el dato en la posición ) escribir(i,j) leer(magica[i][j]) para(i=0 hasta 2*tam+2) hacer sumas[i]:=0 //Sumas correspondientes a las filas para(i=0 hasta tam-1) hacer para(j=0 hasta tam-1) hacer sumas[i]=magica[i][j]+sumas[i] //Sumas correspondientes a las columnas para(j=0 hasta tam-1) hacer para(i=0 hasta tam-1) hacer 18
19 sumas[j+tam]=magica[i][j]+sumas[j+tam] //Sumas correspondientes a las diagonales para(i=0 hasta tam-1) hacer sumas[2*tam]=magica[i][i]+sumas[2*tam] para(i=0 hasta tam-1) hacer sumas[2*tam+1]=magica[i][(tam-1)-i]+sumas[2*tam+1]; con=sumas[0]; para(i=1 hasta 2*tam+1) hacer si(con<>sumas[i]) escribir("la matriz no es mágica) i=2*tam+3; fin_si fin-para si(i=2*tam+2) escribir( la matriz es mágica y la suma es: ) escribir(con); fin_si fin-procedimiento 3.1 Problemas 1. El dueño de un restaurante entrevista a cinco clientes de su negocio y les pide que califiquen de 1 a 10 los siguientes aspectos: (1 es pésimo y 10 es excelente o inmejorable) Atención de parte de los empleados Calidad de la comida Justicia del precio (el precio que pagó le parece justo?) Ambiente (muebles cómodos?, música adecuada?, iluminación suficiente?, decoración, etc.) Escriba un algoritmo que pida las calificaciones de los cinco clientes a cada uno de estos aspectos, y luego escriba el promedio obtenido en cada uno de ellos. La lista debe aparecer ordenada del aspecto mejor calificado al peor calificado. 2. En una hacienda hay un hato que se compone de N vacas. Diseñe un algoritmo que guarde en una matriz de dimensión 7xN la producción de leche diaria (en litros) de cada una de las vacas, durante una semana. Además, el algoritmo debe calcular la producción total del hato en cada uno de los siete días, y el número de la vaca que dio más leche en cada día. 19
20 3.2 Ejercicios 1. Los siguientes ejercicios tienen como propósito que usted escriba ciclos que recorran la matriz completa o partes de ella. Suponga que se ha definido una constante positiva entera N y una matriz mat, de dimensión NxN. Escriba un algoritmo que ponga cero en ambas diagonales de la matriz. Escriba un algoritmo que ponga cero en la primera y la última fila, y en la primera y la última columna de la matriz. Escriba un algoritmo que llene de números la matriz de tal forma que mat[i][j] sea igual a i+j. Escriba un algoritmo que llene la diagonal principal de la matriz con los números 1,2,3,...N. La diagonal principal de una matriz está formada por las casillas en las cuales el índice de fila y de columna son iguales. Escriba un algoritmo que llene todas las filas pares con los números 1,2,3,...N, y las filas impares con los números N,N-1,N-2, Diseñe un algoritmo que permita guardar en un arreglo las sumas de las filas de una matriz. Esto es, la suma de los elementos de la primera fila deberá quedar guardada en la primera posición del arreglo, la suma de los elementos de la segunda fila en la segunda posición, y así sucesivamente para todas las filas de la matriz. La máxima dimensión de la matriz es 100x50 (100 filas y 50 columnas) y la del vector es 100. Por ejemplo, si el usuario ingresa la siguiente matriz de 3x5 (3 filas, 5 columnas) El resultado sería un arreglo siguiente: 3,5 6,5 30 8, ,6 1,4 10-1,5 3,4 6,6 2 48,2 8 20,5 porque 3,5 + 6, ,2 + 0 = 48, (-1) + 3,6 + 1,4 = 8 y 10 + (-1,5) + 3,4 + 6,6 + 2 = 20,5 3. En álgebra lineal las matrices son tema central. Sobre ellas se definen varias operaciones, como por ejemplo: La suma de dos matrices. Si A y B son matrices de igual dimensión, la matriz C=A+B se calcula haciendo que C[i][j] = A[i][j]+B[i][j], para todo i y j válidos. La traspuesta de una matriz. Si A es una matriz de dimensión NxM, la matriz B=A t se calcula haciendo que B[i][j] = A[j][i], para todo i y j válidos. Note que esto quiere decir que las filas se convierten en columnas y que la dimensión de B es MxN. 20
21 La traza de una matriz cuadrada. Si A es una matriz de dimensión NxN, la matriz traza es la suma de todos los elementos de la diagonal principal. La multiplicación de dos matrices. Si A y B son matrices de dimensiones nxm y mxk, respectivamente, la matriz C=A*B, de dimensión nxk, se calcula haciendo que: m 1 = C [ i][ j] A[ i][ p]* B[ p][ j] p= 0 Especifique y escriba un algoritmo para cada una de estas operaciones. CODIFICACIÓN EN C++ DE ARREGLOS Y MATRICES Seudocódigo Arreglo <NOMBRE> : arreglo [<N>] de <TIPO> Cadena <NOMBRE> : arreglo [<N>] de caracter C++ <TIPO> <NOMBRE>[<N>]; char <NOMBRE>[<N>]; Matriz <NOMBRE> : matriz [<N>][<M>] de <TIPO> <TIPO> <NOMBRE>[<N>][<M>]; EJEMPLO EN C++ #include <iostream.h> #include <stdlib.h> #include <conio.h> /*Este programa lee los datos de una matriz 3x4 y muestra en pantalla la suma de los datos de cada fila */ main(){ int matriz[3][4]; int arreglo[3]; int i,j; //Ingreso de los datos for (i=0;i<3;i++){ for (j=0;j<4;j++){ cout << "Ingrese el numero entero correspondiente a la posicion ["<<i<<"] ["<<j<<"]: "; cin >> matriz[i][j]; } } 21
22 //Muestra en pantalla la matriz ingresada cout << "\nla matriz que usted ingreso es: \n\n"; for (i=0;i<3;i++){ for (j=0;j<4;j++){ cout << matriz[i][j]<<" "; } cout << "\n"; } //Suma los datos de cada fila for (i=0;i<3;i++){ arreglo[i]=0; for (j=0;j<4;j++){ arreglo[i]=arreglo[i]+matriz[i][j]; } } } //Muestra en pantalla los resultados for (i=0;i<3;i++){ cout << "\nla suma de los datos de la fila "<<i<<" es: " << arreglo[i]; } getch(); 22
Matrices. Matrices Transversal de Programación Básica Proyecto Curricular de Ingeniería de Sistemas
1 Matrices 2013 Transversal de Programación Básica Proyecto Curricular de Ingeniería de Sistemas 2 Objetivos Representar conjuntos de datos mediante matrices. Solucionar problemas utilizando matrices.
Cadenas de Caracteres
1 Cadenas de Caracteres 2013 Transversal de Programación Básica Proyecto Curricular de Ingeniería de Sistemas 2 Objetivos Conocer las propiedades de los arreglos de caracteres así como las diferentes operaciones
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
!!!!!!!! !!!!! 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
XVI Olimpiada Colombiana de Computación Nivel Superior Prueba Final Dia 2
XVI Olimpiada Colombiana de Computación Nivel Superior Prueba Final Dia 2 28 de Octubre de 2005 1. SUPERPALINDROMOS Un palíndromo es una palabra que se lee de igual forma de izquierda a derecha que de
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.
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
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
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
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
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
Matrices Invertibles y Elementos de Álgebra Matricial
Matrices Invertibles y Elementos de Álgebra Matricial Departamento de Matemáticas, CCIR/ITESM 12 de enero de 2011 Índice 91 Introducción 1 92 Transpuesta 1 93 Propiedades de la transpuesta 2 94 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
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
SISTEMAS DE COORDENADAS SISTEMA COORDENADO UNIDIMENSIONAL
SISTEMAS DE COORDENADAS En la vida diaria, nos encontramos con el problema de ordenar algunos objetos; de tal manera que es necesario agruparlos, identificarlos, seleccionarlos, estereotiparlos, etc.,
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
1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1
5.1.3 Multiplicación de números enteros. El algoritmo de la multiplicación tal y como se realizaría manualmente con operandos positivos de cuatro bits es el siguiente: 1 1 0 1 x 1 0 1 1 1 1 0 1 + 1 1 0
SISTEMAS DE ECUACIONES LINEALES
SISTEMAS DE ECUACIONES LINEALES INTRODUCCIÓN En el presente documento se explican detalladamente dos importantes temas: 1. Descomposición LU. 2. Método de Gauss-Seidel. Se trata de dos importantes herramientas
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
Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.
Tema 1 Matrices Estructura del tema. Conceptos básicos y ejemplos Operaciones básicas con matrices Método de Gauss Rango de una matriz Concepto de matriz regular y propiedades Determinante asociado a una
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ó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
Introducción al tipo de dato ARRAY
CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción
Guía N 1: Fundamentos básicos(i)
1 Guía N 1: Fundamentos básicos(i) Objetivos Generales: Ver una breve descripción de las capacidades más comunes de Excel Objetivos específicos: Descripción de los elementos de un libro: Hojas, iconos,
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
Preliminares. Tipos de variables y Expresiones
Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un
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
Funciones mas importantes para el manejo de Caracteres
Caracteres Un carácter es un símbolo que la computadora puede representar. Cuando se asigna una constante de carácter a una variable tipo char, esta debe estar entre apostrofes. char letra= a ; Funciones
MEDIDAS DE TENDENCIA CENTRAL
CAPÍTULO 14 MEDIDAS DE TENDENCIA CENTRAL A veces, de los datos recolectados ya organizados en alguna de las formas vistas en capítulos anteriores, se desea encontrar una especie de punto central en función
Centro de Capacitación en Informática
Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.
Matemáticas para la Computación
Matemáticas para la Computación José Alfredo Jiménez Murillo 2da Edición Inicio Índice Capítulo 1. Sistemas numéricos. Capítulo 2. Métodos de conteo. Capítulo 3. Conjuntos. Capítulo 4. Lógica Matemática.
Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.
El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los
Ejercicio 1 (2 puntos. Tiempo: 25 minutos)
Fecha de publicación de notas: jueves 18 de Julio. Fecha de revisión: viernes 19 de Julio a las 10:00h. Despacho C-209. Ejercicio 1 (2 puntos. Tiempo: 25 minutos) Se desea desarrollar un programa en C
Matrices: Conceptos y Operaciones Básicas
Matrices: Conceptos y Operaciones Básicas Departamento de Matemáticas, CCIR/ITESM 8 de septiembre de 010 Índice 111 Introducción 1 11 Matriz 1 113 Igualdad entre matrices 11 Matrices especiales 3 115 Suma
Jugamos al Bingo matemático
TERCER GRADO UNIDAD 2 SESIÓN 24 Jugamos al Bingo matemático En esta sesión, a través del Bingo matemático, los niños y las niñas pondrán en práctica lo aprendido usando operaciones de adición y sustracción,
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
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
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",
Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes:
Descripción del ambiente de trabajo Entrar y salir de la aplicación Para ingresar a la aplicación Microsoft PowerPoint 97, los pasos que se deben seguir pueden ser los siguientes: A través del botón :
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.
1. MANEJO DE SUMATORIOS. PROPIEDADES Y EJERCICIOS.
1. MANEJO DE SUMATORIOS. PROPIEDADES Y EJERCICIOS. El sumatorio o sumatoria) es un operador matemático, representado por la letra griega sigma mayúscula Σ) que permite representar de manera abreviada sumas
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
Lección 7 - Coordenadas rectangulares y gráficas
Lección 7 - Coordenadas rectangulares gráficas Coordenadas rectangulares gráficas Objetivos: Al terminar esta lección podrás usar un sistema de coordenadas rectangulares para identificar puntos en un plano
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
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
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
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
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
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
Capítulo 9. Archivos de sintaxis
Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta
LAS CONSULTAS ACCESS 2007. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE
LAS CONSULTAS ACCESS 2007 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS CONSULTAS En esta unidad veremos cómo crear consultas y manejarlas para la edición de registros de tablas
Operación Microsoft Access 97
Trabajar con Controles Características de los controles Un control es un objeto gráfico, como por ejemplo un cuadro de texto, un botón de comando o un rectángulo que se coloca en un formulario o informe
2_trabajar con calc I
Al igual que en las Tablas vistas en el procesador de texto, la interseccción de una columna y una fila se denomina Celda. Dentro de una celda, podemos encontrar diferentes tipos de datos: textos, números,
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
PESTAÑA DATOS - TABLAS EN EXCEL
PESTAÑA DATOS - TABLAS EN EXCEL Una tabla en Excel es un conjunto de datos organizados en filas o registros, en la que la primera fila contiene las cabeceras de las columnas (los nombres de los campos),
LA DUALIDAD PAR-IMPAR. 1. En una reunión de 25 personas. Puede ser que cada una se salude dándose la mano con todas las demás excepto con una?
NOTAS Un sencillo principio matemático que da mucho más juego del que parece a primera vista es la simple distinción entre los números pares e impares. Conviene tener presente las siguientes propiedades,
Ahora podemos comparar fácilmente las cantidades de cada tamaño que se vende. Estos valores de la matriz se denominan elementos.
Materia: Matemática de 5to Tema: Definición y Operaciones con Matrices 1) Definición Marco Teórico Una matriz consta de datos que se organizan en filas y columnas para formar un rectángulo. Por ejemplo,
Lección 4: Suma y resta de números racionales
GUÍA DE MATEMÁTICAS II Lección : Suma y resta de números racionales En esta lección recordaremos cómo sumar y restar números racionales. Como los racionales pueden estar representados como fracción o decimal,
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
MICROSOFT EXCEL 2007. Introducción: Qué es y para qué sirve Excel2007? TECNOLOGIA/ INFORMATICA: MS-EXCEL
MICROSOFT EXCEL 2007 Qué es y para qué sirve Excel2007? Excel 2007 es una hoja de cálculo integrada en Microsoft Office. Esto quiere decir que si ya conoces otro programa de Office, como Word, Access,
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
Operaciones básicas, fórmulas, referencias absolutas, relativas y mixtas.
Módulo 3 Herramientas de Cómputo Operaciones básicas, fórmulas, referencias absolutas, relativas y mixtas. Operaciones Básicas Las operaciones básicas que se realizan en una hoja de cálculo son: Seleccionar
Curso Excel Básico - Intermedio
Curso Excel Básico - Intermedio Clase 4 Relator: Miguel Rivera Adonis Introducción Base de Datos: Definición de Base de Datos Ordenar datos Formulario Filtros Trabajar con Sub-Totales Validación de Datos
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
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
Capítulo 12: Indexación y asociación
Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación
Informática FACULTAD DE FÍSICAS
EJERCICIOS RESUELTOS EN CLASE DE TEORÍA 1. Realizar un programa que pida 10 números enteros y calcule la media de dichos valores. Realizar una función/procedimiento para rellenar los valores en un vector
UNIDAD 4: PLANO CARTESIANO, RELACIONES Y FUNCIONES. OBJETIVO DE APRENDIZAJE: Representar gráficamente relaciones y funciones en el plano cartesiano.
UNIDAD 4: PLANO CARTESIANO, RELACIONES Y FUNCIONES OBJETIVO DE APRENDIZAJE: Representar gráficamente relaciones y funciones en el plano cartesiano. EL PLANO CARTESIANO. El plano cartesiano está formado
2. Aquí se muestra la fecha de captura y el número de folio correspondiente a la solicitud, ambos datos son capturados por el sistema.
1 Captura de una Solicitud de Viático En la pantalla principal se realiza la captura de una solicitud de viático. Esta sección se compone de dos partes principales. En la primera se encuentran los datos
ALGUNAS AYUDAS PARA EL ACCESO AL AULA DIGITAL Contenido
ALGUNAS AYUDAS PARA EL ACCESO AL AULA DIGITAL Contenido Tabla de contenido 1 INFORMACIÓN PERSONAL... 2 1.1 Cómo ingresar al Aula Digital?... 2 1.2 Qué hacer si olvida su contraseña?... 2 1.3 Qué veo cuando
Hacer clic sobre la figura, para extraer todos los registros o presionar la tecla F2.
b) Adicionar grados Para llevar a cabo esta operación el usuario deberá realizar los siguientes pasos: Recuperar la información, para realizar esta operación el usuario puede hacerla de las siguientes
Vectores. 27/05/05 Programación Digital I 1
Vectores Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación
Conjuntos Numéricos. Las dos operaciones en que se basan los axiomas son la Adición y la Multiplicación.
Conjuntos Numéricos Axiomas de los números La matemática se rige por ciertas bases, en la que descansa toda la matemática, estas bases se llaman axiomas. Cuántas operaciones numéricas conocen? La suma
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
Capítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas
Capítulo 4 Vectores y matrices En FORTRAN se puede utilizar un tipo especial de variable que sirve, en particular, para almacenar vectores y matrices. De esta forma, se utiliza un sólo nombre para referirse
Operación de Microsoft Excel. Guía del Usuario Página 79. Centro de Capacitación en Informática
Manejo básico de base de datos Unas de las capacidades de Excel es la de trabajar con listas o tablas de información: nombres, direcciones, teléfonos, etc. Excel puede trabajar con tablas de información
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
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
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
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
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
PARÁBOLA. 1) para la parte positiva: 2) para la parte negativa: 3) para la parte positiva: 4) para la parte negativa:
Página 90 5 LA PARÁBOLA 5.1 DEFINICIONES La parábola es el lugar geométrico 4 de todos los puntos cuyas distancias a una recta fija, llamada, y a un punto fijo, llamado foco, son iguales entre sí. Hay
A estas alturas de nuestros conocimientos vamos a establecer dos reglas muy prácticas de cómo sumar dos números reales:
ADICIÓN Y RESTA DE NUMEROS REALES ADICIÓN L a adición o suma de números reales se representa mediante el símbolo más (+) y es considerada una operación binaria porque se aplica a una pareja de números,
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
MICROSOFT WORD 2007 AVANZADO. Unidad Didáctica Nº 1
MICROSOFT WORD 2007 AVANZADO Unidad Didáctica Nº 1 I Tablas A) Explicación conceptual y de uso de una tabla B) Creación de tablas C) Trabajo con tablas D) Formato de las tablas Ejercicio de Repaso Portal
En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.
Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa
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,
7. Manejo de Archivos en C.
7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de
QUÉ ES UN NÚMERO DECIMAL?
QUÉ ES UN NÚMERO DECIMAL? Un número decimal representa un número que no es entero, es decir, los números decimales se utilizan para representar a los números que se encuentran entre un número entero y
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
Autor: Microsoft Licencia: Cita Fuente: Ayuda de Windows
Qué es Recuperación? Recuperación del Panel de control proporciona varias opciones que pueden ayudarle a recuperar el equipo de un error grave. Nota Antes de usar Recuperación, puede probar primero uno
Ampliación de Estructuras de Datos
Ampliación de Estructuras de Datos Amalia Duch Barcelona, marzo de 2007 Índice 1. Diccionarios implementados con árboles binarios de búsqueda 1 2. TAD Cola de Prioridad 4 3. Heapsort 8 1. Diccionarios
Gobierno del Estado de México
Gobierno del Estado de México Escuela Preparatoria Oficial No. 82 José Revueltas Hay que alcanzar la exaltación verdadera, para lograrlo, hay que ser serenos, sin prisas, estudiar, trabajar y disciplinarse
Manejo de datos. Manejo de datos Diapositiva 1
Manejo de datos Formulario de datos Operaciones con un formulario de datos Filtro avanzado Validación Validación: Criterios Validación: Datos no válidos Quitar duplicados Texto en columnas Consolidar Tablas
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.
1. Objetivos. 2. Idea Principal. Teoría de Autómatas y Lenguajes Formales. Boletín de Autoevaluación 3: Cómo se minimiza un AFD?.
Teoría de Autómatas y Lenguajes Formales Boletín de Autoevaluación 3: Cómo se minimiza un AFD?.. Objetivos. El objetivo de este boletín es ilustrar uno de los métodos ue permiten obtener el Autómata Finito
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
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
MANUAL DE LA APLICACIÓN HELP DESK
CASAMOTOR MANUAL DE LA APLICACIÓN HELP DESK Desarrollado por: NOVIEMBRE, 2012 BOGOTÁ D.C. - COLOMBIA INTRODUCCIÓN Este documento es el manual de la aplicación de Help Desk de Casamotor, producto desarrollado
Sintaxis y Convenciones de Java. M. en C. Erika Vilches
Sintaxis y Convenciones de Java M. en C. Erika Vilches Estructura del Código en Java Hay una clase en un archivo fuente Hay métodos en una clase Hay enunciados en un método Anatomía de una Clase Cuando
