- Back to Home »
- Numero mayor matriz
Posted by : Unknown
martes, 17 de junio de 2014
Crear una matriz de n * m filas (cargar n y m por teclado) Imprimir el mayor elemento y la fila y columna donde se almacena.
Programa:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Matriz6
{
class Matriz6
{
private int[,] mat;
public void Cargar()
{
Console.Write("Cuantas fila tiene la matriz:");
string linea;
linea=Console.ReadLine();
int filas=int.Parse(linea);
Console.Write("Cuantas columnas tiene la matriz:");
linea=Console.ReadLine();
int columnas=int.Parse(linea);
mat=new int[filas,columnas];
for(int f = 0; f < mat.GetLength(0); f++)
{
for(int c = 0; c mayor)
{
mayor=mat[f,c];
filamay=f;
columnamay=c;
}
}
}
Console.WriteLine("El elemento mayor es:"+mayor);
Console.WriteLine("Se encuentra en la fila:"+filamay+ " y en la columna: "+columnamay);
Console.ReadLine();
}
static void Main(string[] args)
{
Matriz6 ma = new Matriz6();
ma.Cargar();
ma.ImprimirMayor();
}
}
}
Para obtener el mayor elemento de la matriz y la fila y columna donde se ubica debemos inicializar una variable mayor con el elemento de la fila cero y columna cero (esto lo hacemos suponiendo que en dicha posición se almacena el mayor):
int mayor=mat[0,0];
int filamay=0;
int columnamay=0;
Luego mediante dos for recorremos todos los elementos de la matriz y cada vez que encontramos un elemento mayor al actual procedemos a actualizar la variable mayor y la posición donde se almacena:
for(int f = 0; f < mat.GetLength(0); f++)
{
for(int c = 0; c < mat.GetLength(1); c++)
{
if (mat[f,c] > mayor)
{
mayor=mat[f,c];
filamay=f;
columnamay=c;
}
}
}