Pessoal, preciso da ajude de vc´s, sou novo com java e estou com dificuldade em achar uma solução para este algoritmo:
Eu preciso de ajuda para montar um algoritmo que receba um número, por exemplo recebo o número 90000 e faça a divisão por 10, guardando o resto desta divisão em uma variável e pegando o quociente e novamente dividindo por 10 e guardando o resto novamente em uma variável, efetuando este processo até quando o quociente seja maior que o divisor que no caso é 10.
Eu preciso fazer isso, pois preciso verificar se por duas vezes seguidas o resto da divisão for igual, por exemplo em duas vezes seguidas ocorrer resto=1.
Conseguiram entender o que tentei explicar?
Obrigado pela disponibilidade em ajudar!
E qual é a dúvida? Já tentou fazer algo? Poste o que já fez. E use as tags code quando for postar:
Então Viny, como estou começando a programar agora, entao tenho uma certa dificuldade, acho que deve ser algo normal no inicio né, ao menos assim espero, heheh!
O que pensei de inicio, mas estou naquele fase que não consigo imaginar muito esta logica, o que comecei a fazer mas nao consegui sair do lugar foi o seguinte:
private long divisao (int numero){
int valor= numero / 10 ;
resto= %;
while valor> 10;
// aqui teria que novanente efetuar a divisao
Tomara que eu tenha que acertado a tag!
Seu código tem vários problemas:
resto = %
Essa linha não faz sentido. Se você quer calcular o resto de um número você precisa:
a) Declarar a variável resto (dar um tipo para ela, como int, long, etc);
b) Colocar do lado esquerdo o numerador e do direito o divisor;
Por exemplo:
int resto = valor % 10;
Segundo problema, a sintaxe correta do while é:
while (valor > 10)
{
//Código que se repete aqui
}
Tente primeiro pegar um número como 125 e fazer o processo que você quer no papel.
Observe com atenção a ordem que você realiza o processo.
Vini, consegui dar uma andada, porem acho que agora o meu problema esta no enquanto, vc tem como dar uma olhada? Poe exemplo testei com o 1025 e este teria que dividir 3 vezes, logo o resultado esperado seria o, so que acho que esta se perdendo no while, será que seria melhor usar um if?
private long teste (int qtde_dig){
int valor = 0, quoc, resto;
quoc= qtde_dig /10 ;
resto= qtde_dig % 10 ;
while(quoc>10){
valor=quoc / 10;
resto= quoc % 10 ;
}
return resto;
}
O calculo de resto não deveria vir antes do calculo da divisão?
Veja:
private int teste (int valor){
int resto = valor % 10;
while(valor >10){
resto = valor % 10;
valor = valor / 10;
System.out.println("Valor: " + valor + " resto: " + resto);
}
}
Troque os dois de lugar e veja o que acontece no println.