Prévia do material em texto
•
Pergunta 1
1 em 1 pontos
Durante o desenvolvimento de programas, os operadores lógicos E e OU são usados para relacionar
expressões. O resultado de uma operação lógica será VERDADEIRO ou FALSO. Ao utilizar o operador
E, por exemplo, o resultado será VERDADEIRO somente se estiver entre dois operandos também
VERDADEIROS.
Analise, então, as seguintes expressões:
Expressão 1: FALSO OU VERDADEIRO E FALSO E VERDADEIRO.
Expressão 2: FALSO E VERDADEIRO E FALSO OU VERDADEIRO.
Sobre as expressões 1 e 2, é corretor dizer que
Resposta
Selecionada:
e.
o operador OU resultará VERDADEIRO quando qualquer um dos operandos também for
verdadeiro. Logo, o resultado da expressão 2 será VERDADEIRO.
Respostas: a.
o operador OU resultará VERDADEIRO quando qualquer um dos operandos também for
verdadeiro. Logo, o resultado da expressão 1 será VERDADEIRO.
b.
tanto a expressão 1 quanto a expressão 2 terão como saída o valor VERDADEIRO, afinal,
em ambas as expressões temos o operador OU, que é chamado de operador
permissivo.
c.
o operador E resultará VERDADEIRO quando qualquer um dos operandos também for
verdadeiro. Logo, o resultado da expressão 2 será VERDADEIRO.
d.
o operador E é menos permissivo e restritivo que o operador OU, deste modo, em uma
expressão, basta que apenas um operando seja VERDADEIRO para que toda a
expressão se torne verdadeira.
e.
o operador OU resultará VERDADEIRO quando qualquer um dos operandos também for
verdadeiro. Logo, o resultado da expressão 2 será VERDADEIRO.
Comentário da
resposta:
Analisando a tabela lógica ou tabela verdade, o operador OU resultará VERDADEIRO
sempre que estiver relacionando qualquer valor booleano com um valor
VERDADEIRO. Em outras palavras, basta que um dos operandos seja VERDADEIRO
para que o resultado seja VERDADEIRO. O operador E é mais restritivo, logo, para que
o resultado de uma expressão lógica seja verdadeiro, necessariamente todos os
operandos precisam também ser verdadeiros.
• Pergunta 2
1 em 1 pontos
Em C# e em outras linguagens de programação, para que seja possível manipular dados, uma das
necessidades é criar variáveis que armazenem temporariamente valores os quais podem ser
numéricos (int ou float), texto (string) ou booleano (bool). Observe o código a seguir escrito em C#:
1 a = 5.95681545;
2 b = Console.ReadLine();
3 c = 7 % 2;
4 d = 3.5 * c;
Marque a alternativa que apresenta corretamente os tipos das variáveis a, b, c e d, respectivamente.
Resposta
Selecionada:
d.
a: float; b: string; c: int; d: float.
Respostas: a.
a: int; b: string; c: float; d: int.
b.
a: float; b: int; c: float; d: float.
c.
a: int; b: string; c: int; d: int.
d.
a: float; b: string; c: int; d: float.
e.
a: int; b: int; c: float; d: int.
Comentário
da resposta:
Em a) temos um número que é ponto flutuante, isso pode ser observado pelo uso de
casas decimais; em b) a variável recebe um conteúdo da linha de comando via o
método input, logo, independentemente de o valor digitado ser um número ou letra, o
tipo sempre será string; em c) estamos encontrando o resto de uma divisão, logo, o
valor é inteiro; em d) estamos multiplicando um ponto flutuante por um inteiro, o que
resulta em um ponto flutuante ou float.
• Pergunta 3
1 em 1 pontos
Observe com atenção o código a seguir desenvolvido no Scratch.
Considerando esse código, o significado dos blocos e suas saídas, analise as afirmativas a seguir:
I. O componente laranja é um nó encontrado no grupo de nós chamado Eventos e será ativado
quando uma tecla for pressionada.
II. Ao clicar na seta para a esquerda do teclado, no segundo bloco o gato inverterá o trajeto e, ao invés
de ir para frente, irá para trás.
III. O algoritmo desenvolvido é responsável por fazer o gato virar para trás e dar 100 passos nesta
direção.
IV. Ao clicar na seta para esquerda do teclado, o gato por 4 vezes, o gato fará um trajeto na tela
semelhante a um quadrado no sentido horário.
Está correto o que se afirma em:
Resposta
Selecionada:
a.
I e IV, apenas.
Respostas: a.
I e IV, apenas.
b.
II e IV, apenas.
c.
II e III, apenas.
d.
III e IV, apenas.
e.
I e III, apenas.
Comentário da
resposta:
A afirmativa I está correta, pois o bloco laranja é um componente encontrado no
grupo de nós laranja chamado Eventos. Neste bloco podemos selecionar qual tecla
que, ao ser clicada, executará um evento (ação) no personagem.
A afirmativa II está incorreta, pois apesar da tecla indicada ser a da esquerda, o gato
vai virar 90° e deslocar 100 passos para baixo. Sendo assim, ele não virá para trás, ele
ficará de cara para baixo e dará os 100 passos em sentido horário.
A afirmativa III está incorreta, pois o gato não irá para trás, ele ficará de cara para baixo
e, em seguida, se deslocará neste sentido.
A afirmativa IV está correta, pois apesar da tecla indicada no bloco ser a da esquerda,
ao clicar uma vez nessa tecla, o gato rotacionará 90°, ficando de cara para baixo, e
andará 100 passos para baixo. Ao pressionar uma segunda vez, o gato rotacionará
mais 90° e, ficando de ponta cabeça, deslocará 100 passos para a esquerda. Se
pressionar o botão mais duas vezes, o gato completará o trajeto em sentido horário,
formando um quadrado.
• Pergunta 4
1 em 1 pontos
Observe com atenção o pseudocódigo a seguir:
início
se temperatura == “40”
escreva(“ligar ar-condicionado”)
escreva(“fechar as janelas”)
senão
escreva(“ligar ventilador”)
escreva(“abrir as janelas”)
fim-se
fim
Sobre algoritmos, assinale a alternativa correta.
Resposta
Selecionada:
d.
O pseudocódigo é utilizado para acelerar o ciclo de desenvolvimento de um código.
Respostas: a.
O pseudocódigo é uma representação formal de um código real, porém em português.
b.
O pseudocódigo possui uma estrutura pré-definida, ou seja, específica, e é um
intermediário entre o português e uma linguagem de programação.
c.
O pseudocódigo é usado em automação residencial, como no caso do código
apresentado para ligar o ventilador ou o ar-condicionado.
d.
O pseudocódigo é utilizado para acelerar o ciclo de desenvolvimento de um código.
e.
O pseudocódigo é usado para comunicar ideias, assim como as linguagens de
programação, porém em português.
Comentário da
resposta:
O pseudocódigo é uma escrita intermediária entre a linguagem falada ou o algoritmo
narrativo e o código de computador. Logo, é uma boa opção escrevê-lo a fim de
ganhar tempo e diminuir erros relacionados ao desenvolvimento.
• Pergunta 5
1 em 1 pontos
Analise com atenção o código a seguir, o qual possui duas variáveis (a e b), bem como uma estrutura
condicional if na linha 4, que, caso seja verdadeira, irá executar o conteúdo interno que
correspondem às instruções das linhas 5, 6 e 7.
1 int a, b, aux;
2
3 a = 41;
4 b = 9;
5
6 if(a > b){
7 aux = a;
8 a = b;
9 b = aux;
10 }
11 Console.WriteLine(“O valor de a é “ + a);
12 Console.WriteLine(“O valor de b é “ + b);
Considerando as informações apresentadas, assinale a opção correta.
Resposta
Selecionada:
c.
O objetivo deste código é apresentar uma sequência ordenada nas linhas 11 e 12, e a
linha 7 é essencial neste processo.
Respostas: a.
O código apresentará um erro quando o valor de a for igual ao valor de b, uma vez que
não existe uma condição que contemple esta igualdade.
b.
O código apresentará erro na linha 6 uma vez que o sinal de chaves está na mesma linha
que a estrutura if, ela deveria estar na linha seguinte.
c.
O objetivo deste código é apresentar uma sequência ordenada nas linhas 11 e 12, e a
linha 7 é essencial neste processo.d.
O valor de a e b, após a execução dos comandos das linhas 8 e 9, será 41, o mesmo
valor da variável aux.
e.
As linhas 7 e 9 poderiam ser suprimidas, ficando apenas os comandos a = b e b = a
dentro do escopo do if.
Comentário da
resposta:
O algoritmo realiza a troca dos valores entre as variáveis a e b sempre que a variável a
for maior que a variável b. Entretanto, se fizer uma troca direta, ou seja, a receber b e b
receber a, perderemos o valor da variável a. Deste modo, precisamos de um auxiliar
que guarde para nós o valor de a, então isso é feito na linha 7. A única condição de
entrarmos neste if é quando a variável a for maior que a variável b, logo, estamos
ordenando os valores.
• Pergunta 6
1 em 1 pontos
Leia com atenção o texto a seguir:
O pensamento computacional requer a compreensão das capacidades dos computadores, a
formulação de problemas a serem tratados por um computador e o projeto de algoritmos que um
computador pode executar. O contexto e a abordagem mais eficazes para desenvolver o pensamento
computacional é aprender ciência da computação; eles estão intrinsecamente conectados.
Fonte: K12 COMPUTER SCIENCE. K12 Computer Science Framework. Disponível
em: https://k12cs.org/wp-content/uploads/2016/09/K%E2%80%9312-Computer-Science-
Framework.pdf. Acesso em: 30 out. 2021.
Sobre o pensamento computacional, assinale a alternativa que apresenta uma de suas práticas.
Resposta
Selecionada:
a.
Desenvolver e usar abstrações.
Respostas: a.
Desenvolver e usar abstrações.
b.
Testar algoritmos computacionais.
c.
Distinguir entre o pensamento humano e o computacional.
d.
Praticar os conceitos de ciência da computação como programação.
e.
Resolver problemas computacionais através de programas.
Comentário da
resposta:
Um dos pilares do pensamento computacional é a abstração. Praticar a abstração é
preocupar-se com os elementos mais importantes de um problema, deixando de lado
detalhes muito específicos. Ao fazer um bolo, por exemplo, a preocupação deve ser
com a receita e se você possui ou não os ingredientes. Devemos então abstrair de
detalhes como: se a batedeira é profissional ou doméstica, se o forno é elétrico ou a
gás, entre outros.
• Pergunta 7
1 em 1 pontos
Analise com atenção o código a seguir, que possui algumas variáveis e realiza algumas operações
sobre elas:
1 string var1;
2 int var2;
3 double var3;
4
5 Console.WriteLine(“Digite seu nome”);
6 var1 = Console.ReadLine();
7
8 Console.WriteLine(“Digite sua idade”);
9 var1 = Console.ReadLine();
10
11 var2 = int.Parse(var1);
12
13 var3 = Math.Pow(var2, 2);
14
15 Console.WriteLine(var3);
Considerando essas informações, analise as afirmativas a seguir:
I. Neste código será solicitada uma entrada de dados que, ao digitar valores numéricos, um outro
valor numérico é apresentado na tela.
II. Neste código, ao digitar palavras e expressões alfanuméricas, elas serão armazenadas em var1 e
mostradas na tela na linha 15.
III. Este código não apresentará mensagem de erro na linha 11 se receber um texto, pois a variável
var2 é do tipo Inteiro.
IV. Este código apresenta uma saída de texto na linha 15 com o conteúdo da variável var3, sempre
que var1 for um número.
Estão corretas apenas as afirmativas:
Resposta
Selecionada:
b.
I e IV.
Respostas: a.
II e III.
b.
I e IV.
c.
II e IV.
d.
I e III.
e.
III e IV.
Comentário da
resposta:
A afirmativa I é verdadeira, pois o tipo da variável var1 no início do código (linha 1) é
string. Na linha 9 é solicitada a idade, que será um número, porém, a variável continua
sendo string. Na linha 11 essa string é convertida para inteiro. Logo, se houver um
valor numérico na variável var1, ele será convertido para número do tipo inteiro na
linha 11. Deste modo, na linha 13 estamos elevando esse número ao quadrado, se for
10, por exemplo, na linha 15 será mostrado o valor 100.
A afirmativa II é falsa, pois ao digitar qualquer letra ou palavra, contendo ou não
número, o código apresentará erro, uma vez que existe uma operação aritmética na
linha 13, logo o programa espera que você informe números e não letras.
A afirmativa III é falsa, porque ocorre um erro na linha 11 na tentativa de converter um
caractere (letra) em inteiro.
A afirmativa IV é verdadeira, pois sempre que for digitado um número na linha 6 ele
será convertido de string para tipo inteiro e, em seguida, realizada a operação
aritmética de exponenciação e, por fim, apresentado na tela na linha 15.
• Pergunta 8
1 em 1 pontos
No código a seguir, temos duas estruturas de repetição for. A externa, na linha 1, será executada 10
vezes. Ou seja, o for irá de 1 até 10. No escopo desse for, temos uma estrutura condicional if, a qual
também possui internamente uma estrutura de repetição for, que é executada de 1 até 5.
1 for(int x = 1; x 0) || (ano % 400 == 0)){
6 Console.WriteLine(“Ano bissexto”);
7 } else {
8 Console.WriteLine(“Ano não é bissexto”);
9 }
Considerando as informações apresentadas, avalie as afirmações a seguir:
I. Na linha 3, quando o usuário inserir um valor de ano, resultará em um erro na linha 5,
pois a entrada é do tipo string e há uma operação aritmética de módulo.
II. Se um valor é divisível por 4 e divisível por 100, logo, é divisível por 400 também, o que
torna dispensável a expressão ano%400==0.
III. Na linha 5, o valor da expressão será true para qualquer ano maior que 1500, uma vez
que temos um operador || (ou), tornando a linha 6 inalcançável.
IV. A variável ano é declarada como double, o que pode ser desnecessário, pois anos são
tradicionalmente representados por números inteiros. Utilizar o tipo int para a variável
ano seria mais apropriado.
É correto o que se afirma em:
Resposta
Selecionada:
b.
I e IV, apenas.
Respostas: a.
I e III, apenas.
b.
I e IV, apenas.
c.
II e III, apenas.
d.
I e II, apenas.
e.
II e IV, apenas.
Comentário
da resposta:
A afirmação 1 está correta, pois o comando da linha 3 realmente vai nos trazer um
erro, pois Console.ReadLine() nos retorna uma String (texto), mas a variável foi criada
para guardar valoresnuméricos do tipo double.
A afirmação 2 está incorreta, pois o ano deve ser divisível por 100 e por 400 ao mesmo
tempo. p.e. Os anos 1700, 1800, 1900, 2100, 2200, 2300, 2500, 2600 são divisíveis por
100, mas não por 400 e, portanto, não são bissextos.
Afirmação 3 está incorreta, pois a expressão na linha 5 não será sempre verdade para
qualquer ano maior do que 1500. p.e. ano 1505 -> não é divisível por 4, nem por 100 e
nem por 400, portanto, todos os elementos de comparação serão false. Mas quando
colocamos 1600, é divisível por 4, por 100 e por 400, portanto, o resultado da
comparação será true e chegaremos na linha 6.
A afirmação 4 está correta, pois para representar anos, números inteiros são
suficientes e mais apropriados, pois anos não têm casas decimais.
• Pergunta 10
1 em 1 pontos
Leia e associe as duas colunas com relação aos pilares do pensamento computacional.
I. Decomposição A. Resolve problemas menores e mais
fáceis de serem gerenciados obtidos a
partir de um problema complexo.
II. Abstração B. Divide um problema em passo a
passo para que ele seja resolvido por
meio de instruções ou regras.
III. Algoritmo C. Separa do problema apenas as
partes importantes, ignorando as partes
menos importantes.
Assinale a alternativa que traz a associação correta entre as duas colunas:
Resposta
Selecionada:
a.
I-A; II-C; III-B.
Respostas: a.
I-A; II-C; III-B.
b.
I-B; II-C; III-A.
c.
I-C; II-A; III-B.
d.
I-C; II-B; III-A.
e.
I-B; II-A; III-C.
Comentário da resposta: A alternativa correta é a) I-A; II-C; III-B.
I. Decomposição A. Resolve problemas menores e mais fáceis de
serem gerenciados obtidos a partir de um
problema complexo.
II. Abstração C. Separa do problema apenas as partes
importantes, ignorando as partes menos
importantes.
III. Algoritmo B. Divide um problema em passo a passo para que
ele seja resolvido por meio de instruções ou
regras.
Sábado, 25 de Outubro de 2025 20h45min34s BRT