Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) posiçao matriz


fahledu

Pergunta

To com uma lista de exercicio pra fazer em java, não manjo da linguagem mas acho que to vacilando na logica, se alguém puder dar uma luz...

A questão:

Elabore um programa que preencha uma matriz 6x3, calcule e mostre

- O maior elemento e sua respectiva posição (linha coluna)

- O menor elemento e sua respectiva posição (linha coluna)

O maior e menor elemento ta ok, mas quando mostra a posição ta mostrando sempre a ultima (linha 6 coluna 3)

Segue o font

import javax.swing.*;
public class ex_9 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
int num[] [] = new int [6] [3], i, j = 0, maior = 0, menor;
for (i = 0;  i < 6; i++)
{
    for (j = 0; j < 3; j ++)
    {
        num[i][j]= Integer.parseInt(JOptionPane.showInputDialog("Informe um numero"));
    }
}
for (i = 0; i < 6; i ++)
{
    for (j = 0;j  < 3;j   ++)
    {
        if (num[i][j] > maior)
        {
            maior = num [i][j];
                    }
    }
}
JOptionPane.showMessageDialog(null,"Maior valor " + maior + " na linha " + i + " coluna " + j);
    menor = num[0][0];
    for (i = 0; i < 6; i ++)
    {
        for (j = 0; j<3;j++)
        {
            if (num[i][j] < menor)
            {
                menor = num [i][j];
            }
        }
    }
    JOptionPane.showMessageDialog(null,"Menor valor " + menor + " na linha " + i + " coluna " + j);
    }

}
Vlw resolvido Vou deixar os dois cód pro pessoal ver a diferença...
import javax.swing.*;
public class ex_9 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
int num[] [] = new int [6] [3], i, j = 0, maior = 0, menor, lin = 0, col = 0;
for (i = 0;  i < 6; i++)
{
    for (j = 0; j < 3; j ++)
    {
        num[i][j]= Integer.parseInt(JOptionPane.showInputDialog("Informe um numero"));
    }
}
for (i = 0; i < 6; i ++)
{
    for (j = 0;j  < 3;j   ++)
    {
        if (num[i][j] > maior)
        {
            maior = num [i][j];
            lin = i;
            col = j;
                    }
    }
}
    lin ++;
    col ++;
JOptionPane.showMessageDialog(null,"Maior valor " + maior + " na linha " + lin + " coluna " + col);
    menor = num[0][0];
    for (i = 0; i < 6; i ++)
    {
        for (j = 0; j<3;j++)
        {
            if (num[i][j] < menor)
            {
                menor = num [i][j];
                lin = i;
                col = j;
            }
        }
    }
    lin ++;
    col ++;
    JOptionPane.showMessageDialog(null,"Menor valor " + menor + " na linha " + lin + " coluna " + col);
    }

}

Guardei os valores de i e j em outra variavel...

E como vetor conta a partir do zero, fim um incremento para imprimir a partir do 1.

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...