não funcionou. Alguem poderia me dizer onde esta o erro?
meu codigo completo
packagebr.com.fibonassi;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjavax.swing.JOptionPane;// Sequência de FibonassipublicclassFibonassi{publicstaticvoidmain(String[]args)throwsIOException{// metodo q ira fazer a leitura BufferedReaderteclado=newBufferedReader(newInputStreamReader(System.in));Stringposicao;inta=1;intb=1;intc=0;intd=0;inti=0;System.out.println();System.out.print(" ! Digite a posição na Sequencia: ");posicao=teclado.readLine();c=Integer.parseInt(posicao);while((i+3)!=c){++i;d=a+b;a=b;b=d;//System.out.println ("Posição "+(i+3)+" = "+d);}System.out.println("Posição "+(i+3)+" = "+d);}}
Vc postou o código com o System.out.println().
Poste o seu código com JOptionPane para saber onde esta o erro.
Aliás, mostra alguma mensagem de erro?
Abraço
Eduardog
Caro cleyvison,
Acho que sua dúvida é esta:
importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjavax.swing.JOptionPane;// Sequência de Fibonassi publicclassFibonassi{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderteclado=newBufferedReader(newInputStreamReader(System.in));Stringposicao;inta=1;intb=1;intc=0;intd=0;inti=0;System.out.println();JOptionPane.showMessageDialog(null," ! Digite a posição na Sequencia: ");posicao=teclado.readLine();c=Integer.parseInt(posicao);while((i+3)!=c){++i;d=a+b;a=b;b=d;//System.out.println ("Posição "+(i+3)+" = "+d); }JOptionPane.showMessageDialog(null,"Posição "+(i+3)+" = "+d);}}
Espero ter ajudado.
Thiago_Luis
Eduardog:
Caro cleyvison,
Acho que sua dúvida é esta:
importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjavax.swing.JOptionPane;// Sequência de Fibonassi publicclassFibonassi{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderteclado=newBufferedReader(newInputStreamReader(System.in));Stringposicao;inta=1;intb=1;intc=0;intd=0;inti=0;System.out.println();JOptionPane.showMessageDialog(null," ! Digite a posição na Sequencia: ");posicao=teclado.readLine();c=Integer.parseInt(posicao);while((i+3)!=c){++i;d=a+b;a=b;b=d;//System.out.println ("Posição "+(i+3)+" = "+d); }JOptionPane.showMessageDialog(null,"Posição "+(i+3)+" = "+d);}}
Espero ter ajudado.
??? Não entendi.
JOptionPane.showMessageDialog(null," ! Digite a posição na Sequencia: ");
Para qual variável vai a posição digitada?
Não deveria ser assim?
posicao=JOptionPane.showInputDialog(null,"! Digite a posição na Sequencia: ");c=Integer.parseInt(posicao);
Não seria isso????????
Abraço
cleyvison
deixe eu tentar me expressar melhor
packagebr.com.fibonacci;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjavax.swing.JOptionPane;// Sequência de FibonaccipublicclassFibonacci{publicstaticvoidmain(String[]args)throwsIOException{// metodo q ira fazer a leitura BufferedReaderteclado=newBufferedReader(newInputStreamReader(System.in));Stringposicao;inta=1;intb=1;intc=0;intd=0;inti=0;System.out.println();System.out.print(" Digite a posição na Sequencia: ");/* Aqui insiro a posição que quero da sequencia*/JOptionPane.showInputDialog(null," ! Digite a posição na Sequencia: ");// Esta parte funcionaposicao=teclado.readLine();c=Integer.parseInt(posicao);while((i+3)!=c){++i;d=a+b;a=b;b=d;//System.out.println ("Posição "+(i+3)+" = "+d);}System.out.println("Posição "+(i+3)+" = "+d);/* para mostra o resoltadfo na consele assim funciona*/JOptionPane.showMessageDialog(null,"Posição "+(i+3)+" = "+d);/*Mas, o que eu quero é isso aqui e não ta funcionando */}}
acho que agora me expressei melhor…
um abrçao
Thiago_Luis
Então cara,
Eu colei seu código aqui e funcionou.
Mostrou no console e no showMessageDialog() o resultado, normalmente.
Com vc não chega nem a mostrar ou é outra coisa?
Mostra erro?
Abraço
cleyvison
Não mostra erro. A primeira “caixa” é apresentada mas, ele não mostar o resultado
JOptionPane.showInputDialog(null," ! Digite a posição na Sequencia: ");posicao=teclado.readLine();c=Integer.parseInt(posicao);while((i+3)!=c){++i;d=a+b;a=b;b=d;//System.out.println ("Posição "+(i+3)+" = "+d);}JOptionPane.showMessageDialog(null,"Posição "+(i+3)+" = "+d);
Thiago_Luis
Então cara, o showInputDialog() precisa de um retorno, que neste caso será uma String.
é só vc pegar a String “posicao”, que vc estava usando com o BufferedReader e usar assim:
posicao = JOptionPane.showInputDialog(null," ! Digite a posição na Sequencia: " );
c = Integer.parseInt(posicao);
Daí vc nem precisa do BufferedReader
Tente ai.
Abraço
cleyvison
mas, isso eu estou fazendo aqui
JOptionPane.showInputDialog(null," ! Digite a posição na Sequencia: ");posicao=teclado.readLine();c=Integer.parseInt(posicao);
Thiago_Luis
Não cara,
No meu exemplo, o conteúdo digitado no showInputDialog() vai para a String “posicao”.
No seu, o showInputDialog() não tem uma variável para retornar o resultado. e aí ele espera pelo readLine() do BufferedReader para armazenar na String “posicao”.
No seu código, se vc tirar o showInputDialog() vai dar na mesma.
No meu, se tirar não vai funcionar.
Vamos fazer de outro jeito:
Tire o BufferedReader e faça assim:
c=Integer.parseInt(JOptionPane.showInputDialog(null," ! Digite a posição na Sequencia: "));
O que vc digitar já vai cair na conversão.
Faça os testes.
Abraço
cleyvison
agora funcionou
packagebr.com.fibonacci;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjavax.swing.JOptionPane;// Sequência de FibonaccipublicclassFibonacci{publicstaticvoidmain(String[]args)throwsIOException{// metodo q ira fazer a leitura BufferedReaderteclado=newBufferedReader(newInputStreamReader(System.in));Stringposicao=null;inta=1;intb=1;intc=0;intd=0;inti=0;posicao=JOptionPane.showInputDialog(null," ! Digite a posição na Sequencia: ");c=Integer.parseInt(posicao);while((i+3)!=c){++i;d=a+b;a=b;b=d;}JOptionPane.showMessageDialog(null,"Posição "+(i+3)+" = "+d);}}
a questao era a seguinte
posicao=teclado.readLine();// este comando não captura informações digitadas na "caixa", so lê console...
fazendo assim
posicao=JOptionPane.showInputDialog(null," ! Digite a posição na Sequencia: ");
minha variavel “posicao” recebo o valor digitado dai na linha seguinte converto e o resto são os calculos…