0% encontró este documento útil (0 votos)
38 vistas4 páginas

Arreglos Bidimensionales y Multidimensionales en C

Este documento presenta un trabajo práctico sobre arreglos bidimensionales y multidimensionales en lenguaje C. Propone 8 problemas con arreglos bidimensionales que involucran cargar, mostrar, ordenar y buscar datos en matrices. También propone 4 problemas con arreglos multidimensionales que implican cargar, sumar, encontrar valores y listar datos en estructuras multidimensionales. Explica cómo generar números aleatorios para cargar los arreglos de forma aleatoria.

Cargado por

cristian zarate
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
38 vistas4 páginas

Arreglos Bidimensionales y Multidimensionales en C

Este documento presenta un trabajo práctico sobre arreglos bidimensionales y multidimensionales en lenguaje C. Propone 8 problemas con arreglos bidimensionales que involucran cargar, mostrar, ordenar y buscar datos en matrices. También propone 4 problemas con arreglos multidimensionales que implican cargar, sumar, encontrar valores y listar datos en estructuras multidimensionales. Explica cómo generar números aleatorios para cargar los arreglos de forma aleatoria.

Cargado por

cristian zarate
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD TECNOLÓGICA NACIONAL

Facultad Regional Tucumán TRABAJO PRÁCTICO


Departamento SISTEMAS
Nº 06
Cátedra: Algoritmos y Estructuras de Datos
Ciclo 2023/2024

Que el alumno comprenda el concepto de datos, los seleccione adecuadamente y los


organice en forma estructurada.
Que el alumno describa las aplicaciones adecuadas de los arreglos bidimensionales y
multidimensionales. Que en el álgebra se conoce como matriz.
Que el alumno aprenda a realizar diferentes tipos de operaciones, ordenamientos y búsqueda de
datos dentro de un arreglo bidimensional y Multidimensional.
Que el alumno aprenda a representar y resolver en lenguaje c las estructuras de datos de los
arreglos bidimensionales y multidimensionales.

1. Definición de dato estructurado.


2. Arreglos bidimensionales: definición, lectura e impresión,
3. Operaciones con Arreglos paralelos, métodos de búsqueda, método de ordenamiento con
un arreglo y con arreglos paralelos.
4. Operaciones por fila/s y por columna/s.
5. Operaciones con distintos tipos de Arreglos.
6. Operaciones: suma, resta, multiplicación de un escalar a un arreglo y de arreglos
bidimensional.
7. Método de búsqueda.
8. Diferentes métodos de ordenamiento.
9. Representación en lenguaje C.

Algoritmo y Estructura de Datos – AED 2023 - Pagina 1


Profesor Docente: TP 06
Comisión
ARREGLOS BI y
1K____ Auxiliar Docente: MULTIDIMENSIONALES
Legajo Apellido y Nombre Entrega___/___/___

Problemas Propuestos

Dados los siguientes enunciados de problemas con arreglos bidimensionales o arreglos


multidimensionales, encuentre una solución para cada uno de los problemas propuestos.

Problemas de Arreglos Bidimensionales (Matriz)

01)  Dado un de MxN donde M=4 y N=3 cuyo contenido son números
reales.

a. Haciendo uso de una función SIN TIPO, Ingrese elementos a la matriz.


b. Haciendo uso de una función CON TIPO, encuentre el mayor y menor elemento de la matriz. Los
valores se mostraran en la función principal main.
c. Usando una función SIN TIPO, liste los elementos de la matriz separados por un guion medio de
manera que se visualicen sus datos en forma de matriz (filas y columnas).
02)  Ingresar los elementos de una matriz donde sus elementos son números enteros. El orden de la
matriz es MxN.
Diagrama de flujo y Codificación en C
a. Realizar la carga de la matriz por medio de una función sin tipo. Al ingresar un valor negativo o
cero mostrar mensaje de error y volver a ingresar el valor para dicha celda.
b. Mostrar la matriz por medio de una función.
c. Cambiar un elemento de la matriz, de una posición ingresada por teclado, por el valor cero.
Utilizar la función realizada en el punto b para mostrar como quedo.
d. Mostrar los elementos de una fila “X”, ingresando el número de fila, por teclado.
e. Mostrar los elementos de una Columna “Y”, ingresando el número de columna por teclado.
03) Una empresa que se dedica a la producción de ropa masculina, posee N taller para la confección
de las prendas que comercializa, que son pantalones, camisas y remeras. La cantidad mensual
producida de pantalones, camisas y remeras por cada una de sus fábricas son registradas en una
matriz. ¿Determinar el orden de la matriz M x N?

a. Realizar la carga de la matriz, de manera aleatoria.


b. Mostrar la cantidad producida de cada una de sus prendas en los N talleres.
c. Usando una función calcular y mostrar en la función main() cual fue el taller que tuvo mayor
producción.
d. resultado en la función main().
e. d. Realizar la carga de la matriz.

04)  Se tiene una matriz A de orden M*N de números enteros

a. Realizar la carga de la matriz A, puede hacerse de manera aleatoria. Ver ejemplo al final del TP
b. Obtener la Matriz B que es la matriz traspuesta o transpuesta de At.
c. Mostrar la matriz A y la Matriz B

Algoritmo y Estructura de Datos – AED 2023 - Pagina 2


Problemas de Arreglos Multidimensionales

05)  Se tiene un de orden MxNxP de valores enteros.

a. Usando una función SIN TIPO, realizar la carga del Arreglo Multidimensional.
b. Usando una función, llenar un vector donde cada elemento del vector corresponde a la suma de
todos los elementos del plano del arreglo Multidimensional. (Nota: La suma de los elementos del plano
cero se almacena en la posición cero del vector, La suma de los elementos del plano uno se almacena en
la posición uno del vector, La suma de los elementos del plano dos se almacena en la posición dos del
vector,…., así hasta sumar todos los planos).
c. Usando una función SIN TIPO, listar el vector.
d. Usando una función CON TIPO, calcular el promedio del vector y mostrar en main.

06) Se tiene una Arreglo Multidimensional de orden MxNxP con valores reales.

:
a. Realizar la carga del Arreglo Multidimensional, por medio de una función SIN TIPO.
b. Por medio de una función CON TIPO, encontrar el menor valor dentro del Arreglo Multidimensional.
c. Por medio de una función CON TIPO, determinar si el menor valor encontrado es o no par.

07) Una empresa internacional, comercializa en 3 países los 4 productos que produce a través de sus 2
sucursales. Los datos de ventas están registrado en una matriz multidimensional MxNxP. Donde P
representa países, M representa las sucursales y N representan los productos.

a. Defina y realizar la carga de las ventas en la matriz, por medio de una función.
b. Usando una función CON TIPO, calcule y muestre en main cual fue el país que más vendió.
c. Usando una función CON o SIN TIPO según estime conveniente. Realizar un listado que muestre el
total de venta de cada una de las sucursales.

08) Se tiene un Arreglo Multidimensional de valores enteros, de orden MxNxP.

a. Realizar la carga del Arreglo Multidimensional, por medio de una función.


b. Mediante una función, Realizar la carga a un vector, que contendrá en cada elemento la suma de los
elementos de cada plano de la Arreglo Multidimensional. (Nota: Tener en cuenta el orden que se deberá dar al
vector en su definición).
c. Mostrar el vector generado a través de una función sin tipo.

Ejercicios Adicionales
Esteejercicio solo debe ser realizado, por los alumnos que no presentaron el TP en
la fecha estipulada.

09) Una cadena de P hoteles registra en cada uno de los hoteles, la cantidad de personas que ocupan las
M habitaciones de los N pisos. En cada hotel la información queda registrada de la siguiente manera:

a. Ingresar los datos de manera aleatoria, ten en cuenta que por habitación solo pueden estar entre 1 y
3 huéspedes.
b. Determinar cuál es el número de hotel que tiene mayor cantidad de personas alojadas.

Algoritmo y Estructura de Datos – AED 2023 - Pagina 3


El siguiente ejemplo tiene por objetivo dar una idea para la generación de valores enteros de manera
aleatoria.

Se utilizaran las siguientes funciones para obtener Números aleatorios EN C:


#include <time.h>
a bibli tecas necesaria donde están algunas unciones que se utili aran.
#include <stdio.h>
De ine e iniciali a la variable se illa con el tiempo obtenido de a ci time
int semilla = ;
e encuentra en la biblioteca ti e.h
Intr duce el valor entero de la variable se illa para ser utili ado como val r i ici l r el
semilla ; alg ritmo del generador de números pseudoaleatorios.
Devuelve un valor de tipo entero positivo, incluido el cero. as unción y e
encuentra en la biblioteca stdlib.h
a rm la permite generar números comprendidos un determinado rango d r el v l r
inicial y el valor inal 1. Por ejemplo,
Para retornar números entre 0 y 100: Nu and()%101;
NroI ici l + and() Nro inal NroInicial 1);
Para retornar números entre 10 y 100: Ve tor[2] 10 ( and()%91);

Para retornar números entre 15 y 500: atri [3][5] 15 ( and()%486);

------------------------------------------------------------
Ejemplo: este ejemplo solo muestra en pantalla 20 números
generados entre un rango de valores.
------------------------------------------------------------
#include <stdio.h>
#include <time.h>

/*----------------------------------------------
Función que devuelve un valor entero Generado de manera aleatoria entre el valor inicial y el valor final
-------------------------------------------------*/
int aleatorio(int valor_Inicial, int valor_Final)
{
int ale ;
valor_Final = valor_Final – valor_Inicial + 1; //Recalcula el valor final, en su fórmula general.
ale = valor_Inicial + rand() % valor_Final; //función rand() -> genera un valor aleatorio entre 0 y el valor_Final
return ale;
}

/*------------------------------------
Bloque Principal
---------------------------------------*/
int main()
{
int i, numAl;
int sem = time(NULL); //Función time(NULL)-> devuelve el tiempo en formato condensado y se le asigna a una variable en este caso sem.
srand(sem); // Función srand() -> se encarga de asignar el valor para que a partir de dicho valor comience a generar numero aleatorio
for(i=0; i<20 ; i++) // ciclo for para generar 20 valores aleatorios entre 0 y 100

{
numAl = aleatorio(99); //Llamada a la función aleatorio() para obtener y devolver un valor entero aleatorio.

printf("%d\n", numAl ); //En este caso, solo muestra los valores

}
return 0;
}

Algoritmo y Estructura de Datos – AED 2023 - Pagina 4

También podría gustarte