O objetivo principal deste trabalho é ensinar um modo sistemático de raciocínio, concentrando a atenção do leitor na lógica empregada na abordagem e solução dos problemas apresentados e abstraindo-o de detalhes relacionados à sintaxe da linguagem de programação eventualmente adotada.