Escolar Documentos
Profissional Documentos
Cultura Documentos
Resumo do Documento 📝
Existem quatro tipos de sub-rotinas: 🧮
Sub-rotinas
O documento explica os quatro tipos de sub-rotinas, que são blocos de instruções
que realizam tarefas específicas dentro de um algoritmo¹. As sub-rotinas podem ser
sem parâmetros, com parâmetros, sem retorno ou com retorno.
Fluxograma e Pseudocódigo
O documento mostra como representar algoritmos em fluxograma, que é um
diagrama gráfico, e em pseudocódigo, que é uma linguagem simplificada. O
documento também utiliza a ferramenta VisualG para testar os algoritmos.
📤
1. Sem parâmetros e sem retorno: 🚫📥🚫
Unidade 5 Sub Rotinas 1
Este tipo de sub-rotina não recebe nenhum valor de entrada e não retorna
nenhum valor.
Ela é usada para executar uma tarefa específica que não requer entrada ou
saída.
graph LR
Start(Início) --> Operation{Executar uma tarefa específica}
Operation --> End(Fim)
algoritmo "SemParametrosSemRetorno"
inicio
escreval("Este é um exemplo de sub-rotina sem parâmetros e sem retorno.")
escreval("Ela é usada para executar uma tarefa específica que não requer entrada o
u saída.")
fimalgoritmo
algoritmo "SemParametrosSemRetorno"
inicio
escreval("Este é um exemplo de sub-rotina sem parâmetros e sem retorno.")
escreval("Ela é usada para executar uma tarefa específica que não requer entra
da ou saída.")
fimalgoritmo
📤
2. Com parâmetros e sem retorno: ✅📥🚫
Este tipo de sub-rotina recebe um ou mais valores de entrada, mas não retorna
nenhum valor.
Ela é usada para executar uma tarefa que requer entrada, mas não produz uma
saída.
graph LR
Start(Inicio) --> Input{Receber Entrada}
Input --> Operation{Executar uma tarefa}
Operation --> End(Fim)
algoritmo "ComParametrosSemRetorno"
var
entrada: inteiro
procedimento ExecutarTarefa(entrada: inteiro)
inicio
escreval("Executando uma tarefa com a entrada: ", entrada)
fimprocedimento
inicio
escreva("Digite um número: ")
leia(entrada)
ExecutarTarefa(entrada)
fimalgoritmo|
var
entrada: inteiro
inicio
escreva("Digite um número: ")
leia(entrada)
ExecutarTarefa(entrada)
fimalgoritmo
📤
3. Sem parâmetros e com retorno: 🚫📥✅
Ela é usada para executar uma tarefa que produz uma saída, mas não requer
entrada.
graph LR
Start[(Início)] --> Operation{Executar uma tarefa}
Operation --> Output{Produzir Saída}
Output --> End(Fim)
algoritmo "SemParametrosComRetorno"
var
saida: inteiro
funcao ExecutarTarefa(): inteiro
inicio
retorne 42
fimfuncao
inicio
saida := ExecutarTarefa()
escreval("A saída da tarefa é: ", saida)
fimalgoritmo
algoritmo "SemParametrosComRetorno"
var
saida: inteiro
Esta é uma função chamada ExecutarTarefa que não recebe nenhum parâmetro
de entrada, mas retorna um valor do tipo inteiro. A função retorna o número 42.
inicio
saida := ExecutarTarefa()
escreval("A saída da tarefa é: ", saida)
fimalgoritmo
📤
4. Com parâmetros e com retorno: ✅📥✅
Este tipo de sub-rotina recebe um ou mais valores de entrada e retorna um
valor.
Ela é usada para executar uma tarefa que requer entrada e produz uma saída.
graph LR
Start[(Início)] --> Input{Receber Entrada}
Input --> Operation{Executar uma tarefa}
Operation --> Output{Produzir Saída}
Output --> End[(Fim)]
inicio
escreva("Digite um número: ")
leia(entrada)
saida := ExecutarTarefa(entrada)
escreval("O dobro do número que você digitou é: ", saida)
fimalgoritmo
algoritmo "ComParametrosComRetorno"
var
entrada, saida: inteiro
inicio
escreva("Digite um número: ")
leia(entrada)
saida := ExecutarTarefa(entrada)
escreval("O dobro do número que você digitou é: ", saida)
fimalgoritmo
algoritmo "ExemploComplexo"
var
numero1, numero2: real
procedimento somar(n1, n2: real)
var s: real
inicio
s <- n1 + n2
escreval("A soma é: ", s)
fimprocedimento
Explicaçao
var
numero1, numero2: real
inicio
escreva("Digite o primeiro número: ")
leia(numero1)
escreva("Digite o segundo número: ")
leia(numero2)
somar(numero1, numero2)
subtrair(numero1, numero2)
multiplicar(numero1, numero2)
dividir(numero1, numero2)
fimalgoritmo
codigo Complexo
primeiro exemplo 😝
algoritmo "mandado para no pdf"
var
n1, n2: real
somar(n1, n2)
subtrair(n1, n2)
multiplicar(n1, n2)
dividir(n1, n2)
fimalgoritmo