Вы находитесь на странице: 1из 2

package ejercicio02;

import java.util.Random;
import java.util.Scanner;

public class EJERCICIO02 {

public static void main(String[] args) {


int a,b,i,j, nFilas,nColum ;
double acum, Prom;
a=-100;
b=100;
Random rnd = new Random(); // declara variable aleatoria
Scanner Leer = new Scanner(System.in);
double Matriz[][]= new double[100][50];
double SumaFila[]= new double[100];
double SumaCol[]= new double[50];
System.out.println("Ingrese numero de filas= ");
nFilas=Leer.nextInt();
System.out.println("Ingrese numero de columnas= ");
nColum=Leer.nextInt();

//LLENADO DE MATRIZ ALEATORIO


for( i=0;i<nFilas;i++)
{ System.out.println();//salto para la sgte fila
for( j=0;j<nColum;j++)
{
//calcula aleatorio con muchos decimales
Matriz[i][j] =(rnd.nextDouble()*(b-a+1)+a);

//redondea a dos decimales


Matriz[i][j] =Math.round(Matriz[i][j]*100.0)/100.0;

}
}
//MOSTRADO DE MATRIZ
for( i=0;i<nFilas;i++)
{ System.out.println();
for( j=0;j<nColum;j++)
{
System.out.print("n["+i+"]["+j+"]="+ Matriz[i][j]+"\t");
}
}
// CALCULO DE SUMA POR FILA

for(i=0; i<nFilas; i++)


{
//usamos funcion sumatoria

SumaFila[i]=FSumaFila(Matriz,i,nFilas,nColum);
SumaFila[i] =Math.round(SumaFila[i]*100.0)/100.0;

}
//salida de sumatoria
for(i=0; i<nFilas;i++)
{
System.out.print("\nSuma Fila"+ i+"="+SumaFila[i]);
}

//CALCULO DE SUMA DE COLUMNA


for(i=0; i<nColum; i++)
{
//usamos funcion sumatoria

SumaCol[i]=FSumaCol(Matriz,i,nFilas,nColum);
SumaCol[i] =Math.round(SumaCol[i]*100.0)/100.0;

}
//salida de sumatoria
for(i=0; i<nColum;i++)
{
System.out.print("\nSuma Columna"+ i+"="+SumaCol[i]);
}
acum=0;
for(i=0; i<nFilas; i++)
{

acum= acum + SumaFila[i];


}
Prom= acum/(nFilas*nColum);
Prom =Math.round(Prom*100.0)/100.0;
System.out.print("\nEl promedio es="+ Prom);

}// FIN DEL MAIN


private static double FSumaFila(double VMatriz[][] ,int num,
int numFila,int numCol)
{
double Rpta,acum=0;
int j;
//num es la columna a sacar sumatoria
for(j=0;j<numCol;j++)
{ //las filas son desde 0 hasta numCol
acum=acum+VMatriz[num][j]; // num es fila fija
}
Rpta=acum;
return Rpta;
}

private static double FSumaCol(double VMatriz[][] ,int num,


int numFila,int numCol)
{
double Rpta,acum=0;
int i;
//num es la fila a sacar sumatoria
for(i=0;i<numFila;i++)
{ //las columnas son desde 0 hasta numFila
acum=acum+VMatriz[i][num]; // num es columna fija
}
Rpta=acum;
return Rpta;
}

Вам также может понравиться