Na construção de algoritmos, qual estrutura de controle de fluxo é utilizada para tomar decisões e desviar a execução do código com base em uma condição (verdadeira ou falsa)?