Boa tarde, minha professora passou um trabalho em Java pra fazer uma calculadora usando apenas a adição e a subtração para resolver {soma, subtração, potencia, multiplicação, divisão e resto. E ela quer que seja utilizado numeros inteiros.
public static void main(String[] args) {
Scanner entrada=new Scanner (System.in);
int a,b,c,op;
System.out.println(“Digite a operação desejada”);
op=entrada.nextInt();
System.out.println(“Digite o primeiro valor”);
a=entrada.nextInt();
System.out.println(“Digite o segundo valor”);
b=entrada.nextInt();
switch (op) {
case 1:
c = a+b;
System.out.println(a+ "+" +b+ "= " +c);
break;
case 2:
c=a-b;
System.out.println(a+"-"+b+"= "+c);
break;
A multiplicação pode ser feita através de sucessivas somas, enquanto que a divisão pode ser feita através de sucessivas subtrações.
Potência é só um tipo de multiplicação, enquanto que resto é o que sobra da divisão após sucessivas subtrações.
Dica: crie métodos para cada operação, seu código vai ficar mais legível e fácil de entender, e você pode reaproveitar as operações.
Abraço.
Isso que é o difícil. Eu já tinha idealizado essa ideia, mas colocar pra rodar é difícil. Tem como fazer pra me mostrar se não for um incomodo, é claro.
Abraço.
Exemplo:
int somar(int a, int b) {
return a + b;
}
int multiplicar(int numero, int multiplicador) {
int resultado = 0;
for (int i = 0; i < multiplicador; i++) {
resultado += numero;
}
return resultado;
}
Eu só posso usar o switch, e as repetições, while, do while e for
O código do staroski está usando só isso.
Ou você quis dizer que não pode usar outros métodos fora do main ? (o que é ruim, mas se é o que seu professor quer…).
Se é isso, é só colocar as operações nas opções certas do switch, como você já estava fazendo:
case 3: // supondo que 3 é a multiplicação.
int c = 0;
for (int i = 0; i < b; i++) {
c += a;
}
System.out.println(a+"*"+b+"= "+c);
break;
Dica: use nomes de variáveis mais claros, para o código ficar mais fácil de entender. Note como o staroski usou numero, multiplicador e resultado, ao invés de a, b e c.
Abraço.