terça-feira, 17 de abril de 2012

Programação Estruturada

Bom dia pequenos gafanhotos!


A programação estruturada, como uma forma de possibilitar que o programador tenha maior controle sobre sobre o fluxo de execução do programa. Para isso qualquer programa pode ser reduzido a 3 estruturas:
  1. Estruturas de sequência: Onde uma tarefa é executada após a outra, linearmente.
  2. Estruturas de decisão: Onde, a partir de um teste lógico, determinado trecho de código é excutado, ou não.
  3. Estruturas de iteração: Onde, a partir de um teste lógico, determinado trecho de código é repetido por um número finito de vezes.

No trecho de código Python a seguir, podemos reparar o emprego das três estruturas citadas. Nas linhas 1, 2 e 3 temos um exemplo de uma estrutura de sequência. Cada linha é executada após a anterior, começando da primeira. Entre as linhas 5 e 9, temos uma estrutura de decisão, exemplificada pelo comando if. Na linha 5 este comando executa um teste lógico. Caso o valor seja verdadeiro, as linhas 6 e 7 serão executadas. Caso contrário, o fluxo se desvia para a linha 8, que executará a linha 9. Nas linhas 6 e 7, temos uma estrutura de iteração. Na linha 6 está declarada a estrutura, que regula quantas vezes a linha 7 será executada.


  1. print "Tabuada!"  
  2. a = int(raw_input("Entre com a tabuada que deseja [0-9]: "))  
  3. print  # Apenas para deixar uma linha em branco.  
  4.   
  5. if 0 <= a <= 9:  
  6.     for i in range(10):  
  7.         print "%d x %d = %.2d" % (a, i, a * i)  
  8. else:  
  9.     print "Entre ZERO e NOVE!"  

Vantagens
  • Provê um melhor controle sobre o fluxo de execução do código, quando comparada com a programação imperativa.
  • É fácil de se entender, sendo amplamente usada em cursos introdutórios de programação.

Desvantagens
  • Ainda se foca em como a tarefa deve ser feita e não em o que deve ser feito.
  • Tende a gerar códigos confusos, onde tratamento dos dados são misturados com o comportamento do programa.

Nenhum comentário: