Fala galera, tudo firme com vocês?! Então galera, como eu já disse eu sou novato super newba em Java e eu tenho um professor de Java meio xarope que de tanto mexer com Java, já está ficando com cara de Java mesmo hahaha, mas ae, ele virou para a classe e disse assim: “Classe, eu quero jogar com vocês. Vocês tem vinte quatro horas para elaborar o programa proposto, se querem viver, ou façam, ou morram.” Como vocês devem ter percebido é muito embassado ter o John Saw como professor de Java, mas a gente acostuma, se não morrermos.
Bom o programa é o seguinte:
Elaborar um programa que efetue o cálculo e no final apresente o somatório do número de grãos de trigo que se pode obter num tabuleiro de xadrês, obedecendo a seguinte regra: colocar um grão de trigo no primeiro quadro e nos quadros seguintes o dobro do quadro anterior. Ou seja, no primeiro quadro coloca-se 1 grão, no segundo quadro coloca-se 2 grãos(neste momento têm-se 3 grãos), no terceiro quadro colocam-se 4 grãos(tendo neste momento 7 grãos), no quarto quadro colocam-se 8 grãos(tendo-se então 15 grãos) até atingir o sexagésimo quarto quadro do tabuleiro de xadrês.
Eu consegui fazer o programa, não sei se é gambiarra o que eu fiz mas que eu consegui, consegui, está funcionando perfeitamente, vejam:
import javax.swing.JOptionPane;
public class MyClass
{
public static void main()
{
int quadro=0, // variável que representará cada quadro do tabuleiro do xadrês
trigo=1, // variável que representará os trigos que serão colocados em cada quadro do xadrês
trigototal=0, // variável que somará todos os trigos que foram colocados nos quadros do xadrês
n1; // variável que engana o segundo laço FOR
for(quadro=1;quadro<=64;quadro++)
{
n1=quadro*quadro;
for(trigo=trigo;trigo<=n1;trigo*=2)
{
trigototal+=trigo;
n1=0;
}
}
JOptionPane.showMessageDialog(null,""+trigototal,"RESULTADO",JOptionPane.PLAIN_MESSAGE);
}
}
O que eu queria é se tem algum geito de fazer ele menor apenas com o laço FOR ou While, mas só esses dois laços de repetição e sem if, switch, entre outras coisas.??