Bienvenidos a un nuevo curso. Ahora estoy en el ciclo de grado superior: Desarrollo de aplicaciones multiplataforma. Y voy a ser parte del experimento de la formación dual. Estaré haciendo practicas durante un año, y a la vez finalizando la formación.

Deseadme suerte.

jueves, 26 de noviembre de 2015

Ejemplo del libro 2(tema 5(1º examen))

0




using System;

namespace tema5
{
class MainClass
{
//Guardo los máximos en una constante;
const int FILAS = 2;
const int COLUMNAS = 2;
//la funció menú muestra las opciones del menú y permite escoger una de ellas.
static int menu()
{
int n;
Console.WriteLine("1. Rellena la primera matriz.");
Console.WriteLine("2. Rellena la segunda matriz.");
Console.WriteLine("3. Visualiza las matrices.");
Console.WriteLine("4. Suma matrices.");
Console.WriteLine("5. Producto por un escalar.");
Console.WriteLine("6. Producto de matrices.");
Console.WriteLine("7. Transpuesta");
Console.WriteLine("8. Salir");
Console.WriteLine("Escoge opción:");
n = int.Parse(Console.ReadLine());
return n;
}
//la función primeraMatriz introduce valores en la primera matriz
static void primeraMatriz(int[ , ]matriz)
{
for(int i=0; i< FILAS; i++)
{
for(int j=0; j< COLUMNAS; j++)
{
Console.WriteLine("Introduce número:");
matriz[i,j] = int.Parse(Console.ReadLine());
}
}

}
//la función segundaMatriz introduce valores en la segunda matriz
static void segundaMatriz(int[,] matriz)
{
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
Console.WriteLine("Introduce número:");
matriz[i, j] = int.Parse(Console.ReadLine());
}
}

}
//La función visualiza muestra las matrices.
static void visualiza (int [ , ] matrizUno, int [ , ] matrizDos)
{
Console.WriteLine("MATRIZ UNO");
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
Console.Write(matrizUno[i,j]);
Console.Write(" ");
}
Console.Write("\n");
}
Console.Write("\n");
Console.WriteLine("MATRIZ DOS");
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
Console.Write(matrizDos[i, j]);
Console.Write(" ");
}
Console.Write("\n");
}

}
//La función suma sumará dos matrices.
static void suma(int[,] matrizUno, int[,] matrizDos)
{
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
Console.Write(matrizUno[i,j]+matrizDos[i, j]);
Console.Write(", ");
}
Console.Write("\n");
}
}
//La funcion productoEscalar multiplica una matriz por un entero.
static void productoEscalar (int[,] matriz, int n)
{
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
Console.Write(matriz[i, j] * n);
Console.Write(", ");
}
Console.Write("\n");
}
}
//La función productoMatrices multiplica las dos matrices.
static void productoMatrices (int[,] matrizUno, int[,] matrizDos)
{
int[,] C= new int[FILAS, COLUMNAS];
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
for (int k = 0; k < COLUMNAS; k++) 
{
C [i, j] += matrizUno [i, k] * matrizDos [k, j];
}
}
}
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
Console.Write(C[i, j]);
Console.Write(", ");
}
Console.Write("\n");
}
}
//La Función traspuesta cambia las filas por las columnas de la matriz seleccionada.
static  void traspuesta(int[,] matriz, int [,] t)

for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
t[j, i] = matriz [i,j];
}
}
}
//Visualiza la matriz transpuesta
static  void visualizarT(int[,] matriz)
{
for (int i = 0; i < FILAS; i++)
{
for (int j = 0; j < COLUMNAS; j++)
{
Console.Write(matriz[i,j]);
Console.Write(" ");
}
Console.Write("\n");
}
}
public static void Main(string[] args)
{
//las variables de tipo array
int[ ,] matrizUno = new int[FILAS,COLUMNAS];
int[ , ] matrizDos = new int[FILAS,COLUMNAS];
int[,] T = new int[FILAS, COLUMNAS];
int opcion = 0;
int aux, multiplica;
do
{
Console.Clear();
opcion = menu();
switch (opcion)
{
case 1:
primeraMatriz(matrizUno);
break;
case 2:
segundaMatriz(matrizDos);
break;
case 3:
visualiza(matrizUno,matrizDos);
break;
case 4:
suma(matrizUno, matrizDos);
break;
case 5:
Console.WriteLine("¿Qué matriz deseas multiplicar?(1/2)");
aux = int.Parse(Console.ReadLine());
Console.WriteLine("¿Número con el que deseas multiplicar la matriz?");
multiplica = int.Parse(Console.ReadLine());
if (aux==1)
{
productoEscalar(matrizUno, multiplica);
}
else
{
productoEscalar(matrizDos, multiplica);
}
break;
case 6:
productoMatrices(matrizUno, matrizDos);
break;
case 7:
Console.WriteLine("¿De qué matriz deseas la transpuesta?(1/2)");
aux = int.Parse(Console.ReadLine());
if (aux == 1)
{
traspuesta(matrizUno,T);
visualizarT(T);
}
else
{
traspuesta(matrizDos,T);
visualizarT(T);
}
break;
case 8:
Console.WriteLine("bye,bye...");
break;
default:
Console.WriteLine("La opción escogida no es válida, vuelva a intentarlo");
break;
}
Console.ReadKey();
} while (opcion != 8);
}
}
}





Related Posts:

  • Tema 1: Pruebas y depuración 15/10/2015 Pruebas y depuración Con NetBios, puedes hacer una comprobación, seleccionando una linea (cuadradito rojo) y después yendo a debug &… Read More
  • Etapas del diseño lógico (1)La teoría completa la puedes obtener aquí. Es hora de pasar los modelos a tablas. Veamos un ejemplo de como interpretaremos las tablas: En el si… Read More
  • Tema 1: Procesos de compilación28/10/2015 Compilación: La traducción de un programa en código fuente a código máquina o bytecode. Compilador: La herramienta software que es capaz… Read More
  • Modelo E/R Extendido En el modelo E/R se considera como un caso especial de asociación entre varias entidades (subtipo) y una entidad más general (supertipo) cuyas caract… Read More
  • Restricciones en E/R Restricción de exclusividad En el momento en que participa en uno ya no podrá formar parte del otro. Restricción de exclusión un profesor no… Read More

0 comentarios:

Publicar un comentario

Etiquetas actuales

BD (67) DEF (64) PROG (64) SQL (44) Java (29) PRACTICAS (20) php (18) DI (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) HTML (13) SGE (12) ERP (9) CONSULTAS (8) css (8) Linux (5) XML (5) Android (4) PDM (4) C (3) NetBeans (3) PSP (3) SMARTY (3) comandos (3) HOOK (2) POST (2) XSD (2) cURL (2) JS (1) MEDIA-QUERYS (1) PDO (1) RESPONSIVE (1) TPL (1) TRADUCCIÓN (1) app_inventor (1)

Todas las etiquetas

EJER (78) BD (67) DEF (64) PROG (64) SQL (44) c# (40) Programación (39) Ficheros (36) Java (29) bases de datos (21) PRACTICAS (20) lenguajes de marcas (19) AD (18) Entorno de desarrollo (18) php (18) PROCEDIMIENTOS (17) DI (16) FORM (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) lenguaje C (16) E/R (14) HTML (13) SGE (12) Sistemas informáticos (10) ERP (9) CONSULTAS (8) TRANSACCIONES (8) TRIGGER (8) VISUAL BASIC (8) css (8) FUNCIONES (7) html5 (6) Ada (5) EXAMEN (5) Linux (5) XML (5) estructuras (5) Android (4) DISEÑO (4) INTERFAZ (4) LOG (4) OpenBravo (4) PDM (4) ACTUALIZAR (3) C (3) DIAGRAMA (3) Directorios (3) NEW (3) NOR (3) NetBeans (3) OLD (3) PSP (3) SMARTY (3) comandos (3) css3 (3) AISLAMIENTOS (2) C++ (2) CONTROLERRORES (2) ELIMINAR (2) HOOK (2) INSERTAR (2) INST (2) MULTITABLA (2) POST (2) RECURSIVIDAD (2) SUBCONSULTAS (2) VISTAS (2) XSD (2) cURL (2) punteros (2) AJENA (1) BLOQUEOS (1) Byte (1) CREACION (1) CRM (1) Configuración (1) Controles (1) Datos (1) GOTFOCUS (1) IMAGENES (1) INDICES (1) JS (1) Lenght (1) MEDIA-QUERYS (1) Mingw (1) MonoDeveloped (1) OPTIMISTA (1) PDO (1) PESIMISTA (1) RESPONSIVE (1) SPEAK (1) Scanner (1) Serializacion (1) Streams (1) System (1) TPL (1) TRADUCCIÓN (1) USUARIOS (1) UseSystemPasswordChar (1) app_inventor (1) char (1) examenes (1) libreoffice (1) make (1) redes (1)