AGRADECIMENTO...

Pessoal, Gostaria de pedir desculpas aqueles que deixam perguntas/comentários/elogios/críticas e ainda não foram respondidos.

Aproveito a oportunidade para informar a todos que devido a correria do dia a dia não conclui o curso de BSI, por isso meus conhecimentos são limitados rsrsrs...

Ainda não retirei o blog do ar porque tem ajudado a diversos estudantes, principalmente os iniciantes.

As vezes, quando o trabalho me permite, ainda arrisco tentar resolver algumas questões rs... mas para não deixar esse blog parar no tempo, o ESTUDANTE que quiser enviar a resolução de alguma questão (código próprio) para o meu e-mail, terei o prazer de posta-la neste blog e será mantido a autoria.

Desde já agradeço a todos pelas visitas e desejo bons estudos.

Thiago Campos
(srthiago@hotmail.com)

sexta-feira, 21 de setembro de 2012

Questão 3 do livro Java 7 de Sergio Furgeri - página 64


Elabore uma classe em que o usuário fornece dois números e uma letra correspondente a operação desejada de acordo com a tabela:
  -------------------------
  Letra   |   Operação
  -------------------------
    A     |   Adição                         PS: Procurei    fazer  de   forma  didática e de
    B     |   Subtração                           2 maneiras: uma com funções na mesma
    C     |   Multiplicação                      classe outra em classes diferentes.
    D     |   Divisão            
  -------------------------
                                    (Questão 3 do livro Java 7 de Sergio Furgeri - página 64)
Código Java

//Autor: Thiago Campos
//Data: 20.09.2012

package br.com.livroJava7.pag64; //pertence a este pacote

/**
 *
 * @author Thiago
 */
import javax.swing.JOptionPane; //importa a biblioteca

public class Operacoes {
     
    public static void main(String[] args){
        //variaveis locais
        double num1;
        double num2;
        double result = 0; //resultado da operacao
        char opcao='x';
        String opcaoStr;  //guada a operação
        String numeros = ""; //valores digitados
        String operacao = ""; //operação escolhida
     
        //entrada de dados
        num1 = Integer.parseInt(JOptionPane.showInputDialog("Informe o primeiro numero:"));
        num2 = Integer.parseInt(JOptionPane.showInputDialog("Informe o segundo numero:"));
     
        opcaoStr = JOptionPane.showInputDialog("Informe a operação desejada:");
        opcao = opcaoStr.charAt(0);
     
        //processo decisório
        switch (opcao) {
            case 'A':
                result = adicao(num1, num2);
                opcaoStr = "Adição";
                break;
            case 'B':
                result = subtrair(num1, num2);
                opcaoStr = "Subtração";
                break;
            case 'C':
                result = multiplicar(num1, num2);
                opcaoStr = "Multiplicação";
                break;
            case 'D':
                opcaoStr = "Divisão";
                if (num2 == 0){
                    JOptionPane.showMessageDialog(null, "Opção invalida, o divisor não pode ser 0!");
                }else{
                    result = dividir(num1, num2);
                }
                break;
            default:
                JOptionPane.showMessageDialog(null, "Opção invalida!");
                opcaoStr = "Invalida";
        } //fim do switch
     
        //saida dos dados
        JOptionPane.showMessageDialog(null, "RESULTADO DA OPERAÇÃO"
                + "\nOs valores digitados foram: " + num1 + " e " + num2
                + "\nOperação escolhida: " + opcaoStr
                + "\nResultado da operação é: " + result);
     
    } //fim do main
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 *  Inicio da função adição
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    public static double adicao(double n1, double n2){
        //variavel
        double s = 0; //resultado da soma
        s = n1 + n2;
        return s;
    } //fim da função Adicao
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 *  Inicio da função subtração
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    public static double subtrair(double n1, double n2){
        //variavel
        double sub = 0; //resultado da subt
        sub = n1 - n2;
        return sub;
    } //fim da função Adicao
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 *  Inicio da função multiplicar
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    public static double multiplicar(double n1, double n2){
        //variavel
        double m = 0; //resultado da multiplicação
        m = n1 * n2;
        return m;
    } //fim da função Adicao
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 *  Inicio da função dividir
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
    public static double dividir(double n1, double n2){
        //variavel
        double d = 0; //resultado da divisão
        d = n1 / n2;
        return d;
    } //fim da função Adicao
 
} //fim da classe operações
_______________________________________________________________
2ª OPÇÃO :  CLASSES  DISTINTAS PARA O MESMO PROBLEMA
_______________________________________________________________

Código Java

//Autor: Thiago Campos
//Data: 20.09.2012

package br.com.livroJava7.pag64; //pertence a este pacote

/**
 *
 * @author Thiago
 */
import javax.swing.JOptionPane; //importa a biblioteca

public class Operacao2 {
     
    public static void main(String[] args){
        //variaveis locais
        OperacaoClasse valor = new OperacaoClasse(); //instanciando objeto
     
        double num1;
        double num2;
        double result = 0; //resultado da operacao
        char opcao='x';
        String opcaoStr;  //guada a operação
        String numeros = ""; //valores digitados
        String operacao = ""; //operação escolhida
     
        //entrada de dados
        num1 = Integer.parseInt(JOptionPane.showInputDialog("Informe o primeiro numero:"));
        num2 = Integer.parseInt(JOptionPane.showInputDialog("Informe o segundo numero:"));
     
        opcaoStr = JOptionPane.showInputDialog("Informe a operação desejada:");
        opcao = opcaoStr.charAt(0);

        //processo decisório    
        switch (opcao) {
            case 'A':
                valor.setAdicao(num1, num2); //envio des variaveis
                result = valor.getAdicao(); //retorno do resultado
                opcaoStr = "Adição";
                break;
            case 'B':
                valor.setSubtrair(num1, num2); //envio des variaveis
                result = valor.getSubtrair(); //retorno do resultado
                opcaoStr = "Subtração";
                break;
            case 'C':
                valor.setMultiplicar(num1, num2); //envio des variaveis
                result = valor.getMultiplicar(); //retorno do resultado
                opcaoStr = "Multiplicação";
                break;
            case 'D':
                valor.setDividir(num1, num2); //envio des variaveis
                opcaoStr = "Divisão";
                if (num2 == 0){
                    JOptionPane.showMessageDialog(null, "Opção invalida, o divisor não pode ser 0!");
                }else{
                    result = valor.getDividir(); //retorno do resultado
                }
                break;
            default:
                JOptionPane.showMessageDialog(null, "Opção invalida!");
                opcaoStr = "Invalida";
        } //fim do switch
     
        //saida dos dados
        JOptionPane.showMessageDialog(null, "RESULTADO DA OPERAÇÃO"
                + "\nOs valores digitados foram: " + num1 + " e " + num2
                + "\nOperação escolhida: " + opcaoStr
                + "\nResultado da operação é: " + result);
     
    } //fim do main

} //fim da classe operaçao2

_______________________________________________________________
CLASSE DOS METODOS
_______________________________________________________________




package br.com.livroJava7.pag64; //pertence a este pacote

/**
 *
 * @author Thiago
 */

public class OperacaoClasse {
    //variaveis
    private double res = 0;
 
    //set e get
    public void setAdicao(double n1, double n2){
        res = n1 + n2;
    }
    public double getAdicao(){
        return res;
    }
    public void setSubtrair(double n1, double n2){
        res = n1 - n2;
    }
    public double getSubtrair(){
        return res;
    }
    public void setMultiplicar(double n1, double n2){
        res = n1 * n2;
    }
    public double getMultiplicar(){
        return res;
    }
    public void setDividir(double n1, double n2){
        res = n1 / n2;
    }
    public double getDividir(){
        return res;
    }
 
} //fim da classe OperacaoClasse



Nenhum comentário:

Postar um comentário