35
“AÑO DE LA CONSOLIDACION DEL MAR DE GRAU” ESCUELA TECNOLOGICA SUPERIOR DE LA UNIVERSIDAD NACIONAL DE PIURA ANALISIS DE SISTEMAS TEMA: TRABAJO DE EXPOSICION CURSO: ALGORITMOS 2 PROFESOR: JOSE MONCADA MORALES ALUMNO: ARROYO MARCHAN CHRISTIAN GARCIA SANCHEZ ANDERSON PACHERREZ SERNAQUE KEN FECHA : 26/10/16 PIURA-PERU

Investigar y describa la resolución de problemas empleando computadoras

Embed Size (px)

Citation preview

Page 1: Investigar y describa la resolución de problemas empleando computadoras

“AÑO DE LA CONSOLIDACION DEL MAR DE GRAU”

ESCUELA TECNOLOGICA SUPERIOR DE LA UNIVERSIDAD NACIONAL DE PIURA

ANALISIS DE SISTEMAS

TEMA: TRABAJO DE EXPOSICION

CURSO: ALGORITMOS 2

PROFESOR: JOSE MONCADA MORALES

ALUMNO: ARROYO MARCHAN CHRISTIAN

GARCIA SANCHEZ ANDERSON

PACHERREZ SERNAQUE KEN

FECHA : 26/10/16

PIURA-PERU

Page 2: Investigar y describa la resolución de problemas empleando computadoras

1. Investigar y describa la resolución de problemas empleando computadoras.

La solución de un problema por computadora, requiere de nueve pasos, dispuestos de tal forma que cada uno es dependiente de los anteriores, lo cual indica que se trata de un proceso complementario y por lo tanto cada paso exige el mismo cuidado en su elaboración. Conduce a la escritura de un programa y a su ejecución en la misma. Aunque el proceso de diseñar programas es esencialmente un proceso creativo, se pueden considerar una serie de fases o pasos comunes, que generalmente deben seguir todos los programadores.

Los nueve pasos de la metodología son los siguientes:

FASE DE RESOLUCION DEL PROBLEMA

Definición del problema Está dada por el enunciado del problema, el cuál debe ser claro y completo. Es importante que conozcamos exactamente que se desea del computador; mientras qué esto no se comprenda, no tiene caso pasar a la siguiente etapa.

Análisis del problema Consiste en establecer una serie de preguntas acerca de lo que establece el problema, para poder determinar si se cuenta con los elementos suficientes para llevar a cabo la solución del mismo. algunas preguntas son:

Page 3: Investigar y describa la resolución de problemas empleando computadoras

¿Con qué cuento? Cuáles son los datos con los que se va a iniciar el proceso, qué tenemos que proporcionarle a la computadora y si los datos con los que cuento son suficientes para dar solución al problema.

¿Qué hago con esos datos? Una vez que tenemos todos los datos que necesitamos, debemos determinar qué hacer con ellos, es decir que fórmula, cálculos, que proceso o transformación deben seguir los datos para convertirse en resultados.

¿Qué se espera obtener? Que información deseamos obtener con el proceso de datos y de qué forma presentarla; en caso de la información obtenida no sea la deseada replantear nuevamente un análisis en los puntos anteriores.Es recomendable que nos pongamos en el lugar de la computadora y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para producir los resultados esperados.

Diseño del algoritmo Una vez analizado el problema, se diseña una solución que conducirá a un algoritmo que resuelva el problema. se procede a la creación del algoritmo (Diagrama de flujo ó pseudocódigo), en el cual se da la serie de pasos ordenados que nos proporcione un método explícito para la solución del problema.

Verificación del algoritmo Estas pruebas consisten en dar valores a la variable e ir probando el algoritmo paso a paso para obtener una solución y si ésta es satisfactoria continuar con el siguiente paso de la metodología; de no ser así y de existir errores deben corregirse y volver a hacer las pruebas de escritorio al algoritmo.

FASE DE IMPLEMENTACION

Codificación del algoritmo Consiste en escribir la solución del problema (de acuerdo al pseudocodigo); en una serie de instrucciones detalladas en un código reconocible por la computadora; es decir un lenguaje de programación (ya sea de bajo o alto nivel), a esta serie de instrucciones se le conoce como PROGRAMA. la solución se escribe en la sintaxis del lenguaje de alto nivel (por ejemplo, C ) y se obtiene un programa.

Ejecución del programa Ejecutar el programa después del ser compilado.El cual analiza todo el programa fuente y detecta errores de sintaxis ocasionados por fallas en la codificación o en la transcripción.

Verificación del programa Revisar que el programa de los resultados que el usuario quiere, hay que revisar si hay algún error el cual puede ser de tipo lógico, de semántica o ejecución.

Documentación Es la guía o comunicación escrita que sirve como ayuda para usar el programa, o facilitar futuras modificaciones. A menudo, un programa escrito por una persona es usado por muchas otras, por ello la documentación

Page 4: Investigar y describa la resolución de problemas empleando computadoras

es muy importante; esta debe presentarse en tres formas: EXTERNA, INTERNA y al USUARIO FINAL.

-Interna: Consiste en los comentarios o mensajes que se agregan al código de programa, que aplican las funciones que realizan ciertos procesos, cálculos o formulas, para el entendimiento del mismo.-Externa: Está integrada por los siguientes elementos: Descripción del problema, nombre del autor, diagrama de flujo y/o pseudocodigo, listas de variables y constantes, y codificación del programa, esto con la finalidad de permitir su posterior adecuación a los cambios.- Usuario Final: es la documentación que se le proporciona al usuario final, es una guía que indica al usuario como navegar en el programa, presentando todas las pantallas y menús que se va a encontrar y una explicación de los mismos, no contiene información de tipo técnico

Mantenimiento Se lleva a cabo después de terminado el programa, cuando se ha estado trabajando un tiempo, y se detecta que es necesario hacer un cambio, ajuste y/o complementación al programa para que siga trabajando de manera correcta. Para realizar esta función el programa debe estar debidamente documentado, lo cual facilitará la tarea. -Estoy invitando a todos los maestros y profesionales de esta area y/o carrera a colaborar construyendo este sitio dedicado a esta hermosa y util profesion aportando el material apropiado a cada uno de los mas de 1,000 temas que lo componen.

2. Describa cual es el propósito del análisis del problema:

El propósito del análisis de un problema es ayudar al programador para llegar a una cierta comprensión de la naturaleza del problema.El Problema debe de estar bien definido si se desea llegar a una solución satisfactoria.

Page 5: Investigar y describa la resolución de problemas empleando computadoras

Para poder definir con precisión el problema se requiere que las especificaciones de entrada y salida sean descritas con detalle.

Análisis del problemaDespués de haber identificado, seleccionado y definido el problema, el grupo identifica la(s) causa(s) principal(es) del mismo. En esta fase el objetivo es analizar el problema y dividirlo en sus partes componentes, examinando cómo es que van juntas. Es necesario comprender el contexto del problema y como unas partes afectan a otras.

Definición del problemaEs el enunciado del problema, el cual debe ser claro y completo. Es fundamental conocer y delimitar por completo el problema, saber que es lo que se desea que realice la computadora, mientras esto no se conozca del todo, no tiene caso continuar con el siguiente paso. es el primer paso en el diseño de un programa de computadora. Consiste, fundamentalmente, en definir cual es la "SITUACIÓN QUE INTENTAMOS RESOLVER"Especificación de datos de entradaDonde va a hacer un almacenamiento, va a procesar el programa al sistema hacia la base de datos.A los datos de entrada se les considera la materia prima de los datos de salida, considerados estos como la verdadera información.Especificación de datos de salidaDonde los datos derivados, es decir, obtenidos a partir de los datos de entrada.Por esta razón, a los datos de salida se les considera más significativos que a los datos de entrada.

3. Cuáles son las características de un buen algoritmo son:

CARACTERISTICAS DE LOS ALGORITMOSLas características fundamentales que debe cumplir todo algoritmo son:

Un algoritmo debe ser preciso e indicar el orden de realización de cada paso. Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener

el mismo resultado cada vez. Un algoritmo debe ser finito. el algoritmo se debe terminar en algún momento; o sea,

debe tener un número finito de pasos. Un algoritmo debe ser legibles: El texto que lo describe debe ser claro, tal que permita

entenderlo y leerlo fácilmente.Un algoritmo debe definir tres partes: Entrada, Proceso y Salida. Ejemplo: el algoritmo de receta de cocina se tendrá:

Entrada: ingrediente y utensilios. Proceso: elaboración de la receta en la cocina. Salida: terminación del plato (por ejemplo, Pollo al horno)

4. En el diseño de un algoritmo tomamos en cuenta el siguiente desarrollo:

Page 6: Investigar y describa la resolución de problemas empleando computadoras

Hable brevemente de cada uno de ellos y de ejemplos de cada uno.

Diseño del algoritmo

Método específico para poder crear un modelo matemático ajustado a un problema específico para resolverlo. El diseño de algoritmos es una teoría de la Investigación de operaciones.

- Diseño descendente La programación descendente o "Top - Down" es el proceso mediante el cual un problema se descompone en una serie de niveles o pasos sucesivos de refinamiento (stepwise). La metodología descendente consiste en efectuar una relación entre las sucesivas etapas de estructuración de modo que exista una relación entre ellas mediante entradas y salidas de información. El problema se descompone en varias estructuras jerárquicas, de forma que se pueda considerar cada estructura desde dos puntos de vista: ¿qué hace? y ¿cómo lo hace?.Es una forma de afrontar un proyecto de programación que consiste en empezar por lo más general e ir avanzando nivel a nivel hacia lo más particular. ejemplo

Page 7: Investigar y describa la resolución de problemas empleando computadoras

- Divide y venceras El término divide y vencerás (DYV) hace referencia a uno de los más importantes paradigmas de diseño algorítmico. El método está basado en la resolución recursiva de un problema dividiéndolo en dos o más subproblemas de igual tipo o similar. El proceso continúa hasta que éstos llegan a ser lo suficientemente sencillos como para que se resuelvan directamente. Al final, las soluciones a cada uno de los subproblemas se combinan para dar una solución al problema original.Ejemplo

AlgoritmoDyV (p: TipoProblema): TipoSolucion if esCasoBase(p) return resuelve(p) else subproblemas: array of TipoProblema subproblemas = divideEnSubproblemas(p) soluciones_parciales: array of TipoSolucion for each sp in subproblemas soluciones_parciales.push_back(AlgoritmoDYV(sp)) endFor return mezcla(soluciones_parciales) endIf finAlgoritmoDyV

Page 8: Investigar y describa la resolución de problemas empleando computadoras

Diseñe un algoritmo “Divide y Vencerás” que calcule xn (x elevado a n) con un coste O(n log n).

int exponencial_n(int base, int exponente){ 

int resultado_parcial;int exponente_actual;

 switch(exponente){

case 0:return 1;

break; 

case 1:return base;

break; 

case 2:return (base * base);

break; 

default:exponente_actual = exponente/2; /*Dividimos a la

mitad*/resultado_parcial = exponencial_n(base,

exponente_actual); 

if(exponente % 2 == 0)return resultado_parcial*resultado_parcial;

/*si el exponente es par*/else

return resultado_parcial*resultado_parcial*base; /*si es impar*/

}}

- Refinamientos por pasos El diseño de un algoritmo no se hace de una sola vez, sino que se va resolviendo en una secuencia de pasos (llamados pasos de refinamiento).En cada paso el problema es refinado agregando detalles significativos, por lo que el método se conoce como: método de los refinamientos sucesivos.Como es natural, dependiendo de la complejidad del problema se necesitaran diferentes y sucesivos niveles de refinamiento antes de que pueda obtenerse un algoritmo con suficiente nivel de detalle. Ejemplo: El problema del cálculo de la circunferencia y superficie de un círculo se puede descomponer en sub problemas más simples: leer datos de entrada, calcular superficie y longitud, y escribir resultados.Ejemplo

Page 9: Investigar y describa la resolución de problemas empleando computadoras

- Herramienta de representación Diagrama de flujo Un diagrama de flujo utiliza símbolos

estándar en el que cada paso del algoritmo se visualiza dentro del símbolo y en el orden en que estos pasos se ejecutan, se indica conectándolos con flechas llamadas líneas de flujo, ya que indican el flujo lógico del algoritmo.Ejemplo Elabora el algoritmo y el diagrama de flujo para calcular el área de un cuadrado.

Page 10: Investigar y describa la resolución de problemas empleando computadoras

Pseudocodigo El pseudocódigo es una herramienta utilizada para el diseño de programas que permite al programador expresar sus pensamientos de una forma clara utilizando su lenguaje natural y mostrando el orden de ejecución de las sentencias del programa sin ninguna ambigüedad.Ejemplo

Diagramas Nassi/shneiderman-S(Chapin) El diagrama estructurado N-S es una técnica hibrida (una mezcla) entre Diagramas de Flujo y Pseudocódigo.Esta técnica, también conocida como Diagrama de Chapín, utiliza una serie de cajas, similar a los diagramas de flujos, pero no requiere la utilización de flechas, debido a que su flujo siempre es descendente.Ejemplo Diseñar un algoritmo para calcular el área y el perímetro de un rectánguloDefinición del problemaCalcular área y perímetro de un rectánguloAnálisis del problemaPara desarrollar este problema es necesario conocer las fórmulas para obtener tanto el área como el perímetro de un rectángulo. Sea b = base y h = altura, las fórmulas a utilizar son:Area = b * hPerímetro = 2 * (b + h)Datos de entrada: b y h (base y altura)Datos de salida: área y perímetroProcesos: área = b * hPerímetro = 2 * (b + h)

Page 11: Investigar y describa la resolución de problemas empleando computadoras

Diseño de la solución

INICIO

Entero: b, h, a, p

Leer b, h

a = b * h

p = 2 (b + h)

Escribir "área:", a

Escribir "perímetro:", pFin algoritmo

Método Warnier Es una metodología estructurada, formada por un conjunto de normas y herramientas que nos permiten solucionar un problema de forma clara y sencilla. Este método se basa en el empleo de Ilaves de distintos tamaños que relacionan entre si todas las tareas y operaciones.La representaci6n del algoritmo se basa en los siguientes puntos:Un programa se representa por un solo diagrama en el cual se engloban todas las operaciones necesarias para la resolución del problema. Estas operaciones estan colocadas secuencialmente a la derecha de una llave. En cuya parte izquierda figura el nombre del programa.En la parte superior de la llave anterior figurará el comentario INICIO.En la parte inferior figurará FIN.

FASES DE LA METODOLOGÍA DE WARNIERLas fases que se siguen para desarrollar un programa son:

Estudio de los datos de salida. Trata de crear el archivo lógico de salida (ALS).

Estudio de los datos de entrada. Trata de crear el archivo lógico de entrada (ALE).

Hacer el cuadro de descomposición de secuencias.

Dibujar el organigrama de secuencias de Warnier.

Construir la lista de instrucciones y asignarlas en el organigrama de secuencias.

Page 12: Investigar y describa la resolución de problemas empleando computadoras

Desarrollar el juego de datos de ensayo y analizar los resultados.

Método Jackson La metodología de Jackson es un proceso sistemático para la realización de un programa, utilizando la técnica del diseño descendente (Top-Down), cuyo producto … método, de tal forma que su codificaci6n posterior en cualquier lenguaje de programaci6n es relativamente sencilla, bien manualmente o de forma automática.Para el diseño de un programa, en general. Se parte de unas especificaciones proporcionadas por el usuario en las cuales se definen y detallan:Las funciones a realizar y su naturaleza.Los datos a manejar y su naturaleza.El resultado final será un programa o conjunto de programas capaces de resolver el problema solicitado. El siguiente grafico nos muestra. Esquemáticamente el proceso de creación' de un programa. ESPECIFICACIONES DE USUARIO

FUNCIONES INFORMACIÓN

A REALIZAR SOBRE LOS DATOS

MÉTODO O ALGORITMO

PROGRAMA

OPERACIONES

DATOS DE ENTRADA DATOS DE SALIDA

DATOS Método Bertini Al igual que el de Jackson la representación de

programas es en forma de árbol denominada diagrama arborescente de Bertini.Un diagrama de Bertini consta de:Definición detallada de los datos de entrada y salida, incluyendo los archivos lógicos utilizados.Representación del proceso o algoritmo.La simbología utilizada se basa en el empleo de rectángulos horizontales y círculos.La lectura del diagrama se hace recorriendo el árbol en orden inverso (RDI), lo que supone realizar :

Situarse en la raíz (R)Recorrer el subárbol derecho (D)

Page 13: Investigar y describa la resolución de problemas empleando computadoras

Recorrer el subárbol izquierdo (I)Cada subárbol se recorre igualmente en orden inverso hasta llegar a las hojas o nodos terminales del árbol.

Método tabourier Se trata de una representación de programas en forma de árbol denominado Diagrama de Tabourier. Para ello se puede utilizar a si mismo la terminología común.Un diagrama de Tabourier consta de:Definición detallada de los datos de entrada y salida.Representación del proceso o algoritmo.La simbología utilizada se basa en el empleo de rectángulos y rombos horizontales.La lectura del diagrama se hace recorriendo el árbol en preorden (RID), lo que supone realizar:Situarse en la raíz (R)Recorrer el subárbol izquierdo (I)Recorrer el subárbol derecho (D)Cada subárbol se recorre igualmente en preorden hasta llegar a las hojas o nodos terminales del árbol.

5. Se tiene las siguientes analogías entre las herramientas de presentación de algoritmos,de un breve ejemplo mediante un cuadro comparativo:

Diagramas de flujo Pseudocodigo Diagramas N-S

pseudocodigo diagram de flujo diagrama n-s

6. Que es un arreglo Unidimensional:

Page 14: Investigar y describa la resolución de problemas empleando computadoras

Dar 5 ejemplos, cada ejemplo debe describir el problema y debe contener el diagrama de flujo y pseudocodigo.

ARREGLO UNIDIMENCIONAL (VECTORES)

Es un tipo de datos estructurado que está formado por una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales. Los datos que se guarden en los arreglos todos deben ser del mismo tipo.

El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto mediante el uso de un índice para cada elemento del arreglo que nos da su posición relativa.

EJEMPLOS

1) Crea un array o arreglo unidimensional con un tamaño de 5, asignale los valores numéricos manualmente (los que tu quieras) y muestralos por pantalla.

Proceso tamaño//Declaramos variablesDefinir num como entero;Definir TAMANIO como entero;TAMANIO<-5//Definimos el arrayDimension num[TAMANIO]

//Asignamos valores num[1]<-1num[2]<-2num[3]<-3 num[4]<-4num[5]<-5 //Recorremos el array y mostramos su contenidoPara i<-1 Hasta TAMANIO Con Paso 1 Hacer

escribir num[i] Fin Para

FinProceso

Page 15: Investigar y describa la resolución de problemas empleando computadoras

2) Crea un array o arreglo unidimensional con un tamaño de 10, inserta los valores numéricos que desees de la manera que quieras y muestra por pantalla la media de valores del array.

Proceso muestra

//Declaramos variablesDefinir num como enteroDefinir TAMANIO como enteroDefinir suma Como EnteroTAMANIO<-10

//Definimos el arrayDimension num[TAMANIO]

Page 16: Investigar y describa la resolución de problemas empleando computadoras

//Introducimos valoresPara i<-1 Hasta TAMANIO Con Paso 1 Hacer

Escribir "Introduce un valor para la posición ",ileer num[i]

Fin Para

//Recorremos el array, sumando su contenidoPara i<-1 Hasta TAMANIO Con Paso 1 Hacer

suma<-suma+num[i]FinPara

FinProceso

3) Crear un arreglo llamado num que almacene los siguientes datos: 20, 14, 8, 0, 5, 19 y24.Proceso ejemplo

//creamos el arreglo le damos un nombre y un tamaño de 7 posicionesDimension num[7];//a cada posicion le damos un datonum[0]<-20;

Page 17: Investigar y describa la resolución de problemas empleando computadoras

num[1]<-14;num[2]<-8;num[3]<-0;num[4]<-5;num[5]<-19;num[6]<-24;//imprimimos los datos asignadosEscribir "el dato en la posicion 0 es:",num[0];Escribir "el dato en la posicion 1 es:",num[1];Escribir "el dato en la posicion 2 es:",num[2];Escribir "el dato en la posicion 3 es:",num[3];Escribir "el dato en la posicion 4 es:",num[4];Escribir "el dato en la posicion 5 es:",num[5];Escribir "el dato en la posicion 6 es:",num[6];

FinProceso

Page 18: Investigar y describa la resolución de problemas empleando computadoras

4) Crear un arreglo de 5 posiciones y llénelo con los números que el usuario desee.Proceso arreglos

//creamos el arreglo le damos un nombre y un tamaño de 5 posicionesDimension num[5];//a cada posicion le damos un dato con el ciclo paraPara i<-0 Hasta 5-1 Con Paso 1 Hacer

//pido los datosEscribir "digite un numero para la posicion",i;Leer numero; //capturo los numeros ingresados en la variable numeronum[1]<-numero;//al arreglo le paso todos los numeros ingresados

Fin Para//imprimamos los datos asignados con un ciclo paraPara i<-0 Hasta 5-1 Con Paso 1 Hacer

Escribir "el dato en la posicion ",i,"es:",num[1];Fin Para

FinProceso

Page 19: Investigar y describa la resolución de problemas empleando computadoras

5) Crear un arreglo de n posiciones y llenarlo con los números que el usuario desee

Proceso posicion//pedimos el tamañoEscribir "digite el tamaño";Leer n;//creamos el arreglo le damos un nombre y le pasamos el tamaño ingresadoDimension num[n];//a cada posicion le damos un dato con el ciclo paraPara i<-1 Hasta n Con Paso 1 Hacer

//pido los datosEscribir "digite un numero para la posicion",i;Leer numero;//al arreglo le paso todos los numeros ingresados

Fin Para//imprimimos los datos asignados con un ciclo paraPara i<-1 Hasta n Con Paso 1 Hacer

Escribir "el dato en la posicion ",i,"es:",num[i];Fin Para

FinProceso

Page 20: Investigar y describa la resolución de problemas empleando computadoras

7. Que es un arreglo Bidimensional: Dar 5 ejemplos, cada ejemplo debe describir el problema y debe contener el

diagrama de flujo y seudocódigo.ARREGLO BIDIMENCIONAL (MATRICES)Los arreglos bidimensionales son tablas de valores. Cada elemento de un arreglo bidimensional está simultáneamente en una fila y en una columna.En matemáticas, a los arreglos bidimensionales se les llama matrices, y son muy utilizados en problemas de Ingeniería. En un arreglo bidimensional, cada elemento tiene una posición que se identifica mediante dos índices: el de su fila y el de su columna.Ejemplos1) Crear una matriz 2x2 que almacene los siguientes valores: 10, 20, 30, 40. Proceso valor

//creamos la matriz y le damos un numero de filas y columnasDimension matriz[2,2];//le damos valores a la matrizmatriz[1,1]<-10;//fila 1 columna 1matriz[1,2]<-20;//fila 1 columna 2matriz[2,1]<-30;//fila 2 columna 1matriz[2,2]<-40;//fila 2 columna 2//imprimimos los datos para su visualizacionEscribir "el dato que hay en la fila 1 y columna 1",matriz[1,1];Escribir "el dato que hay en la fila 1 y columna 2",matriz[1,2];Escribir "el dato que hay en la fila 2 y columna 1",matriz[2,1];Escribir "el dato que hay en la fila 2 y columna 2",matriz[2,2];

FinProceso

Page 21: Investigar y describa la resolución de problemas empleando computadoras

2) Crear una matriz de n filas y n columnas. Llenar la matriz con los números que el usuario desee.

Proceso dat//pedimos el numero de filasEscribir "digite el numero de filas";Leer f;//pedimos el numero de columnasEscribir "digite el numero de columnas";Leer c;//creamos la matriz y le pasamos el numero de filas y columnas

ingresadasDimension matriz[f,c];//llenamos la matriz con dos ciclos para, uno para las filas y otro para

las columnasPara i<-1 Hasta f Con Paso 1 Hacer

Para j<-1 Hasta c Con Paso 1 Hacer//pedimos los datos

Page 22: Investigar y describa la resolución de problemas empleando computadoras

Escribir "digite datos para la fila ",1,"columna",j;Leer numero;//llenamos la matriz con los numeros ingresadosmatriz[i,j]<-numero;

Fin ParaFin Para//mostramos todos los datos que hay en la matriz con dos ciclos paraPara i<-1 Hasta f Con Paso 1 Hacer

Para j<-1 Hasta c Con Paso 1 HacerEscribir "los datos que hay en la matriz son",matriz[i,j];

Fin ParaFin Para

FinProceso

Page 23: Investigar y describa la resolución de problemas empleando computadoras

3) Crea un arreglo o array multidimensional con un tamaño que nosotros le indiquemos por teclado (puede ser 6×4, 7×2, etc.), recorre el array o arreglo e introduce número aleatorios (función azar(x) donde x es el limite donde generara), crea una función llamada rellenaArray. Por último, muestralos por pantalla tal como quedarían en el array o arreglo, es decir, si el array es de 5×5 tendremos que hace que cada 5 números baje una línea, por ejemplo:

5 2 6 8 4

5 4 3 2 1

9 8 7 4 2

9 8 7 5 2

2 3 5 4 2

SubProceso rellenaArray ( num, FILAS, COLUMNAS )

Para i<-1 Hasta FILAS Con Paso 1 HacerPara j<-1 Hasta COLUMNAS Con Paso 1 Hacer

//Genera numeros entre 0 y 9num[i,j]<-azar(10)

Fin ParaFin Para

Fin SubProceso

SubProceso mostrarArray ( num, FILAS, COLUMNAS)Para i<-1 Hasta FILAS Con Paso 1 Hacer

Para j<-1 Hasta COLUMNAS Con Paso 1 Hacerescribir num[i,j]," " Sin Saltar

Fin Para//Salto de lineaescribir ""

Fin ParaFin SubProceso

Proceso Ejercicio7

//Declaramos variablesDefinir num como enteroDefinir FILAS como enteroDefinir COLUMNAS Como Entero

//Definimos las filas y columnas del array por tecladoescribir "Introduce las filas del array"leer FILAS

Page 24: Investigar y describa la resolución de problemas empleando computadoras

escribir "Introduce las columnas del array"leer COLUMNAS

//Definimos el arrayDimension num[FILAS, COLUMNAS]

//Invocamos la funciónrellenaArray(num, FILAS, COLUMNAS)mostrarArray( num, FILAS, COLUMNAS)

FinProceso

Page 25: Investigar y describa la resolución de problemas empleando computadoras
Page 26: Investigar y describa la resolución de problemas empleando computadoras

4) Llenar una matriz de 3 x 3 completamente de números aleatorios entre 0 y 9.Proceso Aleat

//creamos la matriz y le pasamos 3 filas y 3 columnasDimension matriz[3,3];//llenamos la matriz con dos ciclos para, uno para las filas y otro para

las columnasPara i<-1 Hasta 3 Con Paso 1 Hacer

Para j<-1 Hasta 3 Con Paso 1 Hacer//a la matriz le damos numeros aleatorios entre 0 y 9matriz[i,j]<-azar(10);

Fin ParaFin Para//mostramos todos los datos que hay en la matrizPara i<-1 Hasta 3 Con Paso 1 Hacer

Escribir matriz[i,1],"",matriz[i,2],"",matriz[i,3];Fin Para

FinProceso

Page 27: Investigar y describa la resolución de problemas empleando computadoras

5) . Crear una matriz n x n y llenarla con los números que el usuario desee. Sume todos los números que componga la columna 1.Proceso usuar

acum<-0 //acumulador iniciado en cero para sumar los elementos de la columna 1

Escribir "digite el numero de filas"; //pedimos el numero de filasLeer f;Escribir "digite el numero de columnas"; //pedimos el numero de

columnasLeer c;Dimension matriz[f,c];//creamos la matriz y le pasamos el numero de

filas y columnas ingresadas//llenamos la matriz con dos ciclos para, uno para las filas y otro para

las columnasPara i<-1 Hasta f Con Paso 1 Hacer

Para j<-1 Hasta c Con Paso 1 HacerEscribir "digite datos para la fila

",1,"columna",j;//pedimos los datosLeer numero;matriz[i,j]<-numero;//llenamos la matriz con los

numeros ingresados

Page 28: Investigar y describa la resolución de problemas empleando computadoras

Fin Paraacum<-acum+matriz[i,1];//acumulamos y sumamos todos los

numeros que componen la columna 1

Fin Para//mostramos todos los datos que hay en la matriz con dos ciclos paraPara i<-1 Hasta f Con Paso 1 Hacer

Para j<-1 Hasta c Con Paso 1 HacerEscribir matriz[i,j];

Fin ParaFin ParaEscribir "todos los elementos de la columna 1 auman un total

de :",acum //mostramos la sumaFinProceso

Page 29: Investigar y describa la resolución de problemas empleando computadoras