Grande parte da vida profissional de um programador é dedicada ao estudo de diferentes linguagens de programação e como elas podem atender a uma necessidade específica da melhor maneira possível. Acerca dos princípios fundamentais da computação, o que é um algoritmo?
Questão
Grande parte da vida profissional de um programador é dedicada ao estudo de diferentes linguagens de programação e como elas podem atender a uma necessidade específica da melhor maneira possível. Acerca dos princípios fundamentais da computação, o que é um algoritmo?
Alternativas
A) Um algoritmo é uma sequência não ordenada de instruções complexas e executáveis a serem seguidas para a solução de um determinado problema, especialmente por computadores.
B) É outra denominação para código de computador.
C) O processador do computador, que processa instruções escritas em alguma linguagem para, através de uma sequência de instruções bastante simples, gerar uma aplicação útil.
D) O ser humano, que escreve códigos em alguma linguagem para, através de uma sequência de instruções complexas, gerar uma aplicação útil.
E) Um algoritmo é uma sequência finita de instruções simples e executáveis a serem seguidas para a solução de um determinado problema, especialmente por computadores.
Explicação
Um algoritmo é uma descrição passo a passo de como resolver um problema, isto é, um conjunto de instruções bem definidas.
Características essenciais de algoritmos:
- Sequência ordenada: as instruções devem ter uma ordem lógica (logo, a alternativa A erra ao dizer “não ordenada”).
- Finitude: deve terminar após um número finito de passos (a alternativa E explicita isso).
- Executabilidade/efetividade: os passos devem ser simples o suficiente para serem executados (por uma pessoa seguindo regras ou por um computador).
- Não é sinônimo de código: código é a implementação do algoritmo em uma linguagem (logo, a alternativa B está incorreta).
- Não é processador nem o ser humano: C e D descrevem agentes (hardware/pessoa), não o conceito de algoritmo.
Assim, a definição correta é a que descreve uma sequência finita, ordenada e executável de instruções para resolver um problema.
Alternativa correta: (E).