Pessoal o código abaixo é para uma questao que pede para exibir o maior e o menor valor de um vetor. O que ocorre é que o menor valor sempre me retorna 0…
O que está errado?
public class questao1 {
public static void main(String [] args){
int num[] = new int[5];
int maior=0, menor=0;
maior = num[0];
menor = num[0];
for(int i=0; i < num.length; i++){
System.out.println("Informe o "+(i+1)+ " número:");
num[i] = ler (num[i]);
}
for (int i=0; i<num.length; i++){
if (num[i] > maior)
maior = num[i];
if (num[i] < menor)
menor = num[i];
}
System.out.println("O maior número é: "+maior);
System.out.println("O menor número é: "+menor);
}
//ler - ( BYTE )
public static byte ler ( byte x ) {
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
x= Byte.valueOf(valor).byteValue();
}
catch(Exception e) {System.out.println("ERRO");}
return (x);
}
//ler - ( SHORT )
public static short ler ( short x ) {
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
x= Short.valueOf(valor).shortValue();
}
catch(Exception e) {System.out.println("ERRO");}
return (x);
}
//ler - ( INT )
public static int ler ( int x ) {
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
x= Integer.valueOf(valor).intValue();
}
catch(Exception e) {System.out.println("ERRO");}
return (x);
}
//ler - ( LONG )
public static long ler ( long x ) {
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
x= Long.valueOf(valor).longValue();
}
catch(Exception e) {System.out.println("ERRO");}
return (x);
}
//ler - ( FLOAT )
public static float ler ( float x ) {
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
x= Float.valueOf(valor).floatValue();
}
catch(Exception e) {System.out.println("ERRO");}
return (x);
}
//ler - ( DOUBLE )
public static double ler ( double x ) {
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
x= Double.valueOf(valor).doubleValue();
}
catch(Exception e) {System.out.println("ERRO");}
return (x);
}
//ler - ( CHAR )
public static char ler ( char x ) {
char y = ' ';
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
x = valor.charAt(0);
}
catch(Exception e) {System.out.println("ERRO");}
return (x);
}
//ler - ( STRING )
public static String ler ( String x ) {
String valor="";
DataInputStream in = new DataInputStream(System.in);
try{
valor=in.readLine();
}
catch(Exception e) {System.out.println("ERRO");}
return (valor);
}
}
E essa outra é para calcular os elementos da diagonal principal de uma matriz 3 x 3.
Quais são os ídices dessa diagonal principal e como calculá-los?
public static void main(String [] args){
double matriz_a[][] = new double[3][3];
double soma=0, total=0;
for (int i=0; i<matriz_a.length; i++){
for (int j=0; j<matriz_a.length; j++){
System.out.println("Informe o número da "+(i+1)+" linha e da "+(j+1)+" coluna da matriz:");
matriz_a[i][j] = ler (matriz_a[i][j]);}}
for (int i=0; i<matriz_a.length; i++){
for (int j=0; j<matriz_a.length; j++){
soma = soma + ???????
Tbm usada a função ler nessa matriz.
Vlw a ajuda!