1)
Considere o seguinte programa escrito em Linguagem C, que verifica a quantidade de dias que cada mês possui.
main(){
int mes, dias;
printf ("Entre o mês (em número) ");
scanf (%d,&mes);
switch (mes){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
dias = 31; break;
case 2:
dias = 2; break;
case 4:
case 6:
case 9:
case 11:
dias = 30; break;
default:
dias = 0;
printf ("O número do mês é incorreto");
}
}
Sobre a instrução SWTICH evidenciada no programa acima, analise as seguintes asserções e a relação proposta entre elas:
I. O último case ou o default de um switch não necessita de break.
PORQUE
II. Depois de executar as instruções associadas ao último case termina a instrução switch.
A respeito dessas asserções, assinale a opção correta.
Alternativas:
a)
As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.
b)
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I.
c)
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
d)
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
e)
As asserções I e II são proposições falsas.
2)
A sintaxe do laço do... while em Linguagem C é:
do
instrução;
while (condição);
Sobre a instrução do... while, analise as seguintes asserções e a relação proposta entre elas:
I. A instrução do... while difere dos laços while e for.
PORQUE
II. O teste da condição é realizado no início do corpo do laço e não depois.
A respeito dessas asserções, assinale a opção correta.
Alternativas:
a)
As asserções I e II são proposições verdadeiras e a II é uma justificativa da I.
b)
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I.
c)
A asserção I é uma proposição verdadeira e a II é uma proposição falsa.
d)
A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
e)
As asserções I e II são proposições falsas.
3)
Considere o seguinte programa escrito em Linguagem C:
#include
main(){
int n;
n = 1;
while (n<=10)
printf ("%d", 5*n);
n = n + 1;
}
}
Sobre este programa, analise as seguintes sentenças:
I. A variável n é iniciada com 1.
II. Se n tiver um valor menor ou igual a 10, a condição devolve verdade e então são executadas as duas instruções dentro do bloco do while.
III. Em resumo, o programa apresenta na tela os 10 primeiros números em ordem crescente.
IV. Em resumo, o programa apresenta na tela os resultados da multiplicação de 5 pelo valor atual da variável que controle o laço, sendo esta uma variação de 1 a 10.
Agora, assinale a alternativa que apresenta a resposta correta.
Alternativas:
a)
Somente a afirmativa IV está correta.
b)
As afirmativas I e II estão corretas.
c)
As afirmativas I, II e III estão corretas.
d)
As afirmativas I, II e IV estão corretas.
e)
As afirmativas I, II, III e IV estão corretas.
4)
A sequência de Fibonacci (0, 1, 1, 2, 3, 5, 8, 13, 21, ...) é uma sequência de números inteiros, que se inicia com 0 e 1, e tem a propriedade de que cada elemento é a soma dos dois elementos anteriores, por exemplo: 0 + 1 = 1 e 1 + 1 = 2.
Sobre a sequência de Fibonacci e sua implementação computacional, analise as seguintes sentenças:
I. A utilização da recursividade torna a solução e implementação do problema simples e intuitiva.
II. A definição recursiva da implementação computacional seria:
fibonacci(n) = n se n= 0 ou n =1
fibonacci(n) = Fibonacci (n-1) + Fibonacci(n-2) se n>=2.
III. A implementação recursiva é o único meio de se de se computar o enésimo termino da sequência de Fibonacci.
IV. A implementação iterativa também pode apresentar uma solução para o problema.
Agora, assinale a alternativa que apresenta a resposta CORRETA.
Alternativas:
a)
Somente a afirmativa II está correta.
b)
As afirmativas I e II estão corretas.
c)
As afirmativas I, II e III estão corretas.
d)
As afirmativas I, II e IV estão corretas.
e)
As afirmativas I, II, III e IV estão corretas.
5)
O algoritmo QuickSort é um método de ordenação muito rápido e eficiente. Ele baseia-se na técnica "dividir e conquistar", onde a ideia é reduzir um problema em problemas menores, resolver cada um destes subproblemas e combinar as soluções parciais para obter a solução do problema original. A recursividade é uma forma interessante de se implementar este algoritmo.
Em resumo, o algoritmo QuickSort é composto dos seguintes passos:
1. Rearranjo da lista de modo eu todos os elementos anteriores ao pivô sejam menores que ele, e todos os elementos posteriores ao pivô sejam maiores que ele.2. Recursivamente ocorre a ordenação da sublista dos elementos menores e sublista dos elementos maiores.3. Escolha de um elemento da lista, denominado pivô.
Assinale a alternativa que apresenta a ordem correta dos passos do algoritmo QuickSort.
Alternativas:
a)
1 – 2 – 3.
b)
2 – 1 – 3.
c)
3 – 1 – 2.
d)
3 – 2 – 1.
e)
2 – 3 – 1.
Respostas
Resposta da 1)
Alternativa a) As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.
O comando Switch Case em C é uma forma de reduzir a complexidade de vários if … else encadeados.
É muito utilizado, principalmente para uso em estruturas de menu.
O conteúdo de uma variável é comparado com um valor constante, e caso a comparação seja verdadeira, um determinado comando é executado.
Resposta da 2)
Alternativa c: A asserção I é uma proposição verdadeira e a II é uma proposição falsa.
O comando ... while executa a repetição de um bloco de instruções enquanto uma condição é verdadeira.
Pseudocódigo : A estrutura Enquanto … Faça equivale a estrutura while em linguagem C.
Resposta da 3)
Alternativa d: As afirmativas I, II e IV estão corretas.
Variável é um local reservado na memória para armazenar um tipo de dado. Toda variável deve ter um identificador, ou seja um nome. Além de ter um nome, a variável também precisa ter um tipo. O tipo de dado de uma variável determina o que ela é capaz de armazenar.
Existem diversos tipos de dados que podem ser usados nas variáveis.
Cada tipo de dado é específico para armazenar uma determinado formato de dado.
Podemos dizer que os principais tipos de dados numéricos dividem-se em:
- Inteiro: armazena números inteiros
- Real: armazena números com casas decimais, são as variáveis de ponto flutuante;
O tipo de dado caracter é capaz de representar um caracter ou um conjunto de caracteres (letras, dígitos ou símbolos) .
Resposta da 4)
Alternativa e: As afirmativas I, II, III e IV estão corretas.
Sequência de Fibonacci é uma sucessão de números que obedecem um padrão em que cada elemento subsequente é a soma dos dois anteriores.
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584…
A sequência de Fibonacci é definida pela seguinte fórmula:
Fn=Fn−1+Fn−2
A sequência de Fibonacci se originou em um estudo sobre cálculo da multiplicação de coelhos e foi apresentada em seu primeiro livro, Liber abaci, como solução para o crescimento populacional de coelhos
Resposta da 5)
Alternativa e: 2 – 3 – 1.
- Recursivamente ocorre a ordenação da sublista dos elementos menores e sublista dos elementos maiores.
- Escolha de um elemento da lista, denominado pivô.
- Rearranjo da lista de modo eu todos os elementos anteriores ao pivô sejam menores que ele, e todos os elementos posteriores ao pivô sejam maiores que ele.
Uma lista pode ser vista como um par ordenado (cabeça,cauda) onde cabeça é o seu primeiro item e cauda é a sublista obtida com a exclusão da cabeça da lista.
Continue estudando em https://brainly.com.br/tarefa/18569605
Resposta:
Resposta da 1)
Alternativa a) As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.
Resposta da 2)
Alternativa c: A asserção I é uma proposição verdadeira e a II é uma proposição falsa.
Resposta da 3)
Alternativa d: As afirmativas I, II e IV estão corretas.
Resposta da 4)
Alternativa e: As afirmativas I, II, III e IV estão corretas.
Resposta da 5)
Alternativa e: 2 – 3 – 1.
Explicação: