Questão de Algoritmos e Estrutura de Dados — Algoritmos — FUNDATEC 2024
- Código
- qg168534
- Banca
- FUNDATEC
- Órgão
- Prefeitura de Capivari do Sul - RS
- Ano
- 2024
- Nível
- Médio
- Cargo
- Técnico em Informática
- Aparametro
- Bcaso
- Cprocedimento
- Dfuncao
- Esubprograma
GabaritoC — procedimento
Gabarito: letra C. O código declara um subprograma chamado teste que recebe um parâmetro inteiro por valor e executa apenas um escreval(v) — ou seja, não retorna nenhum valor. Em Visualg, subprogramas que não retornam valor são declarados com a palavra procedimento, e sua finalização usa a mesma palavra (fimprocedimento). Portanto, as lacunas nas linhas 04 e 07 devem ser preenchidas com "procedimento".
A banca testa o conhecimento sobre a sintaxe do Visualg para subprogramas. O trecho procedimento teste(var v: inteiro) é a forma correta de declarar um procedimento com passagem de parâmetro por valor (a palavra var indica passagem por referência, mas o parâmetro é copiado por valor quando está na declaração? Na verdade, em Visualg, var indica que o parâmetro é passado por referência; mas isso não altera a classificação como procedimento. O importante é que o subprograma não retorna valor, então não pode ser função.
Subprograma | Palavra reservada (início) | Palavra reservada (fim) | Retorna valor? | Uso no código |
|---|---|---|---|---|
Procedimento |
|
| Não | Apenas executa ações (ex.: |
Função |
|
| Sim | Retorna um valor para a expressão que a chamou |
Caso |
|
| — | Estrutura de seleção múltipla, não subprograma |
Parâmetro | — | — | — | Conceito, não palavra reservada para declarar subprograma |
Subprograma | — | — | — | Termo genérico, não palavra reservada no Visualg |
"parametro" não é um tipo de subprograma, e sim um conceito relacionado à passagem de dados. Em Visualg, não se usa essa palavra para declarar subprogramas.
"caso" é a palavra reservada para a estrutura de seleção múltipla (escolha-caso), não para declaração de subprogramas.
"procedimento" é a palavra reservada correta para declarar um subprograma que não retorna valor. A sintaxe é: procedimento nome(parametros) e o bloco termina com fimprocedimento. O código do enunciado se encaixa perfeitamente.
"funcao" seria usada se o subprograma retornasse um valor. No caso, teste apenas escreve o valor e não retorna nada, portanto não é uma função. Funções têm palavra funcao e terminam com fimfuncao, e geralmente possuem uma atribuição ao nome da função para retornar o valor.
"subprograma" é um termo genérico, mas não é a palavra reservada do Visualg. A linguagem usa especificamente procedimento ou funcao.
Para distinguir procedimento de função no Visualg, lembre-se: se o subprograma retorna um valor (usando nome <- expressao), é função; caso contrário, é procedimento. A banca explora essa diferença.
Gabarito: letra C.
Link permanente: /questoes/qg168534