Buscar

PROGRAMAÇÃO APLICADA A SISTEMAS ELÉTRICOS

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 8 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 8 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

Prévia do material em texto

Disc.: PROGRAMAÇÃO APLICADA A SISTEMAS ELÉTRICOS 
Aluno(a): 202108526411 
Acertos: 4,0 de 10,0 30/03/2022 
 
 
 
1a 
 Questão 
Acerto: 1,0 / 1,0 
 
Nomes de variáveis em C seguem algumas regras. Qual dos seguintes nomes de 
variável abaixo está errado? 
 
 
num_1 
 
num_ 
 
_1num 
 1_num 
 
_num1 
Respondido em 30/03/2022 21:44:29 
 
Explicação: 
Um nome de variável só pode ter letras (maiúsculas e minúsculas), dígitos e símbolo 
sublinhado ''_''. Outra regra é que a primeira letra de uma variável deve ser uma letra ou 
um sublinhado. Desta forma, somente a opção 1_num não atende às regras, pois começa 
com número, gerando um erro de compilação. 
 
 
2a 
 Questão 
Acerto: 0,0 / 1,0 
 
O programa em C a seguir chama uma função chamada func(), passando os três 
valores fornecidos pelo usuário. O que a função func() retorna? 
 
 
 
 Retorna o primeiro valor fornecido pelo usuário. 
 
Retorna último valor fornecido pelo usuário. 
 
Retorna o menor valor fornecido pelo usuário. 
 
Retorna o segundo valor fornecido pelo usuário. 
 Retorna o maior valor fornecido pelo usuário. 
Respondido em 01/04/2022 18:38:45 
 
Explicação: 
A função func() recebe três valores fornecidos pelo usuário e os guarda nas variáveis num1, 
num2 e num3. Dentro da função, é testado se a primeira variável é maior que segunda em 
if (num1 > num2). Se for maior, testa em seguida se num1 é maior que num3. Em caso 
afirmativo, retorna a variável num1 com return num1, que é o maior valor dos três 
fornecidos. Se o teste if (num1 > num3) falha, a função retorna num3, que nesse caso será 
o maior dos três números. Assim, em todos os testes condicionais, o retorno é o maior 
valor dos três. Portanto, a função sempre retorna o maior valor passado pelo usuário. 
 
 
3a 
 Questão 
Acerto: 0,0 / 1,0 
 
Avalie as asserções a seguir e a relação sugerida entre elas. 
I. Sobre os fatores de vantagem que a linguagem C acrescentou ao desenvolvimento 
com de sistemas embarcados, com relação à linguagem de montagem, podemos citar a 
portabilidade. 
PORQUE 
II. A portabilidade permite, principalmente em sistemas embarcados, o uso do código 
com poucas modificações para uso em outra arquitetura de processador, característica 
que não está presente na linguagem de montagem. 
A respeito dessas asserções, assinale a alternativa correta. 
 
 
A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. 
 
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 verdadeiras e a II é uma justificativa 
correta da I. 
 
As asserções I e II são proposições falsas. 
 As asserções I e II são proposições verdadeiras, mas a II não é uma 
justificativa correta da I. 
Respondido em 01/04/2022 18:40:17 
 
Explicação: 
Como os programas em linguagem de montagem são específicos para um processador, que 
possui arquitetura diferente de outros processadores, a linguagem não oferece 
portabilidade entre os sistemas. Para superar essa desvantagem, várias linguagens de alto 
nível, incluindo C, surgiram. Dentre elas, C obteve ampla aceitação e continua sendo a 
preferida em sistemas embarcados. A portabilidade é uma característica atribuída a um 
programa se ele puder ser usado em um sistema operacional ou arquitetura diferente 
daquele em que foi criado, sem a necessidade de grandes retrabalhos. 
 
 
4a 
 Questão 
Acerto: 0,0 / 1,0 
 
Uma variável do tipo básico unsigned char na linguagem C é armazenada em 1(um) 
byte de memória e o intervalo de valores permitido é de 0 a 255. Considerando o tipo 
básico char. Qual das alternativas abaixo é a correta quanto à quantidade de memória 
armazenada e o intervalo de valores usados pelo tipo char? 
 
 
2 bytes; intervalo: -127 a 126. 
 
1 byte; intervalo: -127 a 127. 
 1 byte; intervalo: -128 a 127. 
 
2 bytes; intervalo: -255 a 0. 
 1 byte; intervalo: 1 a 255. 
Respondido em 01/04/2022 18:57:22 
 
Explicação: 
O tipo char armazena valores inteiros com sinal que representam caracteres. O tipo char 
usa 8 bits (1 byte) para armazenar 256 valores, isto é, 28 valores. Como está definido na 
linguagem que o tipo char deve ter números positivos e negativos, é necessário usar um 1 
bit para representar o sinal, sobram 7 bits para representar 128 (= 27 ) caracteres. Assim, 
para o tipo char, o valor_mínimo = -1*28-1 = -128 e o valor_máximo = 28-1 -1 = 127. 
 
 
 
5a 
 Questão 
Acerto: 1,0 / 1,0 
 
Calcule as expressões aritméticas abaixo e considere a precedência entre operadores: 
Exp1 = 24 - 3 * 5; 
Exp2 = (4 - 2 * 6) / 4 + 1; 
Exp3 = 6 / ((2 + 11) % 3) * 4; 
Marque a opção correta abaixo, que indica o resultado das expressões Exp1, Exp2 e 
Exp3: 
 
 
4, 1 e 24 
 9, -1 e 24 
 
9, 1 e -1 
 
4, -1 e 1 
 
9, -1 e 1 
Respondido em 01/04/2022 18:55:49 
 
Explicação: 
Calculando as expressões 
Exp1 = 24 ¿ 3 * 5 = 24 -15 = 9 
Exp2 = (4 - 2 * 6) / 4 + 1 = (4 ¿ 12) / 4 + 1 =-8 /4 + 1 = -2 + 1 = -1 
Exp3 = 6 / ((2 + 11) % 3) * 4 = 6 / ((13) % 3)*4 = 6 / 1 * 4 = 6 * 4 = 24 
 
 
6a 
 Questão 
Acerto: 1,0 / 1,0 
 
A linguagem C possui várias funções, dentre elas se destaca a função scanf() que tem o 
objetivo de ler uma variável pelo teclado. Considerando que a variável num é do tipo 
inteiro (int), qual a opção abaixo é verdadeira? 
 
 scanf("%d", &num); 
 
scanf("%p", &num); 
 
scanf("%lf", &num); 
 
scanf("%c", &num); 
 
scanf("%f", &num); 
Respondido em 01/04/2022 18:56:07 
 
Explicação: 
Como o tipo da variável num é inteira (int). Então o especificador %d é deve ser utilizado 
para números inteiros. Na opção que apresenta o %f é usado erroneamente o especificador 
f para float. Na opção que apresenta o %lf é usado erroneamente o especificador lf 
para long float. Na opção que apresenta %c é usado erroneamente o especificador c 
para char. Na opção que uso o especificador %p é usado erroneamente o especificador 
para pointer (ponteiro). 
 
 
7a 
 Questão 
Acerto: 0,0 / 1,0 
 
Analise programa abaixo que calcula a área de um cilindro através da 
função calcula_area(). Considere que: 
Área do círculo = PI x Raio x Raio, 
Comprimento da circunferência = 2 x PI x Raio, 
 
Programa: 
 
#include 
#define PI 3.14 
 
float calcula_area(____ , ____) { 
 float area = 0; 
 area = __________________; 
 return area; 
 } 
 
main() 
{ 
 float altura = 0; float raio = 0; float area = 0; 
 scanf("%f%f",&altura,&raio); 
 area = calcula_area(altura,raio); 
} 
 
Verifique o código da função calcula_area. Observe que tem três espaços a serem 
completados. Assinale a resposta correta que define os dois parâmetros e a expressão 
matemática que calcula a área do cilindro pela função calcula_area. 
 
 
float calcula_area(float a , float r) e area = (PI * r * r) + (2*PI*r) 
 
float calcula_area(a , r) e area = 2*(PI * r * r) + a*(2*PI*r) 
 float calcula_area(float a , float r) e area = 2*(PI * r * r) + a*(2*PI*r) 
 float calcula_area(float a , float r) e area = (PI * r * r) + a*(2*PI*r) 
 
float calcula_area(int a , int r) e area = 2*(PI * r * r) + a*(2*PI*r) 
Respondido em 01/04/2022 18:54:44 
 
Explicação: 
A função calcula_area recebe dois parâmetros do tipo float (número real). A altura 
representada pela variável a e o raio, representado pela variável r. Assim, precisa definir 
dois parâmetros (float a , float r). A área do cilindro é a soma de três áreas: área da base 
superior (PI * r * r) mais área da base inferior (PI * r * r) mais área da superfície 
lateral a*(2*PI*r). Assim, a área total é representada pela expressão area = 2*(PI * r * 
r) + a*(2*PI*r). 
 
 
8a 
 Questão 
Acerto: 0,0 / 1,0 
 
Analise o programa abaixo e responda a opção correta: 
01: #include 
02: 
03: int f1 (int x, int y) { 
04: int res; 
05: if (y != 0) { 
06: res = x / y; 
07: else { 
08: res= 1 / x; } 
09: while (x > y) { 
10: res = res + x; 
11: x = x - 4; 
12: } 
13: return res; 
14: } 
15: 
16: main() { 
17: f1(10,2); 
18: f1(5, 0); 
19: f1(8, 4); 
20: } 
 
Assinale a resposta correta com o valor da variável res, na sequência das chamadas da função f1. 
 
 
21; 6,0; 10. 
 21; 6,2; 10. 
 
10; 6,2; 10. 
 10; 6,2; 21. 
 
20; 6,0; 11. 
Respondido em 01/04/2022 18:54:01 
 
Explicação: 
A tabela abaixo mostra os valores das variáveis x, y e res após a execução da função f1 nas três 
chamadas. 
Chamada da 
Função f1(10,2) f1(5,0) f1(8,4) 
Variável x y res x y res x y res 
Valor 10 2 21 5 0 6,2 8 4 10 
 
 
 
9a 
 Questão 
Acerto: 0,0 / 1,0 
 
Qual componente da CPU é utilizado para traduzir os códigos das instruções do 
programa em sequências de ações? 
 
 Decodificador de instruções. 
 
Tradutor de instruções. 
 
Sequenciador de códigos. 
 
Sequenciador de instruções. 
 Unidade lógica e aritmética. 
Respondido em 01/04/2022 18:48:20 
 
Explicação: 
As instruções do software de um sistema embarcado são armazenadas na memória de 
programa. Quando a CPU está executando as instruções, os códigos dessas instruções são 
buscados na memória e, em seguida, esses códigos precisam ser decodificados. O 
decodificador de instruções de um processador é um circuito combinacional, cujo objetivo é 
traduzir um código de instrução para uma sequência de ações que executa o que a 
instrução indica. 
 
 
10a 
 Questão 
Acerto: 1,0 / 1,0 
 
Você foi designado para especificar um microcontrolador que deve controlar a 
velocidade de um motor DC, que pode ser regulado variando a tensão contínua aplicada 
aos seus terminais. Os dispositivos a seguir podem ser escolhidos em modelos de 
microcontroladores que você tem para especificar. 
I - ADC. 
II - DAC. 
III - RS232. 
IV - PWM. 
Qual opção indica o(s) componente(s) que você pode escolher para controlar o motor 
DC? 
 
 
Somente a II. 
 II ou IV. 
 
I ou II. 
 
II, III ou IV. 
 
II ou III. 
Respondido em 01/04/2022 18:52:34 
 
Explicação: 
Tanto um conversor digital para analógico (DAC) como um PWM (modulador por largura de 
pulsos) podem ser usados para controlar a velocidade de um motor DC, pois ambos 
permitem regular a quantidade de tensão nos terminais de um motor. Além disso, ambos 
podem ser componentes internos aos microcontroladores. O controle de velocidade por 
modulação de largura de pulso funciona acionando o motor com uma série de pulsos 
''Ligado-Desligado'' e variando o ciclo de trabalho, que é a fração de tempo em que a 
tensão de saída está ''Ligada'' em comparação com quando está ''Desligada'', mantendo a 
frequência constante. O DAC é um dispositivo que transforma dados digitais em um sinal 
analógico, um valor de tensão contínua, o que também pode ser usado para controlar a 
velocidade do motor.

Continue navegando