Galera estou precisando imprimir uma serie de termos , mas a quantidade é o usuário que decide, seria a serie 1/1+8/10+27/100+64/1000… E sucessivamente …
Programar repetição dos termos
2 Respostas
Primeiro você tem que encontrar um padrão na série.
Sendo n um número inteiro maior que zero, iniciamos a análise da sequencia e atribuímos 1 como valor inicial de n.
Agora tentamos encontrar o padrão, sendo a letra (e) a referência de elevado/potência.
1³ = 1, 2³ = 8, 3³ = 27, 4³ = 64 -> padrão do dividendo = n³
10e0 = 1, 10e1 = 10, 10e2 -> padrão do divisor = 10e(n-1)
Minha notação matemática não é muito boa, mas vou tentar.
Assim temos a seguinte proposição:
Para todo n pertencente ao conjunto dos números inteiros não nulos, os elementos da série X = {1/1, 8/10, 27/100, 64/1000, … } são produtos da equação x = n³/10e(n-1) , onde x pertence ao conjunto dos números reais.
Por que a proposição é importante neste caso?
Para avaliar se a sua codificação não apresenta uma contraprova.
A partir deste ponto criamos a codificação:
Olha uma das inúmeras codificações, que segue a proposição:
public static void main(String[] args) {
System.out.println("Informe um valor inteiro");
new Crisis().serie(Integer.parseInt(new Scanner(System.in).next()));
}
void serie(int n) {
for (int i = 1; i <= n; i++) {
System.out.print(
//n³, na linha a seguir
(int) Math.pow(i, 3)
+ "/"
+//10e(n-1) na linha a seguir
(int) Math.pow(10, i - 1)
+ (i < n ? " + " : "\n"));//só pra não imprimir o + no final
}
}
Agora uma codificação que segue uma proposição equivalente.
public static void main(String[] args) {
System.out.println("Informe um valor inteiro");
new Crisis().serie(Integer.parseInt(new Scanner(System.in).next()));
}
void serie(int n){
for (int i = 0; i < n; i++) {
System.out.print((int) Math.pow(i+1, 3)+"/"+(int)Math.pow(10, i)+(i + 1 < n?" + ":"\n"));
}
}
Addller bom dia…
Essa ajuda foi que tava precisando , ajudou demais muito obrigado ! ! !
Sua notação foi bem clara e objetiva, e gostei da parte de pre-teste que
avalia a proposição ajuda a definir e analisar as linhas de código.
Desde já agradeço