Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Anacleto Bunga

estrutura condicional em algoritmo

Recommended Posts

1 - Qual a diferença entre o se da 1ª forma e o da 2ª forma?

 

1ª forma
se(condição1)entao
se(condição2)entao
bloco de comandos
fimse
fimse
--------------------------------------------------------------------
2ª forma
se(condição1) e (condição2)entao
bloco de comandos
fimse

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você fizer do primeiro jeito:

If(c1) Then
 If(c2) Then
  Bloco
 End
End

Você vai usar mais memória e vai diminuir a performance de execução (justamente pelo maior uso de memória). As duas condições são análogas, tanto a primeira forma quanto a segunda dão na mesma em termos lógicos, mas em termos de execução é mais aceitável (e até mesmo uma boa prática) reduzir o máximo possível a quantidade de IF's em um programa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O primeiro vc está usando dois SE, o primeiro faz comparação se atender a condição dai entre no segundo SE.

Na segunda forma, ele faz uma comparação das duas condições no mesmo SE!;

Diminuindo a quantia de memoria usada!:

 

Conteúdo
Trabalhos:
E-mail: mvf5system@gmail.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

1 - Qual a diferença entre o se da 1ª forma e o da 2ª forma?

 

1ª forma
se(condição1)entao
se(condição2)entao
bloco de comandos
fimse
fimse
--------------------------------------------------------------------
2ª forma
se(condição1) e (condição2)entao
bloco de comandos
fimse

 

A 1ª forma é um SE aninhado. O SE aninhado é quando tem uma estrutura SE dentro da outra.

A 2º forma é um SE simples, pois tem apenas 1 SE.

Tem uma terceira forma chamada composto que é quando tem o SE e o SE NAO.

 

Enfim. A diferença entre os dois exemplos que você nos deu é a forma que você fez, o resultado será o mesmo. Mas se você observar a 2ª forma você escreveu bem menos para ter o mesmo resultado.

 

Citando a 1º forma, quando é testado o primeiro SE (o que está mais para fora) e a condição for verdade ele vai testar em seguida o segundo SE, se a condição for verdade novamente executa o código (bloco de comandos).

 

Já a 2ª forma, de uma só vez você testou os 2 SE's da 1º forma. Lembra que na primeira as duas condições do SE tinha que ser verdade? Pois bem na segunda forma onde tem o E de lógica matemática, onde a condição é verdade se as duas forem verdade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.