Buscar

Linguagens de Programação e Estruturas de Dados - Avaliação II - Individual

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 6 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 6 páginas

Prévia do material em texto

Peso da Avaliação
1,50
Qtd. de Questões
10
Acertos/Erros
10/0
Nota
10,00
Nas linguagens de programação, existem diversos tipos de dados para a declaração de variáveis, dentre os quais se destacam os caracteres e as
strings. Pode-se considerar que a existência das strings abstrai a complexidade de controle de sequências de caracteres que ficaria a cargo do
programador, o que torna vantajosa a utilização de variáveis deste tipo.Sobre as características dos tipos caractere e string na linguagem de programação
C, assinale a alternativa CORRETA:
A O conteúdo de uma variável do tipo string é representada internamente por um símbolo numérico, geralmente no formato ASCII.
B Uma variável do tipo string tem seu final sinalizado através do caractere '' na última posição do vetor.
C Uma variável do tipo string é, na verdade, um vetor de caracteres que não pode ser manipulado diretamente pelo programador.
D Valores literais são atribuídos para as variáveis dos tipos caracteres e strings através do uso de aspas duplas.
Vetores e matrizes são estruturas de dados homogêneas que permitem o armazenamento de vários valores ao mesmo tempo. No entanto, todo valor
armazenado em um mesmo vetor ou matriz deve possuir o mesmo tipo de dado associado, ou seja, um vetor/matriz de valores inteiros só pode armazenar
valores inteiros. Considerando o algoritmo anexo, que utiliza um vetor para armazenar valores reais, analise as sentenças a seguir: 
 
I- Ao informar um valor texto na linha 11 do algoritmo, ocorrerá um erro, pois o programa espera um valor do mesmo tipo do vetor - real. 
II- Ao informarmos 4, 10, 2, 6, 5, 3, 1 e 1 aos valores solicitados ao longo da execução do algoritmo, a média aritmética dos valores de todas as posições
do vetor é de 4. 
III- O vetor "números" poderia ser substituído por uma matriz com 2 linhas e 5 colunas, porém essa modificação acarretaria em alterações no algoritmo
para se trabalhar com indexação dupla. 
IV- Informando valores numéricos quando solicitado, o algoritmo executará sem erros. 
 
Assinale a alternativa CORRETA:
A As sentenças I, II e III estão corretas.
B Somente a sentença IV está correta.
C As sentenças II e III estão corretas.
D As sentenças I, III e IV estão corretas.
As matrizes na linguagem de programação Java possuem características diferentes em sua definição. Ao invés de definir uma matriz na memória, a
máquina virtual Java cria vetores de vetores, o que acaba por facilitar o gerenciamento e a visualização das matrizes por parte dos programadores. Sobre
as características dos vetores na linguagem de programação Java e do nome do objeto que contém a matriz é "matriz", bem como a figura anexa, analise
as sentenças a seguir: 
 
I- O número 31 pode ser referenciado usando matriz[0][0]. 
II- Ao acessar matriz[4][3], obteremos um erro de compilação. 
III- A posição [0][4] contém o número 1. 
IV- Ao acessar matriz[4][2], obteremos um erro na execução.
 VOLTAR
A+ Alterar modo de visualização
1
2
3
 
Assinale a alternativa CORRETA:
A Somente a sentença II está correta.
B As sentenças II e IV estão corretas.
C Somente a sentença III está correta.
D As sentenças I, II e III estão corretas.
As variáveis são responsáveis por armazenar os dados utilizados pela lógica. Em alguns casos, é necessário trabalhar com um conjunto de dados de
variados tipos, por exemplo, para armazenar dados de alunos de uma turma, como seu nome, CPF e data de nascimento. Para agrupar mais de uma
variável em um único registro, é utilizado o conceito de registros. No anexo, é apresentada a declaração de um registro. Sobre os registros, analise as
sentenças a seguir: 
 
01 type ALUNO: record 
02 NOME: texto[60]; 
03 NOTA: real; 
04 end; 
 
I- Para ler o nome de um aluno na variável interna NOME, pode-se utilizar a sintaxe " leia ALUNO.NOME; ". 
II- Para exibir a nota de um aluno, é utilizada a sintaxe " escreva ALUNO.NOTA; ". 
III- Todos os alunos de uma turma podem ser armazenados em uma única variável, declarando um vetor com a sintaxe " LISTAALUNOS[100]:
ALUNOS;". 
IV- A expressão "end" determina que as variáveis internas do registro terminaram de ser declaradas. 
 
Assinale a alternativa CORRETA:
A As sentenças II e III estão corretas.
B As sentenças I, II e III estão corretas.
C As sentenças I, II e IV estão corretas.
D As sentenças III e IV estão corretas.
As variáveis são responsáveis por armazenar os dados utilizados pela lógica. Em alguns casos, é necessário trabalhar com um conjunto de dados de
variados tipos, por exemplo, para armazenar dados de alunos de uma turma, como seu nome, CPF e data de nascimento. Para agrupar mais de uma
variável em um único registro, é utilizado o conceito de registros. A seguir, é apresentada a declaração de um registro. Sobre registros, classifique V para
as sentenças verdadeiras e F para as falsas: 
 
01 ALUNO: registro; 
02 NOME: texto(60); 
03 NOTA: real; 
04 fim_registro 
 
( ) Para ler o nome de um aluno na variável interna NOME, pode-se utilizar a sintaxe " leia ALUNO.NOME; ". 
( ) Para exibir a nota de um aluno, é utilizada a sintaxe " escreva ALUNO.NOTA; ". 
( ) Todos os alunos de uma turma podem ser armazenados em uma única variável, declarando um vetor com a sintaxe " LISTAALUNOS[100]:
ALUNOS; ". 
( ) A expressão " fim_registro " determina que as variáveis internas do registro terminaram de ser declaradas.
 
Assinale a alternativa que apresenta a sequência CORRETA:
A F - V - F - V.
B V - V - V - F.
C F - F - V - V.
4
5
D V - V - F - V.
A classe CountOccurrence escrita na linguagem Java tem por objetivo localizar e contar quantas ocorrências de um determinado valor existem em
um conjunto predeterminado de valores, retornando a quantidade de vezes que um determinado valor se repete no conjunto. 
 
public class CountOccurrence { 
 
 public boolean hasValue(int searchValue, int[] array, int i) { 
 if (i >= array.length) 
 return false; 
 
 if (array[i] == searchValue) 
 return true; 
 else 
 return hasValue(searchValue, array, i + 1); 
 } 
 
 public int count(int countValue, int[] array, int i) { 
 if (!hasValue(countValue, array, i) '' i >= array.length) 
 return 0; 
 
 int c = 0; 
 if (array[i] == countValue) 
 c++; 
 
 c += count(countValue, array, i+1); 
 return c; 
 } 
 
 public static void main(String[] args) { 
 int[] array = {2, 3, 5, 6, 9, 7, 8, 8, 9}; 
 CountOccurrence co = new CountOccurrence(); 
 System.out.println(co.count(5, array, 0)); 
 } 
} 
 
Considerando o requisito proposto e o código apresentado, avalie as asserções a seguir e a relação proposta entre elas: 
 
I- Para que o algoritmo funcione corretamente, deve-se alterar a linha 21, de 
c += count( countValue, array, i ); 
para 
c += count(countValue, array, i + 1); 
 
PORQUE 
 
II- Da forma como o código está escrito, o código não compilará por estar chamando o mesmo método dentro dele indefinidamente. 
 
Assinale a alternativa CORRETA:
A A primeira asserção é uma proposição falsa, e a segunda, uma proposição verdadeira.
B A primeira asserção é uma proposição verdadeira, e a segunda, uma proposição falsa.
C As duas asserções são proposições verdadeiras, mas a segunda não é uma justificativa correta da primeira.
D As duas asserções são proposições falsas.
Uma empresa deseja manter seu pequeno estoque em uma matriz, com quatro linhas por três colunas. Após o cadastro, o algoritmo deve permitir a
busca por código. Crie um algoritmo que solicite valores e preencha uma matriz de ordem 4 x 3 (4 linhas por 3 colunas). Em seguida, o algoritmo deverá
solicitar mais um valor para procurá-lo na matriz. O algoritmo deverá informar, no fim, em que linha x coluna está o valor. Caso o código não for
encontrado, enviar um aviso informando que o produto não está cadastrado. 
 
Algoritmo busca_vetor; 
6
7
var 
mat : vetor[1..4,1..3] de real; 
procurar : real; 
l, c : inteiro; 
encontrou : lógica; 
início 
Para l <- 1 até 4 faça 
início 
 Para c <- 1 até 3 faça 
 início 
 escreva('Valor: '); 
 Leia(mat[l,c]); 
 Fim; 
 Fim; 
escreva('Valor para busca: '); 
Leia(procurar); 
encontrou <- falso; 
Se (not encontrou) então 
início 
 escreva('Não tem na matriz: ',procurar); 
Fim; 
Fim. 
 
Baseado nessa solicitação e no código apresentado, analise as sentenças a seguir: 
 
I- O algoritmo está correto e vai buscar um valor dentro do vetor. 
II- O algoritmo não está selecionando um valor dentro do vetor. 
III- O algoritmo está com a declaração de variáveis incorreto. 
IV- O algoritmo solicita e armazena corretamente os valores. 
 
Assinale a alternativa CORRETA:
A As sentenças II e IV estão corretas.
B As sentenças II e III estão corretas.
C As sentenças I, III e IV estão corretas.
D As sentenças I, II e III estão corretas.
Estruturas de dados são objetos que armazenam dados de forma eficiente, ofertando ao usuário uma ordenação eficiente dos dados e buscas por
meio de palavras-chave, por exemplo. Analise os trechos de código em linguagem de programação C: 
 
Trecho 1 
 main() 
 { 
 int mat[2][2] = {{1,2},{3,4}}; 
 int i,j; 
 for (i=0;i<2;i++) 
 for (j=0;j<2;j++) 
 printf("%dn",mat[i][j]); 
 system("pause"); 
 } 
 
Trecho 2 
 main() 
 { 
 int mat[2][2] = {{1,2},{3,4}}; 
 int *p = &mat[0][0]; 
 int i; 
 for (i=0;i<4;i++) 
 printf("%dn",*(p+i)); 
 system("pause"); 
 } 
 
8
Com base no exposto, classifique V para as sentenças verdadeiras e F para as falsas: 
 
( ) O Trecho 2 indicará um erro de sintaxe na inicialização do ponteiro. 
( ) O Trecho 2 imprimirá valores desconhecidos alocados na memória. 
( ) Ambos os trechos de código imprimirão o mesmo conteúdo na tela. 
( ) Ambos os trechos de código indicarão erro de sintaxe na inicialização da matriz mat. 
 
Assinale a alternativa que apresenta a sequência CORRETA:
A V - V - F - V.
B V - F - F - V.
C F - F - V - F.
D F - V - V - F.
Vetores e matrizes são estruturas de dados homogêneas que permitem o armazenamento de vários valores ao mesmo tempo. No entanto, todo valor
armazenado em um mesmo vetor ou matriz deve possuir o mesmo tipo de dado associado, ou seja, um vetor/matriz de valores inteiros só pode armazenar
valores inteiros. Considerando o algoritmo anexo, que utiliza um vetor para armazenar valores reais, analise as afirmativas a seguir: 
 
I- Ao informar um valor texto na linha 11 do algoritmo, ocorrerá um erro, pois o programa espera um valor do mesmo tipo do vetor - real. 
II- Ao informarmos 4, 10, 2, 6, 5, 3, 1 e 1 aos valores solicitados ao longo da execução do algoritmo, a média aritmética dos valores de todas as posições
do vetor é 4. 
III- O vetor "números" poderia ser substituído por uma matriz com 2 linhas e 5 colunas, porém essa modificação acarretaria em alterações no algoritmo
para se trabalhar com indexação dupla. 
IV- Informando valores numéricos quando solicitado, o algoritmo executará sem erros. 
 
Assinale a alternativa CORRETA:
A As afirmativas I, II e III estão corretas.
B As afirmativas II e III estão corretas.
C As afirmativas I, III e IV estão corretas.
D Somente a afirmativa IV está correta.
Foi solicitada a criação de um algoritmo que faça a leitura de três notas, apresentando uma mensagem com a maior nota. Com base nessa
solicitação e no algoritmo anexo, analise as sentenças a seguir: 
 
I- O algoritmo não funciona, pois não pode ordenar valores do tipo real. 
II- O algoritmo não funciona, pois as variáveis utilizadas não foram declaradas. 
III- O algoritmo não está com a lógica correta para o que foi solicitado. 
IV- O algoritmo está certo e apresentará a maior nota de três. 
 
Assinale a alternativa CORRETA:
9
10
A As sentenças II e IV estão corretas.
B As sentenças II e III estão corretas.
C As sentenças I, II e III estão corretas.
D As sentenças II, III e IV estão corretas.

Outros materiais