Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

como fazer o programa voltar no laco inicial?

fiz um programa para ordenar tres numeros, cerstente, decrescente e com o maior numero entre os menores. fiz dois FORs para poder perguntar o usuario quer organizar de outra forma, ou se quer mudar os numeros. Porem, quando o programa sai do segundo laco para o primeiro, ele n reexecuta os codigos de organizacao.

import javax.swing.JOptionPane;

public class organizaNumeros {

    public static void main(String[] args) {

        int i = 1, continua = 1, mudaNumeros = 1; // cria as variaveis i, continua e mudaNumeros
        float a, b, c; // cria variaveis a, b e c

        System.out.println(
                "Este programa organiza tres numeros em ordem crescente, decrescente ou com o maior numero entre os menores.");
        // aprersentacao do programa

        for (int contador = mudaNumeros; contador == 1; contador = mudaNumeros) {

            a = Float.parseFloat(JOptionPane.showInputDialog("Informe o 1 número"));
            b = Float.parseFloat(JOptionPane.showInputDialog("Informe o 2 número"));
            c = Float.parseFloat(JOptionPane.showInputDialog("Informe o 3 número"));
            // pede numeros

            for (int contador2 = continua; contador2 == 1; contador2 = continua) { // inicia o laco de organizacao

                i = Integer.parseInt(
                        JOptionPane.showInputDialog("Informe o 1 para organizar os numeros em ordem crescente, "
                                + "2 para organizar os numeros em ordem decrescente, ou 3 para imprimir o maior numero entre os menores."));

                if (i == 1) { // organiza em ordem crescente

                    if (a >= c && a >= b) {
                        if (b >= c) {
                            System.out.println("Em ordem crescente: " + c + ", " + b + ", " + a + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + b + ", " + c + ", " + a + ".");
                        }
                    }

                    if (b >= a && b >= c) {
                        if (c >= a) {
                            System.out.println("Em ordem decrescente: " + a + ", " + c + ", " + b + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + c + ", " + a + ", " + b + ".");
                        }
                    }

                    if (c >= a && c >= b) {
                        if (b >= a) {
                            System.out.println("Em ordem decrescente: " + a + ", " + b + ", " + c + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + b + ", " + a + ", " + c + ".");
                        }
                    }

                }

                if (i == 2) { // organiza em ordem decrescente
                    if (a >= c && a >= b) {
                        if (b >= c) {
                            System.out.println("Em ordem decrescente: " + a + ", " + b + ", " + c + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + a + ", " + c + ", " + b + ".");
                        }
                    }

                    if (b >= a && b >= c) {
                        if (c >= a) {
                            System.out.println("Em ordem decrescente: " + b + ", " + c + ", " + a + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + b + ", " + a + ", " + c + ".");
                        }
                    }

                    if (c >= a && c >= b) {
                        if (b >= a) {
                            System.out.println("Em ordem decrescente: " + c + ", " + b + ", " + a + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + c + ", " + a + ", " + b + ".");
                        }
                    }
                }

                if (i == 3) { // coloca o maior entre os menores

                    if (a >= c && a >= b) {
                        if (b >= c) {
                            System.out.println("Em ordem decrescente: " + b + ", " + a + ", " + c + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + c + ", " + a + ", " + b + ".");
                        }
                    }

                    if (b >= a && b >= c) {
                        if (c >= a) {
                            System.out.println("Em ordem decrescente: " + c + ", " + b + ", " + a + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + a + ", " + b + ", " + c + ".");
                        }
                    }

                    if (c >= a && c >= b) {
                        if (b >= a) {
                            System.out.println("Em ordem decrescente: " + b + ", " + c + ", " + a + ".");
                        } else {
                            System.out.println("Em ordem decrescente: " + a + ", " + c + ", " + b + ".");
                        }

                    }
                }
                System.out.println();
                continua = Integer.parseInt(JOptionPane
                        .showInputDialog("Gostaria de ordenar de outra maneira? (1 para sim ou 2 para nao)"));
                // pergunta se o usuario gostaria de ordenar de outra forma os numeros dados.

            }
            mudaNumeros = Integer.parseInt(
                    JOptionPane.showInputDialog("Gostaria de ordenar outros numeros? (1 para sim ou 2 para nao)"));
        }
    }
}
1 resposta
solução!

Olá kaique!

Após fazer isto:

mudaNumeros = Integer.parseInt(
                    JOptionPane.showInputDialog("Gostaria de ordenar outros numeros? (1 para sim ou 2 para nao)"));

Atribui o valor de mudaNumeros para o continua

continua = mudaNumeros;

Então ficaria assim:

mudaNumeros = Integer.parseInt(
                    JOptionPane.showInputDialog("Gostaria de ordenar outros numeros? (1 para sim ou 2 para nao)"));

continua = mudaNumeros;