Baixe o app para aproveitar ainda mais
Prévia do material em texto
19/10/2023, 10:41 Estácio: Alunos https://simulado.estacio.br/alunos/ 1/7 Avaliando Aprendizado Teste seu conhecimento acumulado Disc.: PROGRAMAÇÃO APLICADA A SISTEMA ELÉTRICOS Aluno(a): ANTÔNIO CARLOS DE PADUA DOS SANTOS 202001548203 Acertos: 1,6 de 2,0 19/10/2023 Acerto: 0,2 / 0,2 Você chegou à expressão lógica (1) abaixo para implementar um circuito lógico de desligamento de uma máquina. Porém, o gerente técnico pediu para você usar a expressão lógica (2) no lugar, dizendo que é equivalente a (1). Que regra(s) ele usou para fazer esta alteração? De Morgan Idempotente Distributiva e idempotente Comutativa e distributiva Associativa Respondido em 19/10/2023 10:10:42 Explicação: Teoremas de De Morgan são basicamente dois conjuntos de regras ou leis desenvolvidas a partir das expressões booleanas para AND, OR e NOT usando duas variáveis de entrada, A e B. Essas duas regras ou teoremas permitem que as variáveis de entrada sejam negadas e convertidas de uma forma de função booleana em uma forma oposta. O segundo teorema, usado neste caso, a�rma que duas (ou mais) variáveis NAND juntas são iguais aos dois termos invertidos (complemento) em uma operação lógica OR, o que nos leva à expressão: = + . A lei idempotente é aplicada quando é realizada uma operação AND ou OR consigo mesma. A associativa trabalha com 3 variáveis. Já na comutativa, não importa em que ordem usamos as variáveis. Acerto: 0,2 / 0,2 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? 1 byte; intervalo: 1 a 255. 1 byte; intervalo: -127 a 127. 2 bytes; intervalo: -255 a 0. 1 byte; intervalo: -128 a 127. ĀB̄ Ā B̄ Questão1 a Questão2 a https://simulado.estacio.br/alunos/inicio.asp https://simulado.estacio.br/alunos/inicio.asp javascript:voltar(); javascript:voltar(); 19/10/2023, 10:41 Estácio: Alunos https://simulado.estacio.br/alunos/ 2/7 2 bytes; intervalo: -127 a 126. Respondido em 19/10/2023 10:11:47 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á de�nido 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. Acerto: 0,0 / 0,2 Analise o código abaixo com relação ao escopo das variáveis e o resultado do programa após a execução: 1: #include 2: 3: int imprimir(int X, int Y) 4:{ 5: X--; 6: Y++; 7: printf("Valor de X = %d, Y = %d\n", X, Y); 8:} 9: 10: main () { 11: int X,Y; 12: X = 100; 13: Y = X - 40; 14: imprimir(X,Y); 15: printf ("Valor de X = %d, Y = %d\n", X, Y); 16: } Assinale a resposta correta da saída do programa acima. Valor de X = 99, Y = 61 Valor de X = 100, Y = 60 Valor de X = 100, Y = 60 Valor de X = 99, Y = 61 Valor de X = 100, Y = 60 Valor de X = 100, Y = 60 Valor de X = 99, Y = 60 Valor de X = 100, Y = 61 Valor de X = 100, Y = 60 Questão3 a 19/10/2023, 10:41 Estácio: Alunos https://simulado.estacio.br/alunos/ 3/7 Valor de X = 60, Y = 61 Respondido em 19/10/2023 10:12:53 Explicação: Veri�ca-se que na linha 14 a função imprimir(X,Y) é chamada e recebe como parâmetros X=100 e Y=60. Após a execução dos comandos nas linhas 5 e 6, X = 99 e Y = 61 (variáveis locais na função imprimir). O comando "printf ("Valor de X = %d, Y = %d\n", X, Y);" (localizado na linha 7) imprime o resultado "Valor de X = 100, Y = 60". Acerto: 0,2 / 0,2 O IDE (ambiente de desenvolvimento integrado) reúne recursos em um mesmo ambiente para facilitar o desenvolvimento de sistemas embarcados. Qual o mínimo de recursos para um software ser considerado um IDE para desenvolvimento de aplicações embarcadas com microcontroladores? Editor de texto, gerenciador de projeto e ferramentas de compilação. Compilador, depurador e editor de texto. Editor de texto e compilador. Gerenciador de projeto e montador. Gerenciador de projeto e depurador. Respondido em 19/10/2023 10:13:28 Explicação: As ferramentas mais comuns para se programar sistemas embarcados passaram a ser reunidas em um mesmo ambiente nas IDEs. Assim, os programadores não precisam mais sair de um programa e passar para outro, do editor para o compilador ou montador, continuamente. Além dessas ferramentas, o editor de texto e as possíveis ferramentas de compilação, os IDEs precisam ter no mínimo um gerenciador de projeto, em que os arquivos-fonte podem ser acrescentados. Depuradores são encontrados hoje nos melhores IDEs, mas não são imprescindíveis para o desenvolvimento de sistemas mais simples. Acerto: 0,2 / 0,2 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 modi�caçõ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. As asserções I e II são proposições verdadeiras, mas a II não é uma justi�cativa correta da I. 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 falsas. As asserções I e II são proposições verdadeiras e a II é uma justi�cativa correta da I. Respondido em 19/10/2023 10:15:13 Questão4 a Questão5 a 19/10/2023, 10:41 Estácio: Alunos https://simulado.estacio.br/alunos/ 4/7 Explicação: Como os programas em linguagem de montagem são especí�cos 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. Acerto: 0,2 / 0,2 Dentre os operadores da linguagem C, o operador ternário (?) pode substituir a estrutura de condição if¿else. Dado a instrução abaixo: numero >= 0 ? numero++ : numero--; Se o valor da variável (numero) for -10, qual será o resultado do comando? 10 -11 11 -10 9 Respondido em 19/10/2023 10:15:57 Explicação: Vamos explicar o código: numero >= 0 ? numero++ : numero--; Neste código se o número for maior ou igual a zero será incrementado, caso contrário será decrementado de uma unidade. Como a variável numero tem valor -10, que é menor que zero, então a variável será decrementada. Acerto: 0,2 / 0,2 Com relação ao conceito de passagem de parâmetros, assinale a opção correta. O número de parâmetros enviados para uma função pode ser diferente do número de parâmetros existentes no cabeçalho da função, pois a função emprega os parâmetros que ela necessita. Sempre que uma função é invocada (ou chamada), a função main() continua a executar suas instruções. Após o término de seu funcionamento, a função tem que devolver um valor para o programa que a invocou. Um programa em C não precisa da função main() escrita no seu código, quando existem outras funções presentes no programa. O código de uma função só é executado quando esta é invocada em alguma parte do programa a que está de algum modoligado. Respondido em 19/10/2023 10:16:15 Explicação: O código de uma função só é executado quando esta é invocada em alguma parte do programa a que está de algum modo ligado. Questão6 a Questão7 a 19/10/2023, 10:41 Estácio: Alunos https://simulado.estacio.br/alunos/ 5/7 Acerto: 0,2 / 0,2 Examine as a�rmações a seguir sobre técnicas de depuração em software embarcado. I - Com base no LED piscando é possível obter conhecimento sobre o que está acontecendo em um sistema embarcado. Isso certamente funciona para sistemas de computador muito simples e lentos. II - Veri�car a alternância de dados em pinos com um analisador lógico permite inspecionar sinais mais rápidos do que com LEDs. III - Emitir informações usando o canal de comunicação serial do microcontrolador permite inspecionar sinais mais rapidamente do que com LEDs ou analisador lógico. Quais a�rmações estão corretas? Somente I e III estão corretas. Somente a I está correta. Somente II e III estão corretas. Somente a II está correta. Somente I e II estão corretas. Respondido em 19/10/2023 10:19:32 Explicação: Uma transmissão por porta serial é mais rápida para enviar informações do que um LED, pois piscar um LED em alta velocidade não permite ao observador identi�car se ele está aceso ou apagado. Essa mesma informação seria mais facilmente identi�cada por um analisador lógico, que registra sinais digitais muito mais rapidamente do que um observador pode registrar no piscar de um LED. Então, as a�rmações I e II estão corretas. A a�rmação III está incorreta, pois um analisador lógico é mais rápido para registrar informações do que uma transmissão serial de microcontrolador pode realizar. Acerto: 0,2 / 0,2 Você precisa simpli�car a expressão abaixo, usando as regras da álgebra booleana para usar menos portas lógicas no circuito a ser montado e diminuir o consumo. Qual a expressão simpli�cada? ABC+A C+AB A(B + C) AB+C AB+B+C B+ A+BC Respondido em 19/10/2023 10:17:36 Explicação: Partindo da expressão original, ABC+A C+AB , deve-se usar as regras a seguir: aplicando a regra ABC + ABC = ABC, reescrevemos a expressão: ABC+ABC+A C+AB . Aplicando a regra Distributiva entre as expressões 1 e 3; 2 e 4, temos: AC(B+ )+AB(C+ ). Usando C + = 1 e B + = 1, temos AC+AB. E por �nal, fatorando, temos: A(B + C). ¯B ¯C ¯ C B̄ C̄ B̄ C̄ B̄ C̄ C̄ B̄ Questão8 a Questão9 a 19/10/2023, 10:41 Estácio: Alunos https://simulado.estacio.br/alunos/ 6/7 Acerto: / 0,2 Questão10 a 19/10/2023, 10:41 Estácio: Alunos https://simulado.estacio.br/alunos/ 7/7 Um programa gera a sequência: 1 3 5 7 9. Qual das opções abaixo representa o código que gera a sequência acima? Obs: a variável n é do tipo inteira. for(n=1; n<10; n=n+1) printf("%d '', n); for(n=1; n<=8; n=n+2) printf("%d '', n); for(n=1; n<10; n=n+2) printf("%d '', n); for(n=2; n<9; n=n+2) printf("%d '', n); for(n=1; n<=10; n=n+1) printf("%d '', n); Explicação: A sintaxe do comando é for(inicialização; condição; incremento) comando(s); Para gerar a sequência 1 3 5 7 9, a inicialização começa n = 1. O valor é incrementado de 2, por isso n = n + 2. E a repetição termina quando n<10, isto é, quando n=9.
Compartilhar