Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Investigar y describa la resolución de problemas empleando computadoras

trabajo de alg 2

  • Login to see the comments

  • Be the first to like this

Investigar y describa la resolución de problemas empleando computadoras

  1. 1. “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 SANCHEZANDERSON PACHERREZSERNAQUE KEN FECHA : 26/10/16 PIURA-PERU
  2. 2. 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:
  3. 3. ¿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íao 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
  4. 4. 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ósitodel análisisde unproblemaesayudaral programadorpara llegara una ciertacomprensiónde lanaturalezadel problema. El Problemadebe de estarbiendefinidosi se deseallegar auna soluciónsatisfactoria.
  5. 5. Para poderdefinirconprecisiónel problemase requiereque lasespecificacionesde entraday salidaseandescritascondetalle. Análisisdel problema Despuésde haberidentificado,seleccionadoydefinidoel problema,el grupoidentifica la(s) causa(s) principal(es) del mismo.Enestafase el objetivoesanalizarel problemay dividirloensuspartescomponentes,examinandocómoesque vanjuntas.Es necesariocomprenderel contextodel problemaycomounas partesafectana otras. Definicióndel problema Es el enunciadodel problema,el cual debe serclaroy completo.Esfundamental conocery delimitarporcompletoel problema,saberque eslo que se deseaque realice lacomputadora,mientrasestonose conozcadel todo,no tiene casocontinuar con el siguiente paso. esel primerpasoenel diseñode unprogramade computadora. Consiste,fundamentalmente,endefinircual esla"SITUACIÓN QUE INTENTAMOS RESOLVER" Especificaciónde datos de entrada Donde va a hacer un almacenamiento,vaaprocesar el programaal sistemahaciala base de datos. A losdatosde entradase lesconsideralamateriaprimade losdatos de salida, consideradosestoscomo laverdaderainformación. Especificaciónde datos de salida Donde los datosderivados,esdecir,obtenidosapartirde losdatos de entrada. Por estarazón,a losdatosde salidase lesconsideramássignificativosque alosdatos de entrada. 3. Cuáles son las características de un buen algoritmo son: CARACTERISTICAS DE LOS ALGORITMOS Las características fundamentalesque debecumplirtodoalgoritmoson:  Un algoritmodebe serpreciso e indicarel ordende realizaciónde cadapaso.  Un algoritmodebe estar definido.Si se sigue unalgoritmodosveces,se debe obtener el mismoresultadocadavez.  Un algoritmodebe serfinito.el algoritmose debe terminarenalgúnmomento;osea, debe tenerunnúmerofinitode pasos.  Un algoritmodebe serlegibles:El textoque lodescribe debe serclaro,tal que permita entenderloyleerlofácilmente. Un algoritmodebe definirtrespartes:Entrada, Procesoy Salida. Ejemplo:el algoritmode recetade cocinase tendrá:  Entrada: ingrediente yutensilios.  Proceso:elaboraciónde larecetaenla cocina.  Salida:terminacióndel plato(porejemplo,Polloal horno) 4. En el diseño de un algoritmo tomamos en cuenta el siguiente desarrollo:
  6. 6. Hable brevemente de cada uno de ellos y de ejemplos de cada uno. Diseño del algoritmo Métodoespecíficoparapodercrear un modelomatemáticoajustadoaunproblemaespecífico para resolverlo.El diseñode algoritmosesunateoríade la Investigaciónde operaciones. - Diseñodescendente Laprogramacióndescendente o"Top - Down"esel procesomediante el cual unproblemase descomponeenunaserie de niveles o pasossucesivosde refinamiento(stepwise).Lametodologíadescendente consiste enefectuarunarelaciónentre lassucesivasetapasde estructuración de modo que existaunarelaciónentre ellasmediante entradasysalidasde información.El problemase descompone envariasestructurasjerárquicas,de formaque se puedaconsiderarcadaestructuradesde dospuntosde vista: ¿qué hace?y ¿cómo lohace?. Es una formade afrontarun proyectode programaciónque consiste en empezarporlo másgeneral e ir avanzandonivel anivel hacialomás particular. ejemplo
  7. 7. - Divide y venceras El términodivide yvencerás(DYV) hace referenciaauno de losmás importantesparadigmasde diseñoalgorítmico.El métodoestá basadoen laresoluciónrecursivade unproblemadividiéndoloendosomás subproblemasde igual tipoosimilar.El procesocontinúahastaque éstos lleganaser losuficientemente sencilloscomoparaque se resuelvan directamente.Al final,lassolucionesacada unode lossubproblemasse combinanpara dar una soluciónal problemaoriginal. Ejemplo AlgoritmoDyV (p:TipoProblema):TipoSolucion if esCasoBase(p) returnresuelve(p) else subproblemas:arrayof TipoProblema subproblemas=divideEnSubproblemas(p) soluciones_parciales:arrayof TipoSolucion for eachsp insubproblemas soluciones_parciales.push_back(AlgoritmoDYV(sp)) endFor returnmezcla(soluciones_parciales) endIf finAlgoritmoDyV
  8. 8. Diseñe unalgoritmo“Divide yVencerás”que calcule xn(x elevadoan) con un coste O(nlog 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*/ } } - Refinamientosporpasos El diseñode unalgoritmonose hace de una solavez, sinoque se va resolviendoenunasecuenciade pasos(llamadospasosde refinamiento). En cada paso el problemaesrefinadoagregandodetallessignificativos,porlo que el métodose conoce como: métodode losrefinamientossucesivos. Comoes natural,dependiendode lacomplejidaddel problemase necesitaran diferentesysucesivosnivelesde refinamientoantesde que puedaobtenerse un algoritmoconsuficientenivel de detalle. Ejemplo:El problemadel cálculode lacircunferenciaysuperficie de uncírculo se puede descomponerensubproblemasmássimples:leerdatosde entrada, calcularsuperficie ylongitud,yescribirresultados. Ejemplo
  9. 9. - Herramienta de representación  Diagrama de flujoUn diagramade flujoutilizasímbolos estándarenel que cada pasodel algoritmose visualizadentro del símbolo y enel ordenenque estospasosse ejecutan,se indicaconectándolosconflechasllamadaslíneasde flujo,ya que indicanel flujológicodel algoritmo. Ejemplo Elaborael algoritmoy el diagramade flujoparacalcular el área de un cuadrado.
  10. 10.  PseudocodigoEl pseudocódigoesunaherramientautilizada para el diseñode programasque permite al programador expresarsuspensamientosde unaformaclarautilizandosu lenguaje natural ymostrandoel ordende ejecuciónde las sentenciasdel programasinningunaambigüedad. Ejemplo  Diagramas Nassi/shneiderman-S(Chapin) El diagramaestructuradoN-Sesuna técnicahibrida(una mezcla) entre Diagramasde FlujoyPseudocódigo.Estatécnica, tambiénconocidacomoDiagramade Chapín,utilizaunaserie de cajas, similaralosdiagramasde flujos,peronorequierela utilizaciónde flechas,debidoaque suflujosiempre es descendente. Ejemplo Diseñarunalgoritmopara calcularel área y el perímetrode un rectángulo Definicióndelproblema Calcularárea y perímetrode unrectángulo Análisisdel problema Para desarrollareste problemaes necesarioconocerlas fórmulasparaobtenertantoel área como el perímetrode un rectángulo. Sea b = base y h = altura,las fórmulasautilizarson: Area= b * h Perímetro= 2 * (b + h) Datos de entrada:b y h (base y altura) Datos de salida:áreay perímetro Procesos: área = b * h Perímetro= 2 * (b + h)
  11. 11. 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:", p Fin algoritmo  MétodoWarnierEs unametodologíaestructurada,formada por un conjuntode normasy herramientasque nospermiten solucionarunproblemade formaclara y sencilla. Este método se basa en el empleode Ilavesde distintostamañosque relacionanentre si todaslastareasy operaciones.La representaci6ndel algoritmose basaenlossiguientespuntos: Un programa se representaporun solodiagramaenel cual se englobantodaslasoperacionesnecesariasparalaresolución del problema.Estasoperacionesestancolocadas secuencialmentealaderechade una llave.Encuya parte izquierdafigurael nombre del programa. En la parte superiorde lallave anteriorfiguraráel comentario INICIO. En la parte inferiorfiguraráFIN. FASES DE LA METODOLOGÍA DE WARNIER Las fasesque se siguenpara desarrollarunprogramason: Estudiode losdatos de salida.Trata de crear el archivológico de salida(ALS). Estudiode losdatos de entrada.Trata de crear el archivo lógicode entrada(ALE). Hacer el cuadro de descomposiciónde secuencias. Dibujarel organigramade secuenciasde Warnier. Construirlalistade instruccionesyasignarlasenel organigramade secuencias.
  12. 12. Desarrollarel juegode datosde ensayoyanalizarlos resultados.  MétodoJackson La metodologíade Jacksonesunproceso sistemáticoparalarealizaciónde unprograma,utilizandola técnicadel diseñodescendente (Top-Down),cuyoproducto … método,de tal formaque su codificaci6nposterioren cualquierlenguaje de programaci6nesrelativamente sencilla, bienmanualmenteode formaautomática.Parael diseñode un programa,engeneral.Se parte de unas especificaciones proporcionadasporel usuarioenlascualesse defineny detallan: Las funcionesarealizarysu naturaleza. Los datosa manejarysu naturaleza. El resultadofinal seráunprogramao conjuntode programas capaces de resolverel problemasolicitado.El siguientegrafico nos muestra.Esquemáticamente el procesode creación'de un programa. ESPECIFICACIONESDEUSUARIO FUNCIONESINFORMACIÓN A REALIZARSOBRE LOS DATOS MÉTODO O ALGORITMO PROGRAMA OPERACIONES DATOSDE ENTRADA DATOSDE SALIDA DATOS  MétodoBertini Al igual que el de Jacksonla representaciónde programases enforma de árbol denominadadiagrama arborescente de Bertini. Un diagrama de Bertini constade: Definicióndetalladade los datosde entraday salida, incluyendolosarchivoslógicosutilizados. Representacióndel procesooalgoritmo. La simbologíautilizadase basaenel empleode rectángulos horizontalesycírculos. La lecturadel diagramase hace recorriendoel árbol enorden inverso(RDI),loque supone realizar: Situarse enlaraíz (R) Recorrerel subárbol derecho(D)
  13. 13. Recorrerel subárbol izquierdo(I) Cada subárbol se recorre igualmente enordeninversohasta llegara lashojaso nodosterminalesdel árbol.  Métodotabourier Se trata de una representaciónde programasen formade árbol denominadoDiagramade Tabourier.Paraellose puede utilizarasi mismola terminologíacomún. Un diagrama de Tabourierconstade: Definicióndetalladade losdatosde entraday salida. Representacióndel procesooalgoritmo. La simbologíautilizadase basaenel empleode rectángulosy romboshorizontales. La lecturadel diagramase hace recorriendoel árbol en preorden(RID),loque supone realizar: Situarse enlaraíz (R) Recorrerel subárbol izquierdo(I) Recorrerel subárbol derecho(D) Cada subárbol se recorre igualmente enpreordenhastallegar a las hojaso nodosterminalesdelárbol. 5. Se tiene las siguientes analogías entre las herramientas de presentación de algoritmos,de un breve ejemplo mediante un cuadro comparativo:  Diagramasde flujo  Pseudocodigo  DiagramasN-S pseudocodigo diagramde flujo diagraman-s 6. Que es un arreglo Unidimensional:
  14. 14.  Dar 5 ejemplos, cadaejemplodebedescribirel problemaydebe contenerel diagramade flujoypseudocodigo. ARREGLO UNIDIMENCIONAL(VECTORES) Es untipode datosestructuradoque estáformadopor unacolecciónfinitayordenadade datosdel mismotipo.Es laestructura natural para modelarlistasde elementosiguales.Los datosque se guardenenlosarreglos todosdebenserdel mismotipo. El tipode acceso a losarreglosunidimensionalesesel accesodirecto,esdecir,podemos accedera cualquierelementodel arreglosintenerque consultaraelementosanterioreso posteriores,estomedianteel usode uníndice para cada elementodel arregloque nosdasu posiciónrelativa. EJEMPLOS 1) Crea un array o arreglounidimensional conuntamañode 5, asignale losvaloresnuméricos manualmente (losque tuquieras) ymuestralosporpantalla. Procesotamaño //Declaramosvariables Definirnumcomoentero; DefinirTAMANIOcomoentero; TAMANIO<-5 //Definimosel array Dimensionnum[TAMANIO] //Asignamosvalores num[1]<-1 num[2]<-2 num[3]<-3 num[4]<-4 num[5]<-5 //Recorremosel arrayy mostramossucontenido Para i<-1 Hasta TAMANIOCon Paso1 Hacer escribirnum[i] FinPara FinProceso
  15. 15. 2) Crea un array o arreglounidimensional conuntamañode 10, insertalosvaloresnuméricos que deseesde lamaneraque quierasymuestrapor pantallalamediade valoresdel array. Procesomuestra //Declaramosvariables Definirnumcomoentero DefinirTAMANIOcomoentero DefinirsumaComoEntero TAMANIO<-10 //Definimosel array Dimensionnum[TAMANIO]
  16. 16. //Introducimosvalores Para i<-1 Hasta TAMANIOCon Paso1 Hacer Escribir"Introduce unvalorpara laposición",i leernum[i] FinPara //Recorremosel array,sumandosucontenido Para i<-1 Hasta TAMANIOCon Paso1 Hacer suma<-suma+num[i] FinPara FinProceso 3) Crear un arreglollamadonumque almacene lossiguientesdatos:20,14, 8, 0, 5, 19 y 24. Procesoejemplo //creamosel arreglole damosunnombre y un tamañode 7 posiciones Dimensionnum[7]; //a cada posicionle damosundato num[0]<-20;
  17. 17. num[1]<-14; num[2]<-8; num[3]<-0; num[4]<-5; num[5]<-19; num[6]<-24; //imprimimoslosdatosasignados Escribir"el dato enla posicion0es:",num[0]; Escribir"el dato enla posicion1es:",num[1]; Escribir"el dato enla posicion2es:",num[2]; Escribir"el dato enla posicion3es:",num[3]; Escribir"el dato enla posicion4es:",num[4]; Escribir"el dato enla posicion5es:",num[5]; Escribir"el dato enla posicion6es:",num[6]; FinProceso
  18. 18. 4) Crear un arreglode 5 posicionesylléneloconlosnúmerosque el usuariodesee. Procesoarreglos //creamosel arreglole damosunnombre y un tamañode 5 posiciones Dimensionnum[5]; //a cada posicionle damosundato con el ciclopara Para i<-0 Hasta 5-1 ConPaso 1 Hacer //pidolosdatos Escribir"digite unnumeroparala posicion",i; Leernumero;//capturolosnumerosingresadosenlavariable numero num[1]<-numero;//al arreglole pasotodoslosnumerosingresados FinPara //imprimamoslosdatosasignadosconunciclopara Para i<-0 Hasta 5-1 ConPaso 1 Hacer Escribir"el dato enla posicion",i,"es:",num[1]; FinPara FinProceso
  19. 19. 5) Crear un arreglode n posicionesyllenarloconlosnúmerosque el usuariodesee Procesoposicion //pedimosel tamaño Escribir"digite el tamaño"; Leern; //creamosel arreglole damosunnombre y le pasamosel tamañoingresado Dimensionnum[n]; //a cada posicionle damosundato con el ciclopara Para i<-1 Hasta n Con Paso1 Hacer //pidolosdatos Escribir"digite unnumeroparala posicion",i; Leernumero;//al arreglole pasotodoslos numerosingresados FinPara //imprimimoslosdatosasignadosconunciclopara Para i<-1 Hasta n Con Paso1 Hacer Escribir"el dato enla posicion",i,"es:",num[i]; FinPara FinProceso
  20. 20. 7. Que es un arreglo Bidimensional:  Dar 5 ejemplos,cadaejemplodebedescribirel problemaydebe contenerel diagramade flujoy seudocódigo. ARREGLO BIDIMENCIONAL (MATRICES) Los arreglosbidimensionalessontablasde valores.Cadaelementode un arreglobidimensional estásimultáneamente enunafilayenunacolumna .En matemáticas,alosarreglosbidimensionalesse lesllamamatrices,yson muyutilizadosenproblemasde Ingeniería.En unarreglobidimensional,cada elementotiene unaposiciónque se identificamediante dosíndices:el de su filay el de su columna. Ejemplos 1) Crear una matriz2x2 que almacene lossiguientesvalores:10,20, 30, 40. Procesovalor //creamoslamatriz y le damos unnumerode filasy columnas Dimensionmatriz[2,2]; //le damosvaloresala matriz matriz[1,1]<-10;//fila1columna1 matriz[1,2]<-20;//fila1columna2 matriz[2,1]<-30;//fila2columna1 matriz[2,2]<-40;//fila2columna2 //imprimimos losdatosparasu visualizacion Escribir"el dato que hayen lafila1 y columna1",matriz[1,1]; Escribir"el dato que hayen lafila1 y columna2",matriz[1,2]; Escribir"el dato que hayen lafila2 y columna1",matriz[2,1]; Escribir"el dato que hay en lafila2 y columna2",matriz[2,2]; FinProceso
  21. 21. 2) Crear una matrizde n filasy n columnas.Llenarlamatrizcon losnúmeros que el usuariodesee. Procesodat //pedimosel numerode filas Escribir"digite el numerode filas"; Leerf; //pedimos el numerode columnas Escribir"digite el numerode columnas"; Leerc; //creamoslamatrizy le pasamosel numerode filasy columnas ingresadas Dimensionmatriz[f,c]; //llenamoslamatrizcondosciclospara, unopara lasfilasyotro para lascolumnas Para i<-1 Hasta f Con Paso1 Hacer Para j<-1 Hasta c ConPaso 1 Hacer //pedimoslosdatos
  22. 22. Escribir"digite datospara lafila",1,"columna",j; Leernumero; //llenamoslamatrizconlosnumerosingresados matriz[i,j]<-numero; FinPara FinPara //mostramostodoslosdatosque hay enla matrizcon dosciclospara Para i<-1 Hasta f Con Paso1 Hacer Para j<-1 Hasta c ConPaso 1 Hacer Escribir"losdatos que hayen lamatriz son",matriz[i,j]; FinPara FinPara FinProceso
  23. 23. 3) Crea un arreglooarray multidimensional conuntamañoque nosotrosle indiquemosporteclado(puedeser6×4, 7×2, etc.),recorre el array o arregloe introduce númeroaleatorios(funciónazar(x) donde x esel limitedonde generara),creauna funciónllamadarellenaArray.Porúltimo,muestralospor pantallatal como quedaríanenel array o arreglo,esdecir,si el array esde 5×5 tendremosque hace que cada5 númerosbaje unalínea,porejemplo: 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 SubProcesorellenaArray( num, FILAS,COLUMNAS) Para i<-1 Hasta FILASCon Paso1 Hacer Para j<-1 Hasta COLUMNAS Con Paso1 Hacer //Generanumerosentre 0y 9 num[i,j]<-azar(10) FinPara FinPara FinSubProceso SubProceso mostrarArray( num, FILAS,COLUMNAS) Para i<-1 Hasta FILASCon Paso1 Hacer Para j<-1 Hasta COLUMNAS Con Paso1 Hacer escribirnum[i,j],""SinSaltar FinPara //Saltode linea escribir"" FinPara FinSubProceso ProcesoEjercicio7 //Declaramosvariables Definirnumcomoentero DefinirFILAScomoentero DefinirCOLUMNASComoEntero //Definimoslasfilasycolumnasdel arrayporteclado escribir"Introduce lasfilasdel array" leerFILAS
  24. 24. escribir"Introduce lascolumnasdel array" leerCOLUMNAS //Definimosel array Dimensionnum[FILAS,COLUMNAS] //Invocamoslafunción rellenaArray(num, FILAS,COLUMNAS) mostrarArray( num, FILAS,COLUMNAS) FinProceso
  25. 25. 4) Llenaruna matrizde 3 x 3 completamente de númerosaleatoriosentre 0y 9. ProcesoAleat //creamoslamatrizy le pasamos3 filasy3 columnas Dimensionmatriz[3,3]; //llenamoslamatrizcondosciclospara, unopara lasfilasyotro para lascolumnas Para i<-1 Hasta 3 Con Paso 1 Hacer Para j<-1 Hasta 3 Con Paso1 Hacer //a lamatriz le damosnumerosaleatoriosentre 0y9 matriz[i,j]<-azar(10); FinPara FinPara //mostramostodoslosdatosque hay enla matriz Para i<-1 Hasta 3 Con Paso1 Hacer Escribirmatriz[i,1],"",matriz[i,2],"",matriz[i,3]; FinPara FinProceso
  26. 26. 5) . Crear una matrizn x n y llenarlaconlosnúmerosque el usuariodesee. Sume todoslosnúmerosque compongalacolumna1. Procesousuar acum<-0 //acumuladoriniciadoenceropara sumar loselementosde la columna1 Escribir"digite el numerode filas";//pedimosel numerode filas Leerf; Escribir"digite el numerode columnas";//pedimosel numerode columnas Leerc; Dimensionmatriz[f,c];//creamoslamatrizyle pasamosel numerode filasy columnasingresadas //llenamoslamatrizcondosciclospara, unopara lasfilasyotro para lascolumnas Para i<-1 Hasta f Con Paso1 Hacer Para j<-1 Hasta c ConPaso 1 Hacer Escribir"digite datospara lafila ",1,"columna",j;//pedimoslosdatos Leernumero; matriz[i,j]<-numero;//llenamoslamatrizconlos numerosingresados
  27. 27. FinPara acum<-acum+matriz[i,1];//acumulamosysumamostodoslos numerosque componenlacolumna1 FinPara //mostramostodoslosdatosque hay enla matrizcon dosciclospara Para i<-1 Hasta f Con Paso1 Hacer Para j<-1 Hasta c ConPaso 1 Hacer Escribirmatriz[i,j]; FinPara FinPara Escribir"todosloselementosde lacolumna1auman un total de :",acum//mostramoslasuma FinProceso

×