Pessoal, boa noite! Estou no segundo semestre de Sistemas de Informação. Sou novo por aqui acabei de me cadastrar pois estou aprendendo Java mas sem a parte gráfica, e tenho algumas dúvidas e acho que por aqui podem me ajudar. Tenho conhecimento da linguagem C, mas aprendi vetores apenas agora na linguagem Java e estou com um pouco de dificuldade em alguns exercícios.. Vcs podem me ajudar? Eu fiz aqui mas não deu certo.
Exercício 1
Faça um programa que receba um número inteiro N (maior que 0) e exiba a sequência de números resultantes a partir da seguinte regra: se N for ímpar, multiplicar N por 3 e somar 1; se N for par, dividir N por 2. O número obtido é um novo N. Este procedimento deverá ser repetido até que N seja igual a 1. Exemplo: N = 17 sequência gerada: 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1. Deverá ser criada uma função, que receberá N como parâmetro e exibirá toda a sequência.
Eu fiz esse aqui mas não rodou .. Alguém ai pode me ajudar a entender o que fiz de errado ?
package rotinas_16_8;
import java.util.*;
public class Exercicio1 {
public static void main(String[] args) {
int n;
Scanner ent = new Scanner (System.in);
do {
System.out.print("Digite um valor maior que 0: ");
n = ent.nextInt();
} while (n <= 0);
System.out.println("Resultado: " + novoNumero (n));
}
public static int novoNumero (int x) {
int i = 0;
int[] nros = new int [15];
while (x != 1){
if (x % 2 == 0){
x = (x / 2);
}
else{
x = ((x * 3) + 1);
}
nros [i] = x;
i++;
}
return nros [15];
}
}