Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

lamuria

Sequence

Recommended Posts

lamuria

boas pessoal!

comecei a fazer um programa que através de uma sequência que é inserida no input, ele nos diz se é crescente, estritamente crescente, decrescente ou estritamente decrescente.

por exemplo se a minha sequência é:

1 2 3 4 5 6 7 8 9 10    o output deveria dizer "estritamente crescente"

1 1 1 1 1 2 2 2 2 2      o output deveria ser "crescente"

2 2 2 2 2 1 1 1 1 1      o output deveria ser "decrescente"

10 9 8 7 6 5 4 3 2 1    o output deveria ser "Estritamente decrescente"

mas isto é o que deveria de acontecer, por que o que acontece é o seguinte:

1 2 3 4 5 6 7 8 9 10    output  "estritamente crescente / crescente"

1 1 1 1 1 2 2 2 2 2      o output deveria ser "crescente / decrescente"

2 2 2 2 2 1 1 1 1 1      o output deveria ser "decrescente / crescente"

10 9 8 7 6 5 4 3 2 1    o output deveria ser "Estritamente decrescente / decrescente"

esta é a parte importante do código:

if(a<b && b<c && c<d && d<e && e<f && f<g && g<h && h<i && i<j || j>i && i>h && h>g && g>f && f>e && e>d && d>c && c>b && b>a){

System.out.println("Sequencia estritamente Crescente");

}

else{

System.out.println("Sequencia Decrescente");

}

if(a>b && b>c && c>d && d>e && e>f && f>g && g>h && h>i && i>j){

System.out.println("Sequencia estritamente Crescente");

}

else{

System.out.println("Sequencia Crescente");

}

ja percebi que o que problema está nos iguais, porque se eu tiver uma sequência de 2 números e tiver duas afirmações:

        a<b e a<=b                  a primeira está contida na segunda, daí estes erros, mas ja puxei pela cabeça e não me ocorre maneira nenhuma de resolver isto

obrigado 

 

Share this post


Link to post
Share on other sites
KarlMTC

Primeiro comprovas se a sequencia tem pelo menos 2 números (para que possa haver comparações). Depois comparas o primeiro com o segundo. Se o primeiro for menor ja sabes que a sequencia vai ser crescente (estricta ou não estrictamente...), se for maior exactamente ao contrario. A partir de ahí com um for ou um while comparas até ao fim da sequencia o resto de números. Se houver um que é igual mostras que é crescente, se forem sempre maiores que o anterior mostras estrictamente crescente...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.