Buscar

AO2 Prova_ Algoritmos e Lógica de Programação

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 16 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 1/16
AO2 Prova
Entrega 27 de set de 2020 em 23:59 Pontos 6 Perguntas 10
Disponível 21 de set de 2020 em 0:00 - 27 de set de 2020 em 23:59 7 dias
Limite de tempo Nenhum
Instruções
Este teste não está mais disponível, pois o curso foi concluído.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 75 minutos 3,6 de 6
 As respostas corretas estão ocultas.
Pontuação deste teste: 3,6 de 6
Enviado 22 de set de 2020 em 22:07
Esta tentativa levou 75 minutos.
Importante:
Caso você esteja realizando a atividade através do aplicativo "Canvas Student", é necessário que
você clique em "FAZER O QUESTIONÁRIO", no final da página.
0,6 / 0,6 ptsPergunta 1
Leia o trecho abaixo:
 
O fluxo normal de um programa de computador executa instruções em
uma sequência: parte-se da primeira instrução do algoritmo até
alcançar a última instrução da sequência. Um dos recursos utilizados
em linguagens de programação, como forma de desvio do fluxo, é a
utilização de funções. As funções são trechos de códigos executados
que podem ser chamadas em qualquer ponto do programa, por outras
funções.
https://famonline.instructure.com/courses/9689/quizzes/29055/history?version=1
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 2/16
Toda função, exceto as funções declaradas como void, deve devolver
valor para o ponto de chamada. Esse valor é devolvido pelo comando
return.
Para ilustrar a situação, imagine que um programa necessita fazer
uma parte do cálculo de pagamento de um funcionário. Esse cálculo é
feito a partir dos proventos e dos descontos. Então, o programa deve
ser seccionado em várias funções para calcular cada um dos
elementos. Cada função deve fazer o cálculo que é de sua
responsabilidade e devolver o resultado para o ponto que a chamou
(Função principal). Esta, por sua vez, utiliza os valores devolvidos para
fazer a soma de proventos e a dedução dos descontos, gerando o
valor líquido.
Considerando esse contexto, avalie as seguintes asserções e a
relação proposta entre elas.
 
I. Dentro de uma mesma função, pode haver mais de um comando
return, porém, todos devem devolver valores do mesmo tipo.
 
PORQUE
 
II. O comando return deve devolver valores que sejam do mesmo tipo
que constam na declaração da função. Por exemplo a função “double
calcSalario()”, que deve devolver um valor calculado do tipo double
no(s) comando(s) return.
 
A respeito das asserções, assinale a opção correta:
 
As asserções I e II são proposições verdadeiras, mas a asserção II não
é uma justificativa da I.
 As asserções I e II são proposições ambas falsas. 
 
A asserção I é uma proposição verdadeira, e a asserção II é uma
proposição falsa.
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 3/16
 
As asserções I e II são proposições verdadeiras, e a asserção II é uma
justificativa correta da I.
Alternativa A
Alternativa está correta. A asserção I é uma proposição
verdadeira porque o comando return possui duas importantes
utilizações dentro de uma função: provocar a saída imediata da
função e devolver um valor para o ponto de chamada da função.
A linguagem C permite que, dentro de uma mesma função, seja
codificado mais de um comando return. Isso porque o término de
uma função pode ser executado em qualquer ponto dela. É
importante, porém, que o valor devolvido em todos os pontos seja
do mesmo tipo do dado que consta no comando de declaração da
função. A asserção II é uma proposição verdadeira porque a
linguagem C impõe que todo comando return (quando devolve
valores), ao ser codificado, deverá devolver valores do mesmo
tipo de dado que consta na declaração da função. A asserção II
justifica a corretamente a asserção I, já que ela afirma que os
comandos devem devolver valores do mesmo tipo.
 
A asserção I é uma proposição falsa, e a asserção II é uma proposição
verdadeira.
0,6 / 0,6 ptsPergunta 2
Leia o texto a seguir:
 
A chamada de funções proporciona ao programador uma forma
eficiente de estruturar sua lógica, pois, ao fragmentarmos a resolução
de um problema computacional em partes menores, passamos a ter
um domínio maior do fluxo do programa. Um código em C pode ser
estruturado com várias funções, e a função que obrigatoriamente deve
aparecer é a função main(). Uma função pode ou não ao seu término,
devolver um valor. Este valor é devolvido através do comando return.
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 4/16
Qual é o termo, em linguagem C, que declara explicitamente que a
função não devolve valores?
 double. 
 #include. 
 int. 
 void. 
Alternativa está correta, pois toda função, ao seu término, emite
um comando para a devolução de valor. O ponto de chamada da
função deve estar preparado para receber o valor. Para isso, na
declaração da função deve-se indicar qual é o tipo de dado que
deve ser retornado. Entretanto, se a função não devolver valor,
deverá ser indicado quando da codificação da função. Para tanto,
a função é declarada com o termo void, no lugar do tipo de dado.
Por exemplo: void fun_nome() { }.
 return. 
0,6 / 0,6 ptsPergunta 3
Leia o texto a seguir:
 
Toda linguagem de programação possui três aspectos que um
programador, ao fazer uso de uma dada linguagem, deve ter pleno
domínio: aspectos lexicais, sintáticos e semânticos. Os lexicais dizem
respeito ao conjunto de palavras que o programa reconhece
(dicionário), o que vale tanto para variáveis, comandos e
identificadores. Os sintáticos referem-se à estrutura de cada comando,
ou seja, a sintaxe do comando. Os semânticos estão relacionados com
a manipulação dos dados e seus respectivos tipos.
Do ponto de vista léxico, existem linguagens de programação que
possuem regras muitos específicas para a identificação de seus vários
identificadores (variáveis, comandos, labels etc.).
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 5/16
Qual é o termo que designa uma linguagem que diferencia letras
maiúsculas de letras minúsculas na codificação dos comandos e
atribuição de identificadores (variáveis, nomes de funções e labels)?
 IDE. 
 Eclipse. 
 Case Sensitive. 
Alternativa A
Alternativa está correta, pois case sensitive é um termo da Língua
Inglesa, incorporado aos termos das linguagens de programação,
que designa uma linguagem de programação que faz a
diferenciação entre letras minúsculas e maiúsculas na escrita.
Esse ponto é muito importante, pois faz referência a variáveis
homônimas escritas de formas diferentes (por exemplo, a variável
contador é diferente da variável Contador) e que podem produzir
erros de lógica.
 Palavra Reservada. 
 Expressões. 
0 / 0,6 ptsPergunta 4IncorretaIncorreta
Leia o trecho abaixo:
 
A linguagem C oferece estruturas para o controle do fluxo de execução
de um programa. Assim, pode-se alterar a simples execução
sequencial dos comandos. Dentre as estruturas de controle de fluxo,
temos os comandos condicionais. Além dos comandos condicionais, a
linguagem C também oferece estruturas que permitem repetir um
bloco de comandos. Essas estruturas são conhecidas como comandos
de repetição. A parte do programa que é executada várias vezes em
um comando de repetição é chamada de laço de repetição.
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 6/16
Considerando esse contexto, avalie as seguintes asserções e a
relação proposta entre elas.
 
I. O comando while é frequentemente utilizado quando não se
conhece, a priori, quanta vezes o laço de repetição será executado,
mas se sabe que o laço será executado pelo menos uma vez. O
comando while deve ser utilizado quandoa execução do laço de
repetição não for opcional.
 
PORQUE
 
II. O do-while é um comando de repetição que, primeiramente, testa o
seu critério de continuação e somente depois, dependendo do
resultado, prossegue na execução do laço de repetição.
 
A respeito dessas asserções, assinale a opção correta:
 
A asserção I é uma proposição verdadeira, e a asserção II é uma
proposição falsa.
 As asserções I e II são ambas proposições falsas. 
 
A asserção I é uma proposição falsa, e a asserção II é uma proposição
verdadeira.
 
As asserções I e II são proposições verdadeiras, mas a asserção II não
é uma justificativa correta da I.
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 7/16
A alternativa está incorreta. A asserção I é uma proposição falsa 
porque o while é um comando de repetição que, primeiramente, 
testa o seu critério de continuação e somente depois, 
dependendo do resultado, prossegue na execução do laço de 
repetição; ele deve ser usado somente quando o laço de 
repetição for opcional. A asserção II é uma proposição falsa 
porque o do-while é um comando de repetição que, 
primeiramente, executa o laço de repetição e, em seguida, testa o 
seu critério de continuação para determinar se executa 
novamente o laço de repetição
 
As asserções I e II são proposições verdadeiras, e a asserção II é uma
justificativa correta da I.
0,6 / 0,6 ptsPergunta 5
Leia o texto abaixo:
 
Um programador deve ter competência para resolver problemas
computacionais organizadamente. Ele deve praticar os seguintes
passos para a resolução sistemática de um problema computacional,
no qual temos o entendimento macro do problema, a elaboração do
algoritmo, a diagramação da solução e a codificação do programa.
Todas as fases assinaladas são importantes. Destacamos a de
elaboração do algoritmo, que traz subsídios sólidos para que a busca
do programa seja com baixo índice de erros em suas soluções
computacionais.
Considerando o trecho acima, avalie as seguintes asserções e a
relação proposta entre elas.
 
I. Uma pseudolinguagem possui uma estrutura que simula as
linguagens de programação formais praticadas por programadores
profissionais.
 
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 8/16
PORQUE
 
II. Um programa codificado em pseudolinguagem deve ser totalmente
aderente à estrutura de controle de fluxo e comandos das linguagens
formais de programação.
 
A respeito dessas asserções, assinale a opção correta:
 
A asserção I é uma proposição falsa, e a II é uma proposição
verdadeira.
 
As asserções I e II são proposições verdadeiras, mas a II não é uma
justificativa da I.
 
As asserções I e II são proposições verdadeiras, e a II é uma
justificativa da I.
Alternativa A
Alternativa está correta. A asserção I é uma proposição
verdadeira porque uma pseudolinguagem é uma reprodução
informal das linguagens de programação formais. Portanto, uma
pseudolinguagem deve ter a seguinte estrutura: Início do
programa, uma seção para a declaração de variáveis e uma
seção para a codificação do algoritmo. Além disso, é necessário
que a pseudolinguagem possua regras para os aspectos lexicais,
sintáticos e semânticos que toda linguagem de programação
possui. A asserção II é uma proposição verdadeira e justifica
corretamente a asserção I. Uma pseudolinguagem precisa ter
uma estrutura em conformidade com as linguagens formais
porque faz com que a transformação da pseudolinguagem para o
código formal tenha uma correspondência de paradigmas entre
ambas.
 
A asserção I é uma proposição verdadeira, e a II é uma proposição
falsa.
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 9/16
 As asserções I e II são proposições falsas. 
0 / 0,6 ptsPergunta 6IncorretaIncorreta
Leia o texto a seguir:
 
Toda linguagem de programação possui comandos que permitem a
execução repetida de um determinado trecho de código de programa.
Com esse recurso, o programador não precisa duplicar as linhas de
código em virtude da necessidade de executá-las várias vezes. Os
diversos comandos disponíveis são denominados estruturas de
repetição, comumente conhecidas como laços ou loop.
(Fonte: ALVES, W. P. Linguagem e Lógica de Programação.
São Paulo: Érica, 2015 - Adaptado).
Posto isso, avalie as afirmações a seguir:
 
I. A utilização das estruturas de repetição “enquanto...faça...” e
“para...de...ate...faça” podem ser utilizadas nos mesmos casos que
necessitem de solução com laço de repetição com a quantidade de
iterações definidas.
II. A utilização do laço de repetição “para...de...ate...faça” é
recomendada para o laço de repetição cujas quantidades de iterações
não são previsíveis.
III. A utilização de laço de repetição “enquanto...faça...” atende
somente a soluções que necessitem de um laço de repetição com a
quantidade de iterações indefinidas.
 
É correto o que se afirma em:
 I e II, apenas. 
 II e III, apenas. 
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 10/16
 III, apenas. 
Alternativa B
Alternativa está incorreta. A afirmativa I é verdadeira porque a
estrutura de repetição “enquanto...faça...” pode ser utilizada em
soluções que necessitem de um laço de repetição com a
quantidade de interações definidas, pois pode-se controlar a
quantidade de iterações na variável sentinela. A afirmativa II é
falsa, pois a estrutura de repetição “para...de...ate...faça” é
apropriada para soluções que necessitem de um laço de
repetição com a quantidade de iterações definidas, porque o
controle de iterações já faz parte da estrutura do comando. Assim,
as duas estruturas de repetição podem ser utilizadas nos mesmos
casos que necessitem de uma solução com um laço de repetição
com a quantidade de iterações definidas. A afirmativa III é falsa
porque a estrutura de repetição “enquanto...faça...” atende tanto
às soluções que necessitem de um laço de repetição com a
quantidade de iterações indefinidas, quanto às quantidades de
iterações indefinidas. Por isso, a alternativa correta é I, apenas.
 I, II e III. 
 I, apenas. 
0,6 / 0,6 ptsPergunta 7
Leia o texto abaixo:
 
As matrizes bidimensionais costumam ser utilizadas para representar
tabelas de valores, consistindo em informações organizadas em linhas
e colunas. Para identificar um elemento particular da tabela, devemos
especificar os subscritos. As matrizes bidimensionais são compostas
por m linhas e n colunas, e são chamadas de matrizes m por n, e
estes elementos m e n determinam o tamanho da matriz. Cada
elemento da matriz bidimensional é identificado (acessado) por um
nome de elemento seguido dos subscritores que identificam sua
localização na matriz.
(Fonte: DEITEL, H. M.; DEITEL, P. J. C++: Como Programar. 5. ed.
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 11/16
São Paulo: Pearson Prentice Hall, 2006. p. 279).
Considerando as informações apresentadas, avalie as afirmações a
seguir:
 
I. Suponha uma declaração de uma matriz bidimensional (linguagem
C): “int qtd[4][3];”. Com isso, o comando “printf("\n qtd %d = ", qtd[1
[5]);” possui um erro conceitual referente à manipulação de matrizes.
II. Para acessar os dados de uma matriz bidimensional, utilizamos os
índices i e j, que correspondem respectivamente à referência de
colunas e linhas da matriz.
III. Para percorrer todas as linhas e colunas de uma matriz, é
recomendado o laço de repetição for.
 
Está correto o que se afirma em:
 I e III, apenas. 
Alternativa A
Alternativa está correta. A afirmativa I é verdadeira porque
conceitualmente o acesso a uma tabela bidimensional tem a
seguinte regra: Os valores dos indexadores estão limitados ao
tamanho da matriz, ou seja, o tamanho de uma matriz
bidimensional é dado pelos valoresdeclarados para a linha e a
coluna (i e j respectivamente). No caso do comando print..., ele
manipulando a coluna [5], porém na declaração o valor máximo é
[3]. A afirmativa II é falsa porque, para acessar os dados de uma
matriz bidimensional, utilizamos índices i e j que correspondem
respectivamente à referência de linhas e colunas da matriz. A
afirmativa III é verdadeira porque, por definição, o laço de
repetição for é recomendado quando o número de repetições é
controlado por uma variável de valor conhecido. Uma matriz é
definida como sendo uma área de tamanho definido em linhas e
colunas. O laço de repetição for é então o paradigma de laço de
repetição ideal para percorrer uma matriz bidimensional. Logo, a
alternativa correta é I e III, apenas.
 I, apenas. 
 III, apenas. 
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 12/16
 I, II e III. 
 I e II, apenas. 
0 / 0,6 ptsPergunta 8IncorretaIncorreta
Leia o texto a seguir:
 
Uma variável é uma posição nomeada de memória usada para guardar
um valor que pode ser modificado pelo programa. Na linguagem C,
todas as variáveis devem ser declaradas antes de serem usadas.
As variáveis declaradas dentro de uma função (dentro do bloco de
código) são chamadas de variáveis locais. Um bloco de código inicia-
se com o caractere abre-chaves ({) e termina em fecha-chaves (}).
Ao contrário das locais, as variáveis globais são reconhecidas pelo
programa inteiro e podem ser usadas em qualquer ponto, ou seja, por
todas as funções. Essas variáveis podem preservar seus valores
durante todo o processamento do programa, valores que também
podem ser alterados por qualquer comando específico de atribuição de
valores localizados em qualquer parte do programa.
(Fonte: SCHILDT, H. C Completo e Total. São Paulo: Makron Books,
2006).
Com base nos dados acima, avalie as seguintes asserções e a relação
proposta entre elas.
 
I. Em um código C, podemos ter variáveis declaradas dentro de
diferentes funções com o mesmo nome, e seus valores em memória
são preservados, podendo ser alterados somente pela função que a
criou.
 
PORQUE
 
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 13/16
II. Em linguagem C, as variáveis declaradas fora de todos os blocos
(no início do programa) somente podem ser acessadas pela função
main(), porque esta é a função principal do programa.
 
A respeito das asserções, assinale a opção correta:
 
As asserções I e II são proposições verdadeiras, mas a asserção II não
é uma justificativa da I.
Alternativa B
Alternativa está incorreta. A asserção I é uma proposição
verdadeira, visto que variáveis locais só podem ser referenciadas
por comando que estão dentro do bloco no qual as variáveis
foram declaradas. Pelo princípio da variável local, ela somente
pode ser visível pela função que a criou, ou seja, embora as
variáveis distintas sejam homônimas, elas não são visíveis no
programa inteiro. A asserção II é uma proposição falsa, pois as
variáveis criadas fora de todas as funções que fazem parte do
programa são variáveis globais; e como tal são reconhecidas pelo
programa inteiro, podendo ser usadas em qualquer ponto do
programa, e não somente pela função main().
 As asserções I e II são ambas proposições falsas. 
 
A asserção I é uma proposição falsa, e a asserção II é uma proposição
verdadeira.
 
A asserção I é uma proposição verdadeira, e a asserção II é uma
proposição falsa.
 
As asserções I e II são proposições verdadeiras, e a asserção II é uma
justificativa da I.
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 14/16
0 / 0,6 ptsPergunta 9IncorretaIncorreta
Leia o trecho a seguir:
 
A construção de software não é uma tarefa simples. Por isso, está
sujeita a diversos tipos de problema que acabam resultando na
obtenção de um produto diferente daquele que se espera.
Para que os erros de software sejam descobertos antes de o software
ser liberado para utilização, existe uma série de atividades chamadas
de validação, verificação e teste, com a finalidade de garantir que tanto
o modo pelo qual o software está sendo construído quanto o produto
em si estejam em conformidade com o especificado.
(Fonte: DELAMARO, M. E.; MALDONADO, J. C.; JINO, M. Introdução
ao teste de software.
Rio de Janeiro: Campos/Elsevier, 2007).
Considerando as informações apresentadas, avalie as afirmações a seguir:
 
I. A única forma de testar um algoritmo é testá-lo após a codificação em uma
linguagem de programação, com isso, podemos entrar com os dados. Os
resultados finais mostram o comportamento exato do algoritmo nos vários
cenários de teste.
II. Um sistema é composto por um conjunto de programas, sendo que cada
qual possui um objetivo específico, mas que são todos voltados para resolver
um problema maior. Por isso, fazer testes unitários não contribui para o teste
de um sistema. Somente um teste amplo é capaz de mostrar pontos falhos
no todo.
III. Ao término da elaboração do algoritmo, o programador deve buscar
formas de verificar se está funcionando corretamente. Uma forma eficaz de
utilizar uma técnica com a qual possa identificar todas as variáveis
manipuladas no algoritmo, verificar todas as condições (requisitos)
necessárias para solucionar o problema, dispositivos de entrada e saída, e
pontos que demonstrem o comportamento do programa.
 
É correto o que se afirma em:
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 15/16
 I e II, apenas 
 II e III, apenas. 
 I, apenas. 
 III, apenas. 
 I e III, apenas. 
Alternativa E
Alternativa está incorreta. A afirmativa I é falsa, uma vez que
existe outra forma de testar um programa antes de sua
codificação. Para esse fim, temos o teste de mesa, que verifica
em tempo de algoritmo codificado em pseudolinguagem ou
fluxograma. Assim, não há necessidade de o computador fazer o
teste de mesa, o qual pode ser feito com a utilização somente de
lápis e papel. A afirmativa II é falsa por afirmar que testes
unitários não contribuem para o teste de sistema. Se um sistema
é composto de vários programas, então o teste unitário contribui
muito para o teste de sistema, pois este está voltado para a
verificação de um resultado amplo; já o teste unitário busca a
verificação muito próxima de cada linha codificada no programa.
A afirmativa III é verdadeira. Após produzir o algoritmo, o
programador deve verificar se este está funcionando
corretamente, ou seja, se está fazendo o que foi pedido. Por isso,
existe uma técnica eficaz, chamada teste de mesa, a qual facilita
o entendimento do fluxo de execução do algoritmo e permite
identificar erros de lógica na construção do algoritmo. Esta técnica
é composta por um instrumento que reúne todas as variáveis
envolvidas no algoritmo e todas as condições que o programa
deve prever. Nessa técnica, também é possível que se planejem
vários cenários a se testar. Portanto, a alternativa correta é III,
apenas.
0,6 / 0,6 ptsPergunta 10
Leia o texto a seguir:
 
12/09/21, 10:35 AO2 Prova: Algoritmos e Lógica de Programação
https://famonline.instructure.com/courses/9689/quizzes/29055 16/16
Toda linguagem de programação possui três aspectos que um
programador, ao fazer uso de uma dada linguagem, deve ter pleno
domínio: aspectos lexicais, sintáticos e semânticos. Os lexicais dizem
respeito ao conjunto de palavras que o programa reconhece
(dicionário), o que vale tanto para variáveis, comandos e
identificadores. Os sintáticos referem-se à estrutura de cada comando,
ou seja, a sintaxe do comando. Os semânticos estão relacionados com
a manipulação dos dados e seus respectivos tipos.
Do ponto de vista léxico, existem linguagens de programação que
possuem regras muitos específicas para a identificação de seus vários
identificadores (variáveis, comandos, labels etc.).Qual é o termo que designa uma linguagem que diferencia letras
maiúsculas de letras minúsculas na codificação dos comandos e
atribuição de identificadores (variáveis, nomes de funções e labels)?
 IDE. 
 Case Sensitive. 
Alternativa A
Alternativa está correta, pois case sensitive é um termo da Língua
Inglesa, incorporado aos termos das linguagens de programação,
que designa uma linguagem de programação que faz a
diferenciação entre letras minúsculas e maiúsculas na escrita.
Esse ponto é muito importante, pois faz referência a variáveis
homônimas escritas de formas diferentes (por exemplo, a variável
contador é diferente da variável Contador) e que podem produzir
erros de lógica.
 Eclipse. 
 Expressões. 
 Palavra Reservada. 
Pontuação do teste: 3,6 de 6

Continue navegando