Raiz [RESOLVIDO]

5 respostas
thiagofg

Criei uma calculadora em java tipo tenho como código dos outros botões o seguinte código

private void Bt_RaizActionPerformed(java.awt.event.ActionEvent evt) {                                        
if (visor==0){
    visor = Double.parseDouble(Visor.getText().replace(",", "."));
    
}
else {
    visor = visor / Double.parseDouble(Visor.getText().replace(",", "."));
}
operacao = "raiz";
Visor.setText("0");
    }

mas sei que para raiz tenho que utilizar

Math.sqrt(visor);
só não sei como aplicar como nos outros botões, e como aplicar as variaveis, e o retorno na tela da calculadora.

5 Respostas

JM4X

basicamente isso:

Visor.setText(Math.sqrt(visor));
thiagofg
basicamente isso: view plaincopy to clipboardprint?
Visor.setText(Math.sqrt(visor));
JM4X.bye();

Ok mas, sou bem iniciante e tipo não sei como adicionar isso, mantenho as mesma estruturas de código ou as troco por essa para ter uma base

tá fui em Eventos -> Action -> ActionPerformed, e adicionei os seguintes código

Multiplicação:

private void Bt_MultActionPerformed(java.awt.event.ActionEvent evt) {                                        
if (visor==0){
    visor = Double.parseDouble(Visor.getText().replace(",", "."));
    
}
else {
    visor = visor * Double.parseDouble(Visor.getText().replace(",", "."));
}
operacao = "multiplicacao";
Visor.setText("0");
    }

Botão Igual =:

private void Bt_IgualActionPerformed(java.awt.event.ActionEvent evt) {                                         
if (!Visor.getText().equals("0")){
    if (operacao.equals("soma")){
        visor = visor + Double.parseDouble(Visor.getText().replace("," , "."));
    }
    else if (operacao.equals("subtracao")){
        visor = visor - Double.parseDouble(Visor.getText().replace("," , "."));
    }
    else if (operacao.equals("multiplicacao")){
        visor = visor * Double.parseDouble(Visor.getText().replace("," , "."));
    }
        
    else if (operacao.equals("divisao")){
    visor = visor / Double.parseDouble(Visor.getText().replace("," , "."));
    }
    
}
NumberFormat nf = NumberFormat .getInstance(new Locale("pt", "BR"));
nf.setMinimumFractionDigits(0);

Visor.setText(nf.format(visor));
visor = 0;
operacao = "";
    }

Acho que neste caso não será utilizado igual porque o próprio Bt_Raiz já ira retornar o resultado em Visor né: mais tipo se alguém puder me enviar uma amostra de código que eu possa utilizar!

visor = variavel que guarda numeros digitados
Visor = JTextPane

tipo preciso de um código que ao clicar o botão execute as funções;

Gravar os valores de Visor em visor;
executar a operação raiz
mostrar resultado da operação em Visor;

já to quebrando a cabeça a dois dias e não consigo fazer isso!

thiagofg

Problema resolvido!

JM4X

Parabéns cara!

Agora seria bacana se vc postasse sua solução, para que outros amigos que possam vir a ter a mesma duvida que vc possam ser ajudados.
Não se esqueça também de editar seu primeiro post, colocando no titulo do topico [RESOLVIDO].

a comunidade agradece.
boa sorte.

JoaoBluSCBR

Tá, continuando do outro post pois lá com aquele código imenso demora muito para abrir o post:

Você falou ao final que quer colocar os valores no visor como se fosse uma calc em papel.

Me parece, se olhar teu código, que isso se resume a ir guardando na variável que mostra o
visor, as Strings e acrescentando os “\n” ao final para que ele mude de linha, e é claro,
usar um Label com capacidade de mostrar MultiLine.

Criado 11 de julho de 2011
Ultima resposta 11 de jul. de 2011
Respostas 5
Participantes 3