Instrução condicional aninhada. condições difíceis


Em blocos "if" e caso contrário" pode incluir quaisquer outras instruções, incluindo outras instruções condicionais aninhadas; a instrução else refere-se ao if
anterior mais próximo
Por exemplo 
if ( A > 10 ) se (A > 100) System.out.print("Você tem muito dinheiro."); outro System.out.print("Você tem dinheiro suficiente."); outro System.out.print("Você não tem dinheiro suficiente."); Para facilitar a compreensão do programa, todos os blocos "se" e caso contrário" (juntamente com seus parênteses delimitadores) são deslocados para a direita por 2-3 caracteres - isso é chamado de notação de escada
Grave "escada" é uma boa forma para qualquer programador!

O problema anterior pode ser resolvido de forma mais curta usando condições complexas. 

Vamos entender o que são CONDIÇÕES COMPLEXAS

As condições mais simples consistem em uma relação (maior que, menor que, etc.) Mas às vezes é necessário combinar condições simples em outras mais complexas, por exemplo: está frio lá fora e está chovendo. Duas condições simples (está frio lá fora) (está chovendo lá fora) estão conectadas aqui pela cópula I.

CONDIÇÃO COMPLEXA - consiste em duas ou mais relações simples (condições) que são combinadas usando operações lógicas
  E - multiplicação booleana - escrita em Java como && (ou e)
  OU - adição lógica - escrito em Java como < forte >|| (ou < forte >ou)
  NÃO - negação lógica - escrita como  em Java!   ;

Operação E - requer o cumprimento simultâneo de duas condições
  condição 1 && condição 2   - será verdadeiro apenas se ambas as condições simples forem verdadeiras ao mesmo tempo
além disso, na linguagem de programação Java - se a condição 1 for falsa, a condição 2 não será verificada

A operação OU - requer pelo menos uma das condições
  condição 1 ||  condição 2   - será avaliado como falso somente se ambas as condições simples forem falsas ao mesmo tempo
além disso, na linguagem de programação Java - se a condição 1 for verdadeira, a condição 2 não será verificada

Operação NÃO 
 ! condição 1 - avaliará como falso, a condição 1 é verdadeira e vice-versa
Por exemplo, as duas condições a seguir são equivalentes:   A>B     e    !(A<=B)

PRIORIDADE DE EXECUÇÃO DE OPERAÇÕES LÓGICAS E RELACIONAMENTOS
1 operações entre colchetes
2 Operação NÃO
3 relações lógicas >, <, >=, <=, ==, !=
4 operação E
5 operação OU
Os parênteses são usados ​​para alterar a ordem das ações

VARIÁVEIS BOOL
Em muitas linguagens de programação é possível utilizar variáveis ​​que armazenam valores booleanos ("true"/"false"). Em C++, tais variáveis ​​podem assumir os valores true (true) ou false (false). Por exemplo, um fragmento de programa  booleano a, b; a = verdadeiro; b=falso; System.out.print(a || b); Exibe 1 (que é verdadeiro, falso é 0).
As variáveis ​​booleanas são do tipo bool, em homenagem ao matemático inglês George Boole, o criador da álgebra da lógica.