Ajuda com Codigo

4 respostas
Dede_Tomaz

Ola estou começando a ver java agora na faculdade e não consigo fazer este programa funcionar da forma q quero

O programa recebe do usuário dois números inteiros positivos e o tipo de operação a ser realizada.
Verifica o tipo de operador e realize a operação correspondente. Apresente o resultado ao usuário.

import javax.swing.JOptionPane;

public class Exercicio_4 {

	public static <string> void main (String args[]) {

		int num1 = 0;
		int num2 = 0;
		int soma;
		int subtrair;
		int veses;
		float dividir;

		int res = 0;


		num1 = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite um numero:"));

		num2 = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite Segundo numero:"));

		soma = num1 + num2;

		subtrair = num1 - num2;

		veses = num1 * num2;

		dividir = num1 / num2;


		switch (res){

		case 1 :

			JOptionPane.showMessageDialog(null," O resultado é: " + soma);	
			break;

		case 2 :
			JOptionPane.showMessageDialog(null," O resultado é: " + subtrair);
			break;
			
		case 3 :
			JOptionPane.showMessageDialog(null," O resultado é: " + veses);
			break;
			
		case 4 :
			JOptionPane.showMessageDialog(null," O resultado é: " + dividir);
			break;
			


		}

       }

}

Se alguém puder me ajudar desde já agradeço...

4 Respostas

marcos4ft

Não vai imprimir nada, porque você não está setando o valor de res, ele é sempre zero.

Tenta setar depois de digitar os numeros

num1 = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite um numero:"));  
  
num2 = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite Segundo numero:"));

res = Integer.parseInt(JOptionPane.showInputDialog(null,"Digite [1]Soma,[2]Subtrair... e por aí vai:"));
S

Tenho certeza que esse código não ficou bom mas...

package com.infoplus.dao;

import javax.swing.JOptionPane;

public class Exercicio_4 {

	public static double funcao(char operador, int num1, int num2) {
		switch(operador) {
		default:
			return num1 + num2;
		case '-':
			return num1 - num2;

		case '*':
			return num1 * num2;

		case '/':
			return num1 / num2;
		}
		
	}
	public static void main(String args[]) {

		int num1 = Integer.parseInt(JOptionPane.showInputDialog(null,
				"Digite um numero:"));

		int num2 = Integer.parseInt(JOptionPane.showInputDialog(null,
				"Digite Segundo numero:"));
		String operador = JOptionPane.showInputDialog(null, "Digite o operador: ");
		
		JOptionPane.showMessageDialog(null, " O resultado é: " + funcao(operador.charAt(0), num1, num2));

	}
}
Dede_Tomaz

Vlw pela ajuda pessoal

depois q eu setei o res no meu código funcionou

e tbm testei o outro e funcionou

mas pra divisão os 2 dão o resultado
errado se for decimal

alguém sabe por que?

InicianteJavaHenriqu

Por suas variáveis são do tipo inteiro (int) mude para o tipo decimal (float ou double)

Criado 26 de março de 2012
Ultima resposta 26 de mar. de 2012
Respostas 4
Participantes 4