Logo Passei Direto
Buscar

TESTE - ALGORITMOS E PROGRAMAÇÃO I

Ferramentas de estudo

Questões resolvidas

Considerando as informações apresentadas, avalie as afirmacoes a seguir:
I. O laço de repetição while da linha 5 será executado indiferentemente do valor digitado pelo usuário, uma vez que temos o operador OU (||).
II. O laço de repetição while apresentará um erro, pois a variável op é do tipo string e o valor zero é um número inteiro.
III. O laço de repetição while será interrompido assim que o usuário digitar um número fora do intervalo entre zero e cinquenta.
IV. O laço de repetição while está com sua sintaxe escrita corretamente, porém, ele apresentará um erro de execução.
É correto o que se afirma em:

I. O laço de repetição while da linha 5 será executado indiferentemente do valor digitado pelo usuário, uma vez que temos o operador OU (||).
II. O laço de repetição while apresentará um erro, pois a variável op é do tipo string e o valor zero é um número inteiro.
III. O laço de repetição while será interrompido assim que o usuário digitar um número fora do intervalo entre zero e cinquenta.
IV. O laço de repetição while está com sua sintaxe escrita corretamente, porém, ele apresentará um erro de execução.
a) I e III, apenas.
b) II e IV, apenas
c) I e II, apenas.
d) III e IV, apenas.
e) II e III, apenas.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Considerando as informações apresentadas, avalie as afirmacoes a seguir:
I. O laço de repetição while da linha 5 será executado indiferentemente do valor digitado pelo usuário, uma vez que temos o operador OU (||).
II. O laço de repetição while apresentará um erro, pois a variável op é do tipo string e o valor zero é um número inteiro.
III. O laço de repetição while será interrompido assim que o usuário digitar um número fora do intervalo entre zero e cinquenta.
IV. O laço de repetição while está com sua sintaxe escrita corretamente, porém, ele apresentará um erro de execução.
É correto o que se afirma em:

I. O laço de repetição while da linha 5 será executado indiferentemente do valor digitado pelo usuário, uma vez que temos o operador OU (||).
II. O laço de repetição while apresentará um erro, pois a variável op é do tipo string e o valor zero é um número inteiro.
III. O laço de repetição while será interrompido assim que o usuário digitar um número fora do intervalo entre zero e cinquenta.
IV. O laço de repetição while está com sua sintaxe escrita corretamente, porém, ele apresentará um erro de execução.
a) I e III, apenas.
b) II e IV, apenas
c) I e II, apenas.
d) III e IV, apenas.
e) II e III, apenas.

Prévia do material em texto

Observe com atenção o fluxograma a seguir.
A respeito dos componentes que fazem parte de um fluxograma, analise as afirmativas a seguir e assinale para a(s) Verdadeira(s) e para a(s)
Falsa(s).
I. ( ) No fluxograma da imagem, observa-se a presença de uma estrutura condicional.
II. ( ) No fluxograma da imagem, se o pneu estiver furado, então será necessário trocá-lo.
III. ( ) No fluxograma da imagem, independentemente se o pneu estiver furado ou não, o fim será alcançado.
IV. ( ) No fluxograma da imagem, será escrito na tela as mensagens e também .
Assinale a alternativa que possui a sequência correta.
V-V-V-F.
V-F-F-V.
V-V-V-F.
V-V-F-F.
F-F-V-V.
F-V-F-V.
Sala de Aula Tutoriais
← OK
A afirmativa I é verdadeira, pois o nó ou bloco em forma de losango é a representação de uma condição em um fluxograma.
A afirmativa II é verdadeira, pois como o losango é uma condicional, se a condição for verdadeira (caminho da direita), então
será apresentado na tela que se deve trocar o pneu.
A afirmativa III é verdadeira, pois por se tratar de um algoritmo, ele possui um início e fim muito bem definidos, logo,
independentemente se o pneu está ou não furado, o fim será alcançado, pois todo algoritmo é finito.
A afirmativa IV é falsa, pois somente será apresentado na tela uma mensagem ou outra, dependendo da condição se for
verdadeira ou falsa.
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
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.
o operador OU resultará VERDADEIRO quando qualquer um dos operandos também for verdadeiro. Logo, o resultado da
expressão 1 será VERDADEIRO.
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.
o operador E resultará VERDADEIRO quando qualquer um dos operandos também for verdadeiro. Logo, o resultado da
expressão 2 será VERDADEIRO.
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.
o operador OU resultará VERDADEIRO quando qualquer um dos operandos também for verdadeiro. Logo, o resultado da
expressão 2 será VERDADEIRO.
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.
Observe com atenção o código a seguir:
Considerando o código apresentado, assinale a opção correta.
O código apresentará um erro quando o valor da variável a for igual ao valor da variável b, uma vez que não existe uma
condição que contemple esta igualdade.
O objetivo deste código é apresentar uma sequência ordenada dos valores, e o bloco representado em é essencial neste
processo.
O valor das variáveis a e b após a execução dos comandos presentes nos blocos representados por e é 41, o mesmo valor
da variável aux.
O bloco representado por pode ser suprimido, ficando apenas os comandos dos blocos e dentro do escopo do bloco SE.
O código apresentará um erro quando o valor da variável a for igual ao valor da variável b, uma vez que não existe uma
condição que contemple esta igualdade.
O valor das variáveis a e b após a execução dos comandos presentes nos blocos representados por e é 9, o mesmo valor
da variável aux.
A alternativa a está correta, pois um 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 variável a receber o valor da variável b e b receber o valor de 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 acontece no
bloco indicado em 1. A única condição de entrarmos no bloco SE é quando a variável a for maior que a variável b, logo, estamos
ordenando os valores.
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:
I e IV, apenas.
I e IV, apenas.
II e IV, apenas.
II e III, apenas.
III e IV, apenas.
I e III, apenas.
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.
Leia com atenção o texto a seguir.
Um algoritmo é um procedimento computacional bem definido que pega algum valor como entrada e gera algum valor como saída. Em palavras
simples, é uma sequência de etapas computacionais que converte a entrada em saída.
A respeito dos algoritmos e seus tipos de representações, analise as afirmativas a seguir e assinale para a(s) Verdadeira(s) e para a(s) Falsa(s).
I. ( ) O algoritmo fornece ao designer uma descrição consistente dos requisitos e objetivos dos problemas.
II. ( ) O pseudocódigo, um método para representar algoritmos, resume o fluxo de um programa, apresentando os detalhes subjacentes.
III. ( ) A detecção de erros ou o fluxo de programa incorreto no estágio de pseudocódigo é benéfica para o desenvolvimento.
IV. ( ) Os fluxogramas melhoram a condição e a eficiência do trabalho, possuindo quatro símbolos básicos que são o início, o fim, o processo e a
decisão.
Assinale a alternativa que possui a sequência correta.
V-F-V-V.
F-V-F-V.
V-V-F-F.
F-V-V-F.
V-F-V-V.
F-F-V-V.
A afirmativa I é verdadeira, pois a escrita de um algoritmo facilita o entendimento, de toda equipe, dos requisitos de um projeto de
software.
A afirmativa II é falsa, pois o pseudocódigo é um método de representação textual de um algoritmo, usado principalmente para
destacar as principais funcionalidades, excluindo os detalhessubjacentes.
A afirmativa III é verdadeira, pois por ser um processo realizado no início do desenvolvimento de software, encontrar um erro ou
qualquer tipo de problema durante a elaboração do fluxograma é mais barato e menos prejudicial para a empresa. Logo, o
fluxograma auxilia a encontrar erros que podem causar prejuízos para a empresa.
A afirmativa IV é verdadeira, pois um fluxograma possui essencialmente quatro símbolos básicos que contêm código escrito para
programação. Eles fornecem comandos como início, processo, decisão e fim, e esses símbolos são a parte crucial dos fluxogramas
de programação.
Sobre algoritmos, podemos afirmar que:
I. Cada instrução de um algoritmo deve ser executada em uma ordem específica para resolver um problema computacional ou não.
II. O algoritmo é uma sequência com quantidade indeterminada de instruções com o objetivo de resolver um problema. 
III. Fluxograma ou diagramas de sequência são exemplos de representações de um algoritmo.
IV. Nas embalagens de produtos diversos, o item modo de usar é um exemplo de algoritmo com descrição narrativa.
V. Fluxograma e diagramas de sequência são exemplos de representações gráficas visuais de um algoritmo.
As afirmativas são:
I e IV, apenas.
III e IV, apenas.
II e V, apenas.
I e IV, apenas.
II e III, apenas.
III e V, apenas.
A afirmativa I é verdadeira, pois um algoritmo possui uma sequência de instruções. Ao executá-lo, é necessário respeitar a
ordem de cada uma dessas instruções, caso contrário, o resultado será diferente do esperado.
A afirmativa II é falsa, pois o algoritmo é uma sequência finita de instruções. Logo, a quantidade de instruções é conhecida, bem
como o seu fim.
A afirmativa III é falsa, pois entre os dois modelos apresentados, o único que representa um algoritmo é o fluxograma.
A afirmativa IV é verdadeira, pois produtos como xampu, creme dental e outros possuem uma descrição narrativa de como usar o
produto, geralmente em um espaço chamado modo de usar.
A afirmativa V é falsa, pois somente o fluxograma é uma representação gráfica de algoritmos.
Analise com atenção o código a seguir que utiliza função com passagem de parâmetros, com três argumentos.
1 public int calcular(int x, ref int y, ref int z){
2 x = x + 10;
3 y = y + 10;
4 z = z + 10;
5 Console.WriteLine(x + " "+ y+ " "+ z);
6 return y;
7 }
8
9 public static void Main (string[] args) {
10 int a = 4;
11 int b = 3;
12 int c = 2;
13
14 Program p = new Program();
15 p.calcular(a, ref b, ref c);
16
17 Console.WriteLine(a + " - "+ b + " - " + c);
18 }
Os valores impressos na instrução da linha 17 serão:
14 - 13 - 12
4 - 13 - 12
4 - 3 - 2
14 - 13 - 12
14 - 3 - 2
4 - 12 - 13
Na função main há a invocação da função calcular passando três argumentos por parâmetro, sendo que o primeiro (variável a) é
passado por valor, por outro lado, as variáveis b e c são passadas como referência. Logo, qualquer alteração nas variáveis y e z na
função calcular, impactará no valor das variáveis b e c que estão na função main. Deste modo, os valores finais das variáveis a, b e
c serão, respectivamente, 4, 13 e 12.
Leia o texto a seguir com atenção:
O pensamento computacional é o processo de abordar um problema de uma maneira sistemática e criar e expressar uma solução que pode ser
realizada por um computador.
A partir desta informação, é possível afirmar que o pensamento computacional
ensina o uso de abstração e decomposição na solução de problemas complexos.
apresenta técnicas computacionais para a compreensão e escrita de algoritmos.
ensina o uso de abstração e decomposição na solução de problemas complexos.
é uma aprendizagem relacionada à ciência da computação que foca em técnicas funcionais de programação.
habilita os alunos a desenvolverem seu raciocínio lógico por meio da escrita de algoritmos e códigos de programas.
incentiva o aluno a utilizar-se do poder da computação através da tela e do teclado de um computador (ou de um dispositivo
móvel).
A alternativa b está correta, pois dentre os pilares do pensamento computacional, destaca-se a decomposição, que é o processo
de decompor um problema complexo em partes menores; e também a abstração, que visa identificar características comuns e
reconhecer padrões em um problema.
Em C#, podemos utilizar os operadores aritméticos para manipular os dados de variáveis, bem como, realizar cálculos assim como na matemática.
Considere o código-fonte a seguir escrito em C#.
1 int total;
2 total = 5 + 4 * 18 / 3 * 3 % 3 - 1;
3 Console.WriteLine(total);
Considerando esse contexto, avalie as seguintes asserções e a relação proposta entre elas.
I. Considerando a instrução da linha 2 e a ordem de precedência de operadores, o valor apresentado na linha 3 será 4.
PORQUE
II. O operador de adição e o de módulo possuem a mesma precedência, e a soma foi avaliada antes por aparecer primeiro na expressão.
A respeito dessas asserções, assinale a opção correta.
As asserções I e II são proposições falsas.
A asserção I é uma proposição verdadeira e a II é uma proposição falsa.
As asserções I e II são proposições verdadeiras e a II é uma justificativa da I.
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I.
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 falsas.
A asserção I é uma proposição verdadeira, pois seguindo a precedência dos operadores, a primeira operação será 4*18; em
seguida, é feita a divisão, depois o módulo, por fim, a soma e a subtração, totalizando 4.
A asserção II é uma proposição falsa, pois de acordo com a precedência de operadores temos: primeiramente, os valores entre
parênteses (não é o caso), em seguida, a exponenciação (não é o caso), depois da exponenciação será calculada a multiplicação, a
divisão ou o módulo (dependendo da ordem destes operadores), em seguida, será calculada a soma ou a subtração (dependendo
da ordem dos operadores na expressão).
Analise com atenção o código a seguir:
1 public static void Main (string[] args) {
2 Console.WriteLine("Digite um numero");
3 string op = Console.ReadLine();
4
5 while(op > 0 || op < 50){
6 Console.WriteLine("Digite um número: ");
7 op = Console.ReadLine();
8 }
9 }
Considerando as informações apresentadas, avalie as afirmações a seguir:
I. O laço de repetição while da linha 5 será executado indiferentemente do valor digitado pelo usuário, uma vez que temos o operador OU (||).
II. O laço de repetição while apresentará um erro, pois a variável op é do tipo string e o valor zero é um número inteiro.
III. O laço de repetição while será interrompido assim que o usuário digitar um número fora do intervalo entre zero e cinquenta.
IV. O laço de repetição while está com sua sintaxe escrita corretamente, porém, ele apresentará um erro de execução.
É correto o que se afirma em:
I e III, apenas.
II e IV, apenas
I e III, apenas.
Terça-feira, 30 de Maio de 2023 11h06min20s BRT
I e II, apenas.
III e IV, apenas.
II e III, apenas.
A afirmativa I está incorreta, pois o laço de repetição não será executado pois há uma tentativa de comparar uma string com um
valor inteiro, o que irá gerar um erro. Para resolver isso, é possível converter o tipo da variável op de string para inteiro.
A afirmativa II está correta, pois haverá um erro devido ao tipo da variável op que é string.
A afirmativa III está incorreta, pois mesmo que a variável op fosse do tipo inteiro isso não ocorreria, afinal, existe uma condição ou,
logo, independentemente do valor digitado pelo usuário, sempre este laço seria executado (considerando op como inteiro).
A afirmativa IV está correta, pois sintaxe se refere a forma de escrita e, neste caso, o while está com sua sintaxe correta. Existe
uma expressão interna entre os parênteses com um operador lógico conectando duas operações de comparação. Entretanto, o erro
é semântico, uma vez que o tipo não é condizente com o esperado, que seria o inteiro.

Mais conteúdos dessa disciplina