Estruturas Básicas
Há 3 (três) estruturas que utilizamos para criar nossos algoritmos:
Estrutura Sequencial
Indica a ordem propriamente dita na qual as instruções (ou blocos de instruções) de um algoritmo serão executadas, definindo a(s) entrada(s), processamento (lógico ou matemático) e a(s) saída(s) dos dados.
Em Portugol, temos o seguinte exemplo:
algoritmo "calcular_media" var nota1, nota2, media: real inicio leia(nota1) leia(nota2) media <- (nota1 + nota2) / 2 escreva(media) fimalgoritmo
A execução do algoritmo segue sequencialmente da linha 1 até a linha 11.
Estrutura Condicional
Esta estrutura provoca um desvio no fluxo de execução das instruções de um algoritmo, a partir da verificação de uma dada condição.
Em Portugol, temos o seguinte exemplo:
algoritmo "calcular_media" var nota1, nota2, media: real inicio leia(nota1) leia(nota2) media <- (nota1 + nota2) / 2 se (media >= 7) entao escreva("APROVADO") senao escreva("REPROVADO") fimse fimalgoritmo
Observe que o algoritmo é executado sequencialmente até a linha 8; na linha linha 10, é feito um teste lógico (a condição media >= 7).
Sendo a média calculada maior ou igual a 7, o fluxo do algoritmo é desviado até a linha 11 e, em seguida, para linha 15 (saltando as linhas 12 e 13).
Caso a média não seja maior ou igual a 7, o fluxo do algoritmo é desviado até a linha 13, seguindo para a linha 15.
Estrutura de Repetição
Nesta estrutura, as instruções (ou blocos de instruções) são executadas repetidamente enquanto uma da dada condição é satisfeita.
Suponha que tenhamos que calcular a média de três alunos. O algoritmo para calcular a média individual nós já temos, bastando repeti-lo, nesse caso, 3 vezes.
Teremos, portanto, o seguinte algoritmo:
algoritmo "calcular_media" var nota1, nota2, media: real n: inteiro inicio para n de 1 ate 3 faca escreval(n:1, "° ALUNO(A)") escreva("1ª NOTA = ") leia(nota1) escreva("2ª NOTA = ") leia(nota2) media <- (nota1 + nota2) / 2 escreval("MÉDIA = ", media) se (media >= 7) entao escreval("APROVADO") senao escreval("REPROVADO") fimse escreval() fimpara fimalgoritmo
Ao executar o algoritmo acima, atribuímos valores quaisquer para as notas e obtivemos a seguinte saída:
Cabe destacar que o trecho do algoritmo entre as linhas 7 e 21 é repetido 3 vezes.
⚠️ NOTA: Por hora, não se preocupe em entender tudo. Atente-se à definição de algoritmos, como são representados e quais são suas estruturas básicas.
Ao longo do curso, as coisas ficarão claras. Tenha paciência!