Baixe o app para aproveitar ainda mais
Prévia do material em texto
ATIVIDADE 4 - ENG SOFT - ALGORITMOS E LÓGICA DE PROGRAMAÇÃO II - 52/2020 Período:15/06/2020 08:00 a 30/06/2020 23:59 (Horário de Brasília) Status:ABERTO Nota máxima:0,50 Gabarito:Gabarito será liberado no dia 01/07/2020 00:00 (Horário de Brasília) Nota obtida: 1ª QUESTÃO Analise o algoritmo a seguir: #include <stdio.h> #define MAX 5 int pertence(int x, int L[], int n); int main(void){ int A[MAX] = {9, 1, 2, 7}; int i, numero; numero = 1; if(i = pertence(numero, A, MAX)) printf("Sim!!! O valor pertence a posição [%d]", i); else printf("Não!!!"); } int pertence(int x, int L[], int n) { int i, j; j = 1; for(i=0; i<n; i++) if( x == L[i] ) return i; return 0; } De acordo com o algoritmo, assinale a alternativa correta: I – A função pertence() devolve o valor encontrado, que no caso é 1 e não a posição. II – A função pertence() devolve o índice da posição do valor encontrado, que é a posição 1 do vetor. III – O vetor A inicia da posição 0. IV – O vetor A inicia da posição 1. É correto o que se afirma em: ALTERNATIVAS I e II, apenas. I e IV, apenas. II e III, apenas. I, II e III, apenas. I, II, III e IV. 2ª QUESTÃO Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 1 of 10 27/06/2020 10:02 Analise o código abaixo. #include<stdio.h> ________________________________ { return ((float) 4/3 * 3,14 * raio * raio * raio); } int main(void) { ______________ = 2; printf("%f", volume_esfera(esfera)); } Diante do exposto, na sequência, assinale a alternativa que preencha as lacunas corretamente em linguagem C. ALTERNATIVAS int volume_esfera(int raio), int esfera float volume_esfera(int raio), float esfera float volume_esfera(int esfera), int raio float volume_esfera(int raio), int esfera void volume_esfera(int raio), int esfera 3ª QUESTÃO Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 2 of 10 27/06/2020 10:02 Analise o algoritmo a seguir: #include <stdio.h> #define MAX 5 int main(void) { int A[MAX] = {9, 3, 2, 7}; int i; i=0; do { if(A[i]%2==0) printf("%d", A[i]); else printf("%d", A[i]); i++; } while(i < MAX); } De acordo com o algoritmo, assinale a alternativa correta. I – A estrutura de repetição DO WHILE irá gerar um número a mais, devido a ele executar automaticamente o primeiro laço. II – A estrutura de condição irá imprimir os números pares e ímpares. III – O contador i está colocado em local errado, deveria estar fora da condição. IV – Será impresso 93270. V – Será impresso 9327. É correto o que se afirma em: ALTERNATIVAS I e II, apenas. I e IV, apenas. II e IV, apenas I, II e III, apenas. I, II, III, IV, V 4ª QUESTÃO Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 3 of 10 27/06/2020 10:02 Analise o código abaixo. #include <stdio.h> ______________________ int main(void) { struct Veiculo carro; carro.portas = 4; carro.rodas = 5; carro.motor = 1; printf("Quantidade de portas: %d", carro.portas); printf("\nQuantidade de rodas: %d", carro.rodas); printf("\nQuantidade de motor: %d", carro.motor); } Diante do código exposto acima, assinale a alternativa que preencha as lacunas corretamente em linguagem C para que possa ser impresso em telas as seguintes mensagens: Quantidade de portas: 4 Quantidade de rodas: 5 Quantidade de motor: 1 ALTERNATIVAS int Veiculo(int portas, rodas, motor); int Veiculo(int portas, rodas, motor); void Veiculo(int portas, rodas, motor); struct Veiculo { int portas; int rodas; int motor; }; int carro 3 ; carro portas = 4; carro rodas = 5; carro motor = 4; Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 4 of 10 27/06/2020 10:02 5ª QUESTÃO Em linguagem C, como em outras linguagens, é muito comum encontrarmos códigos escritos com a utilização de funções e procedimentos. Esse recurso visa aumentar a praticidade garantindo o encapsulamentos de dados. LEAL, Gislaine Camila Lapasini. OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de programação II. Maringá: Unicesumar, 2020. Dentro do contexto apresentado, assinale as alternativas corretas em que é possível afirma que com o uso de função podemos: I - Permitir o reaproveitamento de código já construído. II - Evitar que um trecho de código seja repetido várias vezes dentro de um mesmo programa. III - Permitir a alteração de um trecho de código de uma forma mais rápida. IV - Evitar que os blocos do programa fiquem grandes demais e, por consequência, mais difíceis de entender. V - Separar o programa em partes, pois o código unificado não funciona por problemas lógicos. É correto o que se afirma em: ALTERNATIVAS I, apenas. I e II, apenas. I e III, apenas. I, II e III, apenas. I, II, III e IV. 6ª QUESTÃO Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 5 of 10 27/06/2020 10:02 Na linguagem C, existem as funções definidas pela linguagem que são aquelas que já estão disponíveis e que sempre iremos utilizar em nossas aplicações. A vantagem das funções nativas do C é que atendem a objetivos muito, muito específicos, como manipular strings, arrays, datas ou arquivos, por exemplo. Todas as funções têm escopo global, assim elas podem ser chamadas fora de uma função mesmo que tenham sido definidas dentro e vice-versa. Baseando-se nessas informações, analise o código a seguir: #include<stdio.h> int valor = 2; int novo_valor; int main(void){ int funcao_um (int valor) { return valor + 1; } int funcao_dois (int valor) { return funcao_um (valor) + valor; } novo_valor = funcao_dois (valor); } Qual valor que a variável novo_valor irá possuir após a chamada da função funcao_dois()? ALTERNATIVAS 2 3 5 6 7 7ª QUESTÃO O vetor é parte integrante das estruturas de dados homogêneas. Seu funcionamento contempla uma variável que possui diversos elementos de mesmo tipo, que podem ser referenciados como um todo. Ao declararmos um vetor, estamos reservando na memória principal do computador uma série de células para uso da variável daquele tipo. O nome do vetor aponta para a base das células e o seu início dá a posição relativa do elemento referenciado ao primeiro (base). LEAL, Gislaine Camila Lapasini. OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de programação II. Maringá: Unicesumar, 2020. De acordo com o contexto apresentado acima, assinale a alternativa correta, que declare um vetor de 50 posições para armazenar números com casa decimais em Linguagem C? ALTERNATIVAS Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 6 of 10 27/06/2020 10:02 float number 50 ; vai de 0 a 49 int number 50 ; vai de 0 a 49 float number 50 ; vai de 1 a 50 float number 50 ; vai de 1 a 49 long number 50 ; vai de 0 a 50 8ª QUESTÃO Estruturas condicionais serão usadas dentro de projetos em todas: as regras de negócio, validações e demais funções ou métodos que venha a criar. O IF sem dúvida é o mais utilizado. Analise o código a seguir: #include<stdio.h> int main(void){ int a = 10; if (a = 11) { printf("1"); } if (a == 10) { printf("%d", a); } printf("%d", a); } De acordo com o código anterior, assinale a alternativa correta para a saída em tela. ALTERNATIVAS Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 7 of 10 27/06/2020 10:02 10 110 111 1010 101010 9ª QUESTÃO Analise o código abaixo. #include<stdio.h> void calculaIdade(int anoAtual, int anoNascimento, char nome[30]); int main(void) { int anoAtual, anoNascimento; char nome[30]; printf("Informa o seu nome: "); gets(nome); printf("Informa o ano Atual e depois o ano de Nascimento\n"); scanf("%d%d", &anoAtual,&anoNascimento); calculaIdade(anoAtual, anoNascimento, nome); } void calculaIdade(int anoAtual, int anoNascimento, char nome[30]) { int idade = anoAtual - anoNascimento; printf("Olá %s, os nascidos no ano de %d, em %d, estarão com %d anos de idade.", nome, anoNascimento, anoAtual, idade); } Dado o código fonte acima, assina a alternativa correta sobre o uso de subrotinas. I – Foi utilizado o recurso de prototipação, no qual é realizada a declaração da assinatura da função antes do método principal. II – A função declarada é do tipo procedimento, pois não esta retornando valores. III – Após o método principal, foi implementada a função prototipada antes da função main. IV – A função deveria retorna valor, pois está utilizando o tipo void na assinatura da função. V – O código irá apresentar erro, pois não é permitido declarar as variáveis recebidas por parâmetros na assinatura da função. É correto o que se afirma em: ALTERNATIVAS Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 8 of 10 27/06/2020 10:02 I, apenas. I e II, apenas. I e III, apenas. I, II e III, apenas. I, II, III e IV. 10ª QUESTÃO Analise o algoritmo a seguir: #include <stdio.h> #define MAX 5 int ordenar(int vetor[MAX]); void imprimir(int vetor[MAX]); void main(void) { int A[MAX] = {8, 5, 9, 4, 15}; printf("\nVetor Original"); imprimir(A); ordenar(A); printf("\nVetor Ordenado"); imprimir(A); } int ordenar(int vetor[MAX]) { int i, j, aux; for (i=0; i<MAX; i++){ for (j=0; j<i; j++){ if(vetor[j] > vetor[j + 1]){ aux = vetor[j]; vetor[j] = vetor[j + 1]; vetor[j + 1] = aux; } } } } void imprimir(int vetor[MAX]){ int i; for (i=0; i<MAX; i++) printf("\n[%d] = %d", i, vetor[i]); } De acordo com o algoritmo, assinale a alternativa correta: I – Foi utilizado o recurso de prototipação de funções. II – Na função imprimir, temos dois comandos na mesma linha, esse fato ocasionará em um erro de sintaxe. III – Os laços de repetições entraram em um laço infinito, pois estão utilizando uma variável do tipo constante, e ela não é visivel pelas funções, apenas no método main. IV – Esse método de ordenação é conhecido como método da bolha. V – Esse método da bolha não funciona para um vetor que já está ordenado. É correto o que se afirma em: ALTERNATIVAS Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 9 of 10 27/06/2020 10:02 I e II, apenas. I e IV, apenas. II e III, apenas. I, II e III, apenas. I, II, III, IV, V. Unicesumar - Ensino a Distância https://studeo.unicesumar.edu.br/ 10 of 10 27/06/2020 10:02
Compartilhar