Baixe o app para aproveitar ainda mais
Prévia do material em texto
PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 1a aula Lupa PPT MP3 Exercício: CCE1950_EX_A1_201903308313_V1 11/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Sobre algoritmo, marque a opção correta. É uma linguagem de programação para computadores. É uma etapa posterior à programação da solução de um problema. É a solução teórica, passo a passo, de um problema. É uma forma de ensinar o computador. É um hardware especifico para resolver problemas. Respondido em 11/05/2020 18:31:14 Explicação: Falso. Algoritmo não é linguagem de programação. Exemplo de linguagem de programção : C++ É uma linguagem de programação para computadores. Falso. Algoritmo é um conjunto de passos sem ambiguidade que vão traduzir a solução de um problema. O algoritmo poderá virar um programa, que poderá ou não "ensinar" o computador. É uma forma de ensinar o computador. Verdadeiro É a solução teórica, passo a passo, de um problema. Falso. É uma etapa anterior à programação, ou seja, à criação de programa. É uma etapa posterior à programação da solução de um problema. Falso. Algoritmo pode virar um programa. E programa é software e não hardware. É um hardware especifico para resolver problemas. 2a Questão Assinale a alternativa correta relacionada à característica de um algoritmo: Teste de Mesa serve para receber os comandos de entrada. Valores de entrada são recebidos através do monitor. Variáveis do tipo real e inteiro aceitam, respectivamente, letras e números. A execução de um algoritmo é feita sequencialmente. Para cada variável pode ser definido mais de um tipo de dado. Respondido em 11/05/2020 18:32:40 Explicação: Verdadeira A execução de um algoritmo é feita sequencialmente. Falso. Entrada é via teclado ou via arquivo, o que aqui não é o caso. Valores de entrada são recebidos através do monitor. Falso. Apenas um tipo de dado. Para cada variável pode ser definido mais de um tipo de dado. Falso. Teste de mesa serve para fazer um passo a passo. Teste de Mesa serve para receber os comandos de entrada. Falso. Tipo real aceita número com casas decimais ou inteiros. Tipo inteiro aceita apenas valores inteiros. Variáveis do tipo real e inteiro aceitam, respectivamente, letras e números. 3a Questão Observe o fluxograma a seguir e assinale a alternativa correta sobre o mesmo: A simbologia empregada no recebimento de dados está equivocada e foi trocada por aquela que representa exibição de informações. Poderiam ser retirados do fluxograma os símbolos de terminação que delimitam, respectivamente, o início e o fim da solução. O fluxograma está incompleto e errado, pois não exibe mensagens antes que a leitura de dados seja realizada. No cálculo da idade, inverteram-se as posições dos anos e, por isso, a idade resultante será sempre negativa. O fluxograma é responsável por calcular a idade de um indivíduo a partir de seu ano de nascimento e do ano em que estamos. Respondido em 11/05/2020 18:34:32 4a Questão Assinale a opção correta. Para se escrever um programa não precisa se conhecer lógica de programação, pois o fundamental é a linguagem de programação. Um programa é um algoritmo codificado em uma pseudolinguagem. Programa e fluxograma são sinônimos. Um programa é um algoritmo codificado em uma linguagem de programação. Um programa é um algoritmo codificado em linguagem natural. Respondido em 11/05/2020 18:35:43 Explicação: Um programa é um algoritmo codificado em uma linguagem de programação. Verdadeira Falsa. Programa é código escrito em alguma linguagem de programação. Fluxograma é uma representação gráfica de algoritmo. Programa e fluxograma são sinônimos. Falso. Programa é um algoritmo codificado ou escrito em alguma linguagem de programação. Um programa é um algoritmo codificado em linguagem natural. Falso. Programa é um algoritmo codificado ou escrito em alguma linguagem de programação. Um programa é um algoritmo codificado em uma pseudolinguagem. Falso. É fundamental o uso da lógica de programação além de se conhecer a linguagem de programação. Para se escrever um programa não precisa se conhecer lógica de programação, pois o fundamental é a linguagem de programação. 5a Questão Com base nos conceitos de algoritmos, lógica de programação e linguagens de programação, é correto afirmar que: As linguagens de programação possibilitam a codificação de um determinado algoritmo, de acordo com um conjunto de regras específico. Os três conceitos correspondem às únicas formas de representação da solução de um determinado problema. As linguagens de programação possuem um conjunto de regras flexíveis para a representação dos comandos de um programa. Os algoritmos correspondem, estritamente, aos conjuntos de dados e informações que são tratados em um determinado processamento. Lógica de programação corresponde à representação gráfica de um determinado algoritmo. Respondido em 11/05/2020 18:37:38 Explicação: 1ª. opção : Falso. As representações de algoritmos são linguagem natural, fluxograma e pseudocódigo. 2ª. opção . Falso. Fluxograma corresponde à representação gráfica de algoritmos. 3ª. opção. Verdadeira. De acordo com o ensinado na aula 1. 4ª. opção. Falso. Em algoritmos se vê também os comandos, além dos dados. 5ª. opção. Falso. As regras não são flexíveis. Temos que seguir corretamente a sintaxe das linguagens na criação de programas. 6a Questão Sobre o FLUXOGRAMA abaixo podemos afirmar que : Apresenta na sua lógica as estruturas básicas de SEQUÊNCIA e REPETIÇÃO Apresenta na sua lógica as três estruturas básicas de programação Apresenta na sua lógica a estrutura básica REPETIÇÃO Apresenta na sua lógica a estrutura básica DECISÃO Apresenta na sua lógica as estruturas de DECISÃO e REPETIÇÃO Respondido em 11/05/2020 18:40:00 Explicação: Justificativas das opções : >> Apresenta na sua lógica as três estruturas básicas de programação . Falso. Não apresenta repetição >> Apresenta na sua lógica a estrutura básica REPETIÇÃO Falso. Apresenta apenas entrada de dados, saída de dados, atribuição, condicional composto. >> Apresenta na sua lógica as estruturas básicas de SEQUÊNCIA e REPETIÇÃO Falso. Não apresenta repetição. >> Apresenta na sua lógica a estrutura básica DECISÃO. Verdadeiro. Veja o uso do losango. >> Apresenta na sua lógica as estruturas de DECISÃO e REPETIÇÃO Falso. Não apresenta repetição. 7a Questão Analise as afirmativas a seguir em relação a representação de algoritmos: I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo; II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representar graficamente o algoritmo; III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos. Podemos afirmar que: Apenas as alternativas I e II são CORRETAS Apenas a alternativa I é CORRETA Apenas as alternativas I e III são CORRETAS Apenas as alternativas II e III são INCORRETAS Todas as alternativas são CORRETAS Respondido em 11/05/2020 18:41:05 Explicação: Analisando cada afirmativa : I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo; Verdadeira. O fluxograma usa símbolos para E/S, atribuição e outros comandos. II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representargraficamente o algoritmo; Falsa. Pseudocódigo não tem nada de representação gráfica. III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos. VErdadeira. Através de alguma linguagem de programação, escrevemos programas. 8a Questão Assinale a opção correta. Considerando o conceito de programa é correto afirmar que ... Um programa é um algoritmo escrito em linguagem natural, mas sem ambiguidades. Ou seja, é um conjunto de comandos que representam tarefas que serão compreendidas por um computador. Um programa é um algoritmo codificado em uma pseudolinguagem, isto é, um conjunto de instruções/funções que representam tarefas que serão apenas executadas por um computador. Um programa é um algoritmo codificado em uma pseudolinguagem, isto é, um conjunto de instruções/funções que representam tarefas que serão interpretadas e executadas por um computador. Um programa é um algoritmo codificado em uma linguagem de programação, isto é, um conjunto de instruções/funções que representam tarefas que serão interpretadas e executadas por um computador. Um programa é um algoritmo codificado em uma linguagem de gráfica (ex: fluxograma), isto é, um conjunto de instruções que representam tarefas que serão apenas interpretadas por um computador. Respondido em 11/05/2020 18:43:43 Explicação: Um programa é um algoritmo codificado em uma linguagem de programação, isto é, um conjunto de instruções/funções que representam tarefas que serão interpretadas e executadas por um computador. Falso. Para escrever programa usamos linguagem de programação e não pseudolinguagem. Um programa é um algoritmo codificado em uma pseudolinguagem, isto é, um conjunto de instruções/funções que representam tarefas que serão interpretadas e executadas por um computador. Falso. Para escrever programa usamos linguagem de programação e não pseudolinguagem. Um programa é um algoritmo codificado em uma pseudolinguagem, isto é, um conjunto de instruções/funções que representam tarefas que serão apenas executadas por um computador. Falso. Para escrever programa usamos linguagem de programação e não linguagem gráfica. Um programa é um algoritmo codificado em uma linguagem de gráfica (ex: fluxograma), isto é, um conjunto de instruções que representam tarefas que serão apenas interpretadas por um computador. Para escrever programa usamos linguagem de programação e não linguagem natural. Um programa é um algoritmo escrito em linguagem natural, mas sem ambiguidades. Ou seja, é um conjunto de comandos que representam tarefas que serão compreendidas por um computador. PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 2a aula Lupa PPT MP3 Exercício: CCE1950_EX_A2_201903308313_V1 11/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Assinale a opção correta. Sobre variáveis é correto afirmar que ... uma variável ocupa um espaço em memória e devemos usar, normalmente, um tipo de dados ao declará-la. o nome de uma variável sempre pode começar com acento. palavras reservadas podem ser usadas para nome de variáveis. nomes de variáveis sempre podem iniciar com aspa. uma variável ocupa um espaço em memória e nunca se usa um tipo de dados ao declará-la. Respondido em 11/05/2020 18:48:38 Explicação: 1ª. opção : Verdadeiro. De acordo com definição da aula e exemplos vistos nas aulas 2 e 3 e demais aulas. 2ª. opção : Falso. Vide aulas 2, 3 e outras. Palavras reservadas serão de comandos, tipos de dados e não podem ser usadas para nomear variáveis. 3ª. opção : Falso. Nomes de variáveis começam com letra ou _ (sublinhado) 4ª. opção : Falso. Nomes de variáveis começam com letra ou _ (sublinhado) 5ª. opção. Falso. A partir da aula 2 se vê que variáveis terão um tipo de dados. 2a Questão Assinale a opção correta. Dizemos que uma linguagem é de alto nível quando conseguimos ler e escrever usando palavras conhecidas por nós. O C++ é uma linguagem de alto nível na qual o uso de variáveis é opcional. O C++ não é uma linguagem de alto nível, pois usa palavras em Inglês que nem todos entendem. Dizemos que uma linguagem é de alto nível quando usa linguagem binária. Para programar em alto nível é preciso dominar a linguagem binária. Respondido em 11/05/2020 18:50:04 Explicação: Dizemos que uma linguagem é de alto nível quando conseguimos ler e escrever usando palavras conhecidas por nós. Falso. Linguagem binária é com zeros e uns, o que é baixo nível. Dizemos que uma linguagem é de alto nível quando usa linguagem binária. Falso. C++ é uma linguagem de programação de alto nível e usa palavras em Inglês. O C++ não é uma linguagem de alto nível, pois usa palavras em Inglês que nem todos entendem. Falso. Não se tem que dominar a linguagem binária em hipótese alguma. Para programar em alto nível é preciso dominar a linguagem binária. FAlso. O C++ é uma linguagem de alto nível na qual o uso de variáveis é necessário para armazenarmos dados. O C++ é uma linguagem de alto nível na qual o uso de variáveis é opcional. 3a Questão Um menino resolveu abrir o cofrinho de economias que contém o que guardou durante um ano. São moedas de R$ 0,25, R$ 0,50 e R$ 1,00. Imaginando que você precisa escrever um programa em C++ que, a partir da quantidade de cada moeda, mostre a quantia total economizada, como seria a declaração de variáveis necessárias a este programa? bool qtde25, qtde50, qtde1, quantiaTotal; string qtde25, qtde50, qtde1, quantiaTotal; int qtde25, qtde50, qtde1, quantiaTotal; float qtde25, qtde50, qtde1, quantiaTotal; char qtde25, qtde50, qtde1, quantiaTotal; Respondido em 11/05/2020 18:51:22 4a Questão O linha de programa que representa a ação "processamento" em um algoritmo em pseudolinguagem é: se valor <- valor + 1; enquanto leia programa Respondido em 11/05/2020 18:52:03 Explicação: Conteúdo administrado no livro, onde é mostrado a equivalência entre algoritmo e programa em C++. As demais opções não apresentam nenhuma linha de processamento. se indica o início de uma estrutura condicional, enquanto, uma estrutura de repetição e programa não diz nada. Leia é o comando de leitura, para entrada de dados e não processamento. 5a Questão Assinale a opção que apresenta somente nomes válidos para variáveis em C++. 1conta, 2total, 3data Conta, Total1, DIA-MÊS-ANO Conta, Total, 5data CONTA, TOTAL1, data CONTA, TOTAL1, 1DATA Respondido em 11/05/2020 18:53:18 Explicação: Falsa. Não se pode começar nome de variável com dígito. CONTA, TOTAL1, 1DATA Falsa. Não se pode começar nome de variável com dígito. Conta, Total, 5data Verdadeiro CONTA, TOTAL1, data Falsa. Não se pode pôr acento ou usar hífen em nome de variável. Conta, Total1, DIA-MÊS-ANO Falsa. Não se pode começar nome de variável com dígito. 1conta, 2total, 3data 6a Questão Faz parte do desenvolvimento de uma algoritmo declarar as variáveis que armazenarão dados a ser manipulados pelo algoritmo. De acordo com as regras para criação dos nomes para as variáveis, assinale a alternativa que possui um exemplo de nome INCORRETO: num1 salariofinal nota2 cad1- id nome_aluno Respondido em 11/05/2020 18:54:49 Explicação: Falso, pois é nome possível ter letras e underscore nome_aluno Falso, pois é nome possível ter letra e dígito. num1 Verdadeiro, pois não se pode usar hífen em nome de variável.cad1- id Falso, pois é nome possível ter letras. salariofinal Falso, pois é nome possível ter letra e dígito. nota2 7a Questão As palavras que fazem parte de um conjunto próprio da linguagem C++ são chamadas: palavras especiais palavras únicas palavras próprias palavras código palavras reservadas Respondido em 11/05/2020 18:55:36 Explicação: Não tem outra possibilidade com margem à dúvida. Por definição, é palavra reservada. 8a Questão Os comentários são recursos que podem ser utilizados pelos programadores para: Inserir textos explicativos apenas para o usuário Inserir diretivas para o compilador Inserir comandos que serão executados pela máquina Inserir textos explicativos apenas para o programador Inserir comandos que serão traduzidos pelo compilador Respondido em 11/05/2020 18:55:52 Explicação: Falso. Comentário não é comando ou permite inserir comando. Inserir comandos que serão executados pela máquina Falso. Comentário não é comando ou permite inserir comando. Inserir comandos que serão traduzidos pelo compilador Verdadeiro Inserir textos explicativos apenas para o programador Falso. O usuário não irá ler o programa. Inserir textos explicativos apenas para o usuário Falso. O compilador irá ignorar o texto explicativo dos comentários. Inserir diretivas para o compilador PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 3a aula Lupa PPT MP3 Exercício: CCE1950_EX_A3_201903308313_V1 11/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas proposições lógicas necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro. ((pontos>=10) ! (pontos <=20)) ((pontos>=10) % (pontos <=20)) ((pontos>=10) # (pontos <=20)) ((pontos>=10) || (pontos <=20)) ((pontos>=10) && (pontos <=20)) Respondido em 11/05/2020 18:57:55 Explicação: Pelo tabela verdade do operador e ( && em C++), as duas condições devem ser verdadeiras para toda a expressão ser verdadeira. Se for o ou (símbolo ||), basta uma condição se verdadeira para toda a expressão ser verdadeira. % é para cálculo de resto. # não tem efeito O operador ! é unário e inverte o valor lógico. Ou seja, se a expressão for verdadeira : ! expressão é falsa. 2a Questão Assinale a alternativa que apresenta APENAS os exemplos de operadores lógicos. &&, || e ! &&, >= e <= =, > e ? +, - e * !, > e >= Respondido em 11/05/2020 18:58:42 Explicação: Falso. O único operador lógico é o ! !, > e >= Verdadeiro. &&, || e ! Falso. Nâo há operador lógico neste item. =, > e ? Falso. O único operador lógico é o && &&, >= e <= Falso. Nâo há operador lógico neste item. +, - e * 3a Questão Utilizando os operadores adequados, como pode ser reescrita a expressão abaixo? A ou B e C e não D A && B && C && !D A !! B && C && ||D A || B && C && !D A && B || C || !D A || B ! C ! &&D Respondido em 11/05/2020 18:59:23 Explicação: A || B && C && !D || = OU && = E ! = não 4a Questão Analise o trecho de código abaixo e depois marque a opção correta para o que se pede: int x, y,a , b; float z; a = 14; b = 3; x = a / b; y = a % b; z = y / x; Qual seria o valor de x? 4 14 5 4.66666 3 Respondido em 11/05/2020 19:08:41 Explicação: Fazendo um teste de mesa e sabendo que a divisão com / entre inteiros fornece o quociente da divisão e o operador % fornece o resto da divisão inteira, chegamos no valor x igual a 4. 5a Questão Observe a tabela da verdade para a expressão A && B || B || A. A B A && B A && B || B A && B || B || A V V V V V F F F F V F V F F F F Os valores que completam correta e sequencialmente a coluna A && B || B || A, de cima para baixo, são: F - V - V - F V - F - F - F V - V - V - F F - F - V - F V - V - V - V Respondido em 11/05/2020 19:10:34 6a Questão Se você desejar escrever a expressão A|| B && C && !D em um algoritmo no Portugol Studio, como a mesma ficaria? A ou B e C e D A e B ou C ou nao D A ou B e C e nao D A ou nao B e nao C e nao D A e B ou C nao D Respondido em 11/05/2020 19:11:47 7a Questão Considerando os seguintes conteúdos para as variáveis: a = 2, b = 5 e c = 4 Determine qual das sentenças retornará verdadeiro. (b + 2) > (a * c) ((b = 2) == a) (b % a) == 0 a == c pow(c,a) > b * c Respondido em 11/05/2020 19:12:39 Explicação: a == c --> falso, pois a é diferente c (b + 2) > (a * c) -> falso, pois 7 > 8 é falso ((b = 2) == a) , verdade, pois a = 2 8a Questão Assinale a opção correta. Os operadores matemáticos são : +, - , *, / e %. São operadores relacionais : = , > , < São operadores lógicos : &&, ||, != os operadores matemáticos não tem precedência de uso As expressões lógicas retornam valores inteiros Respondido em 11/05/2020 19:14:29 Explicação: Os operadores matemáticos são : +, - , *, / e %. = VERDADE São operadores lógicos : &&, ||, != --> != não é operador lógico e sim relacional (diferente) --> FALSO São operadores relacionais : = , > , < ---> = não é operador relacional e sim comando de atribuição de valor a variável.--> FALSO As expressões lógicas retornam valores inteiros --> FALSO, retornam valores lógicos (V ou F) os operadores matemáticos não tem precedência de uso --: FALSO, há precedencia sim, o * tem preferencia sobre a soma e subtrção PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 4a aula Lupa PPT MP3 Exercício: CCE1950_EX_A4_201903308313_V1 11/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Assinale a opção correta : Para entrada de dados usamos cout e para saída de dados usamos cin Para entrada de dados usamos cin com << e para saída de dados usamos cout com >> Para entrada de dados usamos cout com << e para saída de dados usamos cin com >> Para entrada de dados usamos cin com >> e para saída de dados usamos cout com << Para entrada de dados usamos read e para saída de dados usamos write Respondido em 11/05/2020 19:16:00 Explicação: Basta seguir as descrições na aula 2. 2a Questão Observe o algoritmo a seguir: 1 programa 2 { 3 inclua biblioteca Matematica --> mat 4 funcao inicio() 5 { 6 real qtdeDin, valComb, qtdeLitros 7 escreva("Quanto custa o litro do combustível? R$ ") 8 leia(valComb) 9 escreva("Quantos reais você tem? R$ ") 10 leia(qtdeDin) 11 qtdeLitros=qtdeDin/valComb 12 escreva("Com R$ ", qtdeDin, " você consegue abastecer ", mat.arredondar(qtdeLitros,2)," litros de combustível.") 13 } 14 } Sabendo que o valor do litro do combustível é R$ 3.90 e que você dispõe de R$ 200.00 para abastecer, qual mensagem seria exibida pelo computador na linha 12? "Com R$ 200.00 você consegue abastecer 51.287645 litros de combustível." "Com R$ qtdeDin você consegue abastecer mat.arredondar(qtdeLitros,2) litros de combustível." "Você consegue abastecer 51.28litros de combustível com R$ 200.00." "Com R$ 200.00 você consegue abastecer 51.28 litros de combustível." "Você consegue abastecer 51.28 litros de combustível." Respondido em 11/05/2020 19:19:28 3a Questão Utilizando as regras do Portugol Studio, imagine que você precisa escrever um algoritmo que receba o ano atual e o ano de nascimento de um usuário, calcule e exiba a sua idade através da mensagem "Você tem ou fará XX anos", onde XX é a idade calculada. Qual das alternativas a seguir mostra a instrução correta a ser utilizada na exibição da idade? escreva("Você tem ou fará " * idade * " anos") leia("Você tem ou fará ", idade, " anos") escreva("Você tem ou fará ", idade, " anos") escreva("Você tem ou fará " /idade/ " anos") leia("Você tem ou fará " / idade/ " anos") Respondido em 11/05/2020 19:21:40 4a Questão Marque a opção correta para a declaração das variáveis conforme o trecho de código abaixo, que calcula a média de 3 notas de 1 aluno: printf (" nota 1 = "); scanf("%f", nota1); printf (" nota 2 = "); scanf("%f", nota2); printf (" nota 3 = "); scanf("%f", nota3); media=(nota1+nota2+nota3)/3; printf ("media= %f",media); real nota1, nota2, nota3; int nota1, nota2, nota3, media; float nota1..nota3, media; float nota1, nota2, nota3, media; nota1, nota2, nota3 : float Respondido em 11/05/2020 19:22:49 Explicação: as 4 variáveis precisam ser float, para conterem valores com casas decimais 5a Questão No C++, para que os acentos sejam exibidos corretamente durante a execução de um programa, é preciso que sejam utilizadas a biblioteca _______________ e a função _______________. iostream - ptb math - math.round locale - setlocale locale - ptb iostream - setlocale Respondido em 11/05/2020 19:23:44 6a Questão C++ é uma linguagem de programação compilada. Leia as assertivas a seguir e assinale Verdadeiro ou Falso conforme o que é dito sobre as funções do compilador: ( ) Verificar erros de sintaxe no programa; ( ) Produzir um outro programa em linguagem de máquina; ( ) Executar o programa sem necessidade de conversão alguma. V - F - F V - V - F V - V - V F - F - F F - V - F Respondido em 11/05/2020 19:25:24 7a Questão Imagine que você viajou para os Estados Unidos e está muito confuso com a forma como os americanos medem a temperatura, que é em Fahrenheit. Para ficar com menos dúvidas, você decide criar um algoritmo que, dada uma temperatura em Fahrenheit, exiba seu equivalente em graus Celsius. Com base na sintaxe do Portugol Studio, qual das alternativas a seguir apresenta o trecho da solução a ser escrito no lugar das interrogações a seguir? programa { funcao inicio( ) { ???????? } } real tempF, tempC escreva("Temperatura em Fahrenheit: ") tempC=(tempF-32)/1.8 escreva("Temperatura em graus Celsius: ", tempC) real tempF, tempC escreva("Temperatura em Fahrenheit: ") leia(tempF) tempC=(tempF-32)/1.8 real tempF, tempC escreva("Temperatura em Fahrenheit: ") leia(tempF) escreva("Temperatura em graus Celsius: ", tempC) real tempF, tempC escreva("Temperatura em Fahrenheit: ") leia(tempF) tempC=(tempF-32)/1.8 escreva("Temperatura em graus Celsius: ", tempC) escreva("Temperatura em Fahrenheit: ") leia(tempF) tempC=(tempF-32)/1.8 escreva("Temperatura em graus Celsius: ", tempC) Respondido em 11/05/2020 19:28:31 8a Questão Marque a opção correta quanto ao uso dos comandos de entrada e saída em C++ cout << "lendo a idade"; cin >> idade; exiba "lendo a idade"; lendo idade; System.out.println("lendo idade"); System.out.println("lendo idade"); cout "lendo a idade"; cin idade; cout < lendo idade; cin > idade Respondido em 11/05/2020 19:29:19 Explicação: Falso. Erro no cout e no cin. Os operadores são >> e <<. E ainda ?: variável não tem espaço em branco cout < lendo idade; cin > idade VErdade cout << "lendo a idade"; cin >> idade; Falso. Faltam os operadores >> e << cout "lendo a idade"; cin idade; Falso. Em C++ não é exiba e lendo. exiba "lendo a idade"; lendo idade; Falso. Não é Java. Em C++ usam-se cout para saída de dados e cin para entrada de dados System.out.println("lendo idade"); System.out.println("lendo idade"); PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 5a aula Lupa PPT MP3 Exercício: CCE1950_EX_A5_201903308313_V1 11/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Considere um programa em C++ que recebe um número inteiro qualquer e informe se ele é par ou ímpar. a estrutura seletiva adequada para teste do número é: switch (resto==0) {cout <<"Este número é par!";} case {cout <<"Este número é ímpar!";} if (resto==0) then {cout <<"Este número é par!";} elseif not {cout <<"Este número é ímpar!";} if (resto==0) {cout <<"Este número é par!";} else {cout <<"Este número é ímpar!";} if (resto=0) {cout <<"Este número é par!";} if {cout <<"Este número é ímpar!";} if (resto!=0) {cout <<"Este número é par!";} else {cout <<"Este número é ímpar!";} Respondido em 11/05/2020 19:49:51 2a Questão Em linguagem de programação, existe uma estrutura que é empregada em situações em que é preciso tomar uma decisão a respeito de determinado resultado que será obtido em duas situações diversas. Marque a opção que determina a estrutura de controle citada: Decisão Recursiva Matricial Vetorial Repetição Respondido em 11/05/2020 19:58:54 Explicação: A opção que determina a estrutura de controle citada é a Decisão 3a Questão Tendo em mente os conceitos dos comandos básicos de decisão do C++, analise o trecho de programa abaixo e assinale a alternativa que corresponda a saída na tela: -1 2 22 11 5 Respondido em 11/05/2020 20:00:06 4a Questão Considere o trecho de programa em C++ e assinale a opção que mostra o que é impresso na tela. int x, y, z; x = 10; y = 6; z = x/y; cout << z << " "; if (z > 0) z = x % y; cout << z << " "; 1 4 1 1 Ocorrerá erro, pois o trecho não compila. 4 4 4 1 Respondido em 11/05/2020 20:10:54 Explicação: Basta fazer teste de mesa. DEssa forma, atribuir os valores das variáveis, testar e ver o que é impresso. 5a Questão Considere o trecho de programa em C++. O que é impresso na tela ? int x = 10, y = 3, z, k; y = x + y - 1; z = x/y; k = y % x; if (k == 0) cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k; else cout << x + 1 << " " << y - 1 << " " << z + 2 << " " << k - 2; 11 11 2 0 x = 10 y = 12 z = 0.833 k = 0 x = 10 y = 12 z = 0 k = 0 x= 11 y = 11 z = 2 k = 0 10 12 2 0 Respondido em 11/05/2020 20:10:52 Explicação: É preciso fazer um teste de mesa ou chinês e encontrar a resposta correta, como indicado. Para isso, o conteúdo sobre comando condicional, atualmente, na aula 5, é suficiente, junto com declaração de variáveis de aula anterior. x recebe 10 e depois y recebe 3 e depois y recebe 10+3-1, que dá 12 z recebe 10/12, que dá 0 k recebe 2 TEste do if é falso. Então, entra-se no else e é impresso : 11 11 2 0 6a Questão Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que aprecem na tela. int x = 13, y = 4, z; if( x > y ) { z = x; x = y; y = z; } cout << z << " " << x << " " << y ; 0 13 4 13 134 4 13 13 0 4 13 13 4 13 Respondido em 11/05/2020 20:14:30 Explicação: Fazendo um teste de mesa através de comentários no trecho dado : int x = 13, y = 4, z; // x recebe 13 e y recebe 4 if( x > y ) //testa se 13 é maior que 4 ... É verdade. Então, entra no bloco do if { z = x; // z recebe x, que vale 13. Ou seja, z recebe 13 x = y; // x recebe y, que é 4. Ou seja, x recebe 4 y = z; // y recebe z, que vale 13. Ou seja, y recebe 13 } cout << z << " " << x << " " << y ; //SErá impresso : 13 4 13 7a Questão Assinale a opção correta. O que será impresso na tela, respectivamente, após duas execuções seguidas, sendo que na 1ª. execução o valor de entrada é 7 e na 2ª. execução o valor de entrada é 8. Para isso, considere o seguinte trecho em C++. int num; cout << "Digite um numero: "; cin >> num; if (num != 2 || num != 4 || num != 6) { num = num + 2; cout << num << " "; } if (num != 8) { num--; cout << num << " "; } else cout << num * 5 ; 9 8 10 9 8 10 40 9 8 10 40 9 6 10 9 9 40 Respondido em 11/05/2020 20:16:12 Explicação: Analisando o trecho de programa em C++ ... 1a. execução : num recebe 7. Daí, testamos o 1o. if. Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if. Então, num recebe 9 e é impresso o valor 9 na tela. Seguimos para o próximo if e testamos sua condição. É verdade que 9 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 9 para 8 e imprimimos o valor 8. Concluindo esta 1a. execução : Foram impressos 9 8 2a. execução : num recebe 8. Daí, testamos o 1o. if. Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if. Então, num recebe 10 e é impresso o valor 10. Seguimos para o próximo if e testamos sua condição. É verdade que 10 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 10 para 9, imprimindo o valor 9. Concluindo esta 2a. execução : Foram impressos 10 9 8a Questão O programa abaixo recebeu o valor 2 como entrada. Analise o programa abaixo e assinale a o valor que será impresso. #include using namespace std; int main() { int a, b; cout<< "\n Digite um valor: "; cin>> a; if (a <= 2) b = a + 2 * 30 / 10; else b = a - 2 * 30 /10; cout<< b; system("pause"); } 12 8 2 -4 0 Respondido em 11/05/2020 20:18:33 PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 6a aula Lupa PPT MP3 Exercício: CCE1950_EX_A6_201903308313_V1 15/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Com base na sintaxe do Portugol Studio, imagine que você precisa escrever um algoritmo que exiba o nome do dia semana a partir de seu código numérico equivalente, armazenado na variável codigo. Confira a codificação: 1 - domingo, 2 - segunda-feira, 3 - terça-feira, 4 - quarta-feira, 5 - quinta-feira, 6 - sexta-feira, 7 - sábado. Veja o trecho da estrutura de seleção que poderia ser utilizado na solução: _____A_____ (codigo) { _____B_____ 1: escreva("domingo") ____C______ _____B_____ 2: escreva("segunda-feira") ____C______ _____B_____ 3: escreva("terça-feira") ____C______ _____B_____ 4: escreva("quarta-feira") _____C_____ _____B_____ 5: escreva("quinta-feira") _____C_____ _____B_____ 6: escreva("sexta-feira") _____C_____ _____B_____ 7: escreva("sábado") __________ _____D_____: escreva("Código inválido!") } As instruções que completam adequadamente as lacunas são: A - se, B - caso, C - pare, D - default A - escolha, B - caso, C - pare, D - outros casos A - switch, B - case, C - break, D - default A - case, B - switch, C - default, D - break A - caso, B - escolha, C - pare, D - outros casos Respondido em 15/05/2020 17:29:38 2a Questão Considere o trecho de programa em C++ abaixo. O que é impresso na tela quando o número de entrada é 7 ? Assinale a opção correta. int num; cout << "Digite um numero: "; cin >> num; if (num % 2 == 0) cout << num << "é divisível por 2"; else if (num % 3 == 0 && num % 5 == 0) cout << num << " é divisível por 3 e por 5"; else cout << num << " ### " ; Apenas 7 7 é divisível por 3 e por 5. 7 ### 7 não é divisível por 2. Nada aparece, pois o trecho de programa possui erro. Respondido em 15/05/2020 17:30:28 Explicação: Analisando o trecho em C++ e considerando a entrada 7 temos : num recebeu 7 na entrada. 1o. teste : 7 % 2 é zero ? Falso. Então, entramos no else do 1o. if e testamos a condição do 2o. if 2o. teste : 7 % 3 é zero ? Falso. Nem adianta testar a outra condição deste if, pois existe o &&. DAí, entramos no else do 2o. if, imprimindo na tela 7### Logo, a resposta correta é 7### 3a Questão Quero escrever um programa que leia o número equivalente a um dia da semana e retorne o nome equivalente considerando que 1- Domingo, 2 - Segunda etc. Qual a estrutura básica em C++ que deve ser utilizada para fazer esta seleção múltipla? for switch/case do/while cout while Respondido em 15/05/2020 17:31:13 Explicação: switch/case É para repetição do/while É para repetição for É para impressão na tela cout É para repetição while 4a Questão Considerere um trecho de um programa em C++. Qual a variável que será alterada e para qual valor ela mudará ? int a = 2, b = 4, x = 12, y = 11, z = 3; float t = 0; if (x < y+z) if (y != z*4 - 2) t = y/z; else a = y % z; else b = z + y/x; Nenhuma variável será alterada. A variável b ficará 1 A variável t ficará 3 A variável a ficará 1 A variável b ficará 3 Respondido em 15/05/2020 17:36:10 Explicação: int a = 2, b = 4, x = 12, y = 11, z = 3; float t = 0; if (x < y+z) if (y != z*4 - 2) t = y/z; else a = y % z; else b = z + y/x; Analisando o trecho acima. 1o. if : 12 < 14 ? Sim. Entrar no 1o. if. 2o. if : 11 != 3 * 4 - 2, ou seja, 11 != 12-2, ou seja, 11 é diferente de 10 ? VErdadeiro. Entrar no 2o. if. Então, é preciso fazermos t receber y/z, ou seja, t receber 11/3, que dá 3. 5a Questão Considere que o trecho de código em C++ foi executado 2 vezes, sendo que na 1ª. execução o valor de entrada foi 10 e na 2ª. execução, o valor de entrada foi 5. Ao final das duas execuções, respectivamente, o que foi impresso na tela ? cout << "Digite um valor : "; cin >> z; switch(z) { case 5 : cout << 3 * z << " "; case 10 : cout << 11 /2 * z << " "; case 20 : cout << z * z - 10 << endl; break; default : cout << "Entrada invalida. " << endl; } 50 90 15 25 15 15 27.5 15 55 90 15 25 15 50 90 55 1 55 90 15 27.5 15 Respondido em 15/05/2020 17:37:18 Explicação: O aluno deverá fazer um teste de mesa ou chinês para poder escolher a resposta certa. Tal questão envolve conhecimento de switch ... case com e sem break e de operadores aritméticos, como a divisão entre inteiros ocorrida no 2o. case. 6a Questão Imagine que você precisa escrever um programa em C++ que exiba o nome do dia semana a partir de seu código numérico equivalente, conforme se vê a seguir. 1 - domingo, 2 - segunda-feira, 3 - terça-feira, 4- quarta-feira, 5 - quinta-feira, 6 - sexta-feira, 7 - sábado. Se fosse utilizada a estrutura SWITCH e os testes fossem escritos na ordem em que os dias estão listados, os casos finais dessa estrutura, considerando que você deseja apresentar uma mensagem de erro caso o usuário informe um código equivocado, seriam. default 7: cout <<"sábado"; break; switch: cout <<"Código inválido!"; default 7: cout <<"sábado"; break; default: cout <<"Código inválido!"; case 7: cout <<"sábado"; break; default: cout <<"Código inválido!"; switch 7: cout <<"sábado"; break; default: cout <<"Código inválido!"; case 7: cout <<"sábado"; break; case not: cout <<"Código inválido!"; Respondido em 15/05/2020 17:37:32 7a Questão Às vezes me perguntam se existe alguma razão para existirem tantas formas de decisão nas linguagens de programação. Eu sempre digo: Claro que sim! Analise as afirmativas abaixo e escolha a opção certa. I Se tivermos que fazer um teste e só executar um bloco, que pode ter uma instrução ou mais instruções, o if simples deverá ser escolhido. II Se tivermos duas possibilidades de respostas, não poderemos usar dois if(s) simples, onde o teste de um é o complementa o do outro, porque poderão sair duas respostas. III Se tivermos três possibilidades de respostas, podemos usar um if simples e um if composto que não teremos problemas com as respostas. IV Quando temos 10 possibilidades de respostas, poderemos usar 10 if(s) simples, embora usar ifs encadeados seria mais eficiente. Somente a afirmativa I é verdadeira As afirmativas I e IV são verdadeiras As afirmativas II, III e IV são verdadeiras Somente a afirmativa II é verdadeira Somente a afirmativa III é falsa Respondido em 15/05/2020 17:38:26 Explicação: As respostas falsas são conclusivas 8a Questão Considere o trecho de programa em C++ abaixo. O que é impresso na tela quando o número de entrada é 9 ? Assinale a opção correta. int x; cout << "Digite um numero: "; cin >> x; if (x % 2 == 0) cout << x << "é divisível por 2"; else if (x % 3 == 0 && x % 5 == 0) cout << x << " é divisível por 3 e por 5"; else cout << x << " ### " ; 9 ### Apenas 9 9 não é divisível por 2. Nada aparece, pois o trecho de programa possui erro. 9 é divisível por 3 e por 5. Respondido em 15/05/2020 17:39:06 Explicação: Como a entrada foi 9 então o teste do 1o. if falha e entramos no 1o. else. Dentro do 1o. else temos uma conjunção, ou seja, um E. Como o 1o. teste do E é verdadeiro, mas o 2o. teste é falso, não entramos no bloco do 2o. if. Entramos então, no último else . Por isso, é impresso o valor de x e ###. Como x vale 9, a saída é 9### PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 7a aula Lupa PPT MP3 Exercício: CCE1950_EX_A7_201903308313_V1 15/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Considere o trecho de programa em C++ abaixo. Marque a opção que, corretamente, mostra o que é impresso na tela. int x, y, z; x = 5; y = 20; while (x <= y) { z = x + y; x = x + 5; } cout << z << endl; 40 20 35 30 25 Respondido em 15/05/2020 17:40:09 Explicação: Analisando passo a passo... x recebe 5 e y recebe 20 1o. teste ... 5 <= 20 ? sim. Entra no loop e faz : z recebe 25 x recebe 5+5, que dá 10 2o. teste ... 10 <= 20 ? sim. Entra no loop e faz : z recebe 30 x recebe 15 3o. teste ... 15 <= 20 ? sim. Entra no loop e faz : z recebe 35 x recebe 20 4o. . teste ... 20 <= 20 ? sim. Entra no loop e faz : z recebe 40 x recebe 25 5o. teste ... 25 <= 20 ? Falso. Depois do fim do while será impresso o valor de z que é 40. 2a Questão A estrutura de dados de iteração na qual uma ação será executada pelo menos uma vez, antes da avaliação da condição, é implementada pelo comando básico condicional de atribuição de repetição de seleção sequencial Respondido em 15/05/2020 17:41:23 Explicação: A estrutura de dados de iteração na qual uma ação será executada pelo menos uma vez, antes da avaliação da condição, é implementada pelo comando básico de repetição 3a Questão Em relação às técnicas de programação e construção de algoritmos, assinale a alternativa que apresente corretamente duas características da estrutura de controle repetir ... até que. As instruções no loop são executadas pelo menos uma vez / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro. A execução permanece no loop enquanto o resultado do teste for falso / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro. O teste de controle é realizado no início da estrutura / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro. O teste de controle é realizado no fim da estrutura / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro. A execução permanece no loop enquanto o resultado do teste for verdadeiro / a saída da estrutura de repetição ocorre quando o resultado do teste é falso. Respondido em 15/05/2020 17:42:47 Explicação: A execução permanece no loop enquanto o resultado do teste for verdadeiro / a saída da estrutura de repetição ocorre quando o resultado do teste é falso. 4a Questão Imagine que , com base na sintaxe do Portugol Studio, você precisa escrever um algoritmo que receba uma sequência de números e, para cada número informado, diga se ele é par ou ímpar. A sequência se encerra quando o usuário digitar 0. Considerando que é necessário utilizar uma estrutura repetitiva com pré-teste, qual das alternativas a seguir ajuda a resolver o problema proposto? enquanto (num==0) { se (num/2==0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } faca { se (num%2!=0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } enquanto (num>0) enquanto (num!=0) { se (num%2==0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } faca { se (num%2==0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } enquanto (num!=0) enquanto (num>0) { se (num%2!=0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } Respondido em 15/05/2020 17:43:38 5a Questão A partir da comparação entre as estruturas while e do...while, é certo afirmar que: Em termos de execução não há diferença. A diferença está, apenas, na sintaxe. Dependendo da condição de teste, em ambos os casos o bloco de comandos controlado será sempre executado, pelo menos uma vez. No while, o bloco de comandos controlado poderá não ser executado. Enquanto que no do...while o bloco de comandos controlado será sempre executado, pelo menos uma vez. No do...while, o bloco de comandos controlado poderá não ser executado. Enquanto que no while o bloco de comandos será sempre executado, pelo menos uma vez. Dependendo da condição de teste, em ambos os casos o bloco de comandos controlado poderá não ser executado. Respondido em 15/05/2020 17:44:13 Explicação: Falso. No do/while primeiro se faz o que está no corpodo loop para depois testar e no while, se testa para depois fazer o queestá no corpo do loop. Em termos de execução não há diferença. A diferença está, apenas, na sintaxe. Falso. No do/while o bloco de instruções será feito pelo menos 1 vez. No do...while, o bloco de comandos controlado poderá não ser executado. Enquanto que no while o bloco de comandos será sempre executado, pelo menos uma vez. Verdadeiro No while, o bloco de comandos controlado poderá não ser executado. Enquanto que no do...while o bloco de comandos controlado será sempre executado, pelo menos uma vez. Falso. No while pode não ser executado nenhuma vez. Dependendo da condição de teste, em ambos os casos o bloco de comandos controlado será sempre executado, pelo menos uma vez. Falso. No do/while as instruções serão feitas pelo menos 1 vez. Dependendo da condição de teste, em ambos os casos o bloco de comandos controlado poderá não ser executado 6a Questão Para que a palavra "AMOR" seja escrita na tela 5 vezes, qual condição apropriada deve ser colocada no trecho de código abaixo? Marque a opção correta. x = 1; while ( _________ ) { cout<<"AMOR \n"; x = x + 2; } x > 10 x <= 5 x < 5 x < 10 x <= 11 Respondido em 15/05/2020 17:45:17 Explicação: Analisando : x = 1; while ( _________ ) { cout<<"AMOR \n"; x = x + 2; } Note que x é um contador que é inicializado com 1 e que varia de 2 em 2. Logo, é preciso testar x < 10. Veja que entraremos no loop quando : x vale 1 x vale 3 x vale 5 x vale 7 x vale 9 E quando x for para 11, o teste do loop falhará. Então, teremos entrado 5 vezes no bloco do while. 7a Questão Assinale a alternativa correta em relação a quantidade de vezes que a palavra "PAZ" será impressa, no trecho de código abaixo: x = 50; do{ y = 8; do{ cout<<"PAZ \n"; y++; } while ( y <10); x--; }while ( x > 48); 8 vezes 5 vezes 4 vezes 7 vezes 6 vezes Respondido em 15/05/2020 17:46:31 Explicação: Analisando passo a passo o trecho dado : x = 50; do{ y = 8; do{ cout<<"PAZ \n"; y++; } while ( y <10); x--; } while ( x > 48); x y 50 8 49 9 48 (48 > 48 ? ) Falso 10 ... 10 < 10 ? FALSO 8 9 10 ... 10 < 10 ? Falso PAZ PAZ PAZ PAZ 8a Questão Comando de repetição é utilizado quando se deseja repetir determinados comandos. Marque a opção que representa o uso do comando while para implementar a estrutura de um contador corretamente. while (repita 10 vezes) { } while (if cont =10){ } String cont = ""; { cont++; } while (cont!="") int cont = 0; while (cont <=10){ cout << "exibindo o número " << cont; cont++; } while () { cout << "exibindo o número"; } Respondido em 15/05/2020 17:46:27 Explicação: A estrutura geral do while quando se usa contador no teste do loop é a seguinte : while ( < condição... teste lógico ... com o contador > ) { < comandos> alteração do contador } Analisando ... Falsa. Faltou a condição ou teste lógico ou variável que pode ser true ou false. while () { cout << "exibindo o número"; } Verdadeira. Pode se r encaixada na explicação no início. int cont = 0; while (cont <=10){ cout << "exibindo o número " << cont; cont++; } FAlsa. Não tem String em C++. Existe string, mas não String. Sintaxe incorreta no uso do while. String cont = ""; { cont++; } while (cont!="") Falsa. Sintaxe incorreta. Uso de repita sem sentido. while (repita 10 vezes) { } Falsa. Uso incorreto do if na parte relativa à condição do while. while (if cont =10){ } PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 8a aula Lupa PPT MP3 Exercício: CCE1950_EX_A8_201903308313_V1 15/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Se você desejasse escrever um programa em C++ que recebesse um número qualquer e exibisse a sua tabuada, precisaria da seguinte repetição: para (cont=0;cont<=10;cont++) { escreva(num," x ",cont," = ",cont*cont,"\n")} para (cont=0;cont<=10;num++) { escreva(num," x ",cont," = ",num*num,"\n")} para (cont=10;cont<=0;cont--) { escreva(num," x ",cont," = ",num*cont,"\n")} para (cont=10;cont<=0;cont++) { escreva(num," x ",cont," = ",num*5,"\n")} para (cont=0;cont<=10;cont++) { escreva(num," x ",cont," = ",num*cont,"\n")} Respondido em 15/05/2020 17:49:45 2a Questão Marque a opção correta. O que é impresso na tela ? int conta, x = 1, r = 1; for (conta = 2; conta >= 0; conta--) { r = r * x + 1; x += 2; cout << "r= " << r << " x = " << x << endl; } r = 3 x = 4 r = 8 x = 6 r = 37 x = 7 r = 3 x = 2 r = 5 x = 7 r = 2 x = 3 r = 7 x = 5 r = 2 x = 3 r = 7 x = 5 r = 36 x = 7 r = 36 x = 7 Respondido em 15/05/2020 17:50:07 Explicação: int conta, x = 1, r = 1; for (conta = 2; conta >= 0; conta--) { r = r * x + 1; x += 2; cout << "r= " << r << " x = " << x << endl; } conta conta >= 0 x r 2 sim 1 1 3 2 1 sim 5 7 0 sim 7 36 -1 TELA r = 2 x = 3 r = 7 x = 5 r = 36 x = 7 3a Questão Após a execução do trecho de código, abaixo, quais números serão exibidos na tela? for(int i=3; i<100; i=i+19) cout << " " << i; 3 23 40 60 79 98 3 23 42 61 80 99 3 22 41 60 79 99 3 22 41 60 79 98 3 22 41 59 79 98 Respondido em 15/05/2020 17:50:16 Explicação: Considerando o trecho for(int i = 3; i<100; i = i+19) cout << " " << i; fazendo passo a passo : i i < 100 ? 3 3 < 100 ? Sim 3+ 19 é 22 22 < 100 ? Sim 22+ 19 é 41 41 < 100 ? Sim 41 + 19 é 60 60 < 100 ? sim 60 + 19 é 79 79 < 100 ? sim 79 + 19 é 98 98 < 100 ? sim 98 + 19 é 117 117 < 100 ? falsa. Então não entra no loop TELA 3 22 41 60 79 98 4a Questão Marque a opção correta. Considere o trecho de programa feito em C++. O valor final de s e o valor final de num, são respectivamente: int conta, num=1, s=0; for(conta = 10; conta < = 40; conta= conta+10){ s= s+num; num= num +2; } 9 e 9 o valor de s está indefinido e o valor de num é 7 50 e 9 50 e 16 16 e 9 Respondido em 15/05/2020 17:50:53 Explicação: Acompanhe o teste de mesa : num s conta conta <= 10 ? 1 0 10 sim 3 1 20 sim 5 4 30 sim 7 9 40 sim 9 16 50 não Logo, s vale 16 e num vale 9 5a Questão O que o trecho de programa em C++ abaixo imprime na tela ? int y; for (y = 5; y > 0; y--) if (y % 2 == 0) cout << y - 1 << " "; else cout << y + 1 << " "; 6 3 4 1 1 5 6 3 2 1 6 3 4 1 2 5 4 3 2 1 6 5 3 2 1 Respondido em 15/05/2020 17:51:25 Explicação: FAzer teste de mesa. A cada rodada do loop atribuir um valor a y e testar se o valor de y é par. Se for par, deverá ser impresso o valor do antecessor de y. Caso contrário, deverá ser impresso o valor do sucessor de y. 6a Questão Considere a estrutura for ( ; ; ), e assinale a afirmação correta: Não é executada pois não tem incremento. Tem a sintaxe incorreta. Não é executada, pois não tem variável. É um laço infinito. Não é executada, pois não tem condição de teste. Respondido em 15/05/2020 17:51:37 Explicação: Verdadeiro É um laço infinito. Falso. É possível para loops infinitos ou quase infinitosTem a sintaxe incorreta. FAlso. É possível para loops infinitos ou quase infinitos Não é executada, pois não tem variável. Falso. O teste pode ser feito dentro do for. Não é executada, pois não tem condição de teste. Falso. O incremento pode ser posto dentro do for. Não é executada pois não tem incremento. 7a Questão Observe o trecho de código a seguir: Sobre ele, podemos afirmar que: I. A estrutura de repetição escolhida costuma ser utilizada quando se sabe quantas repetições serão feitas; II. A cada passada pela estrutura repetitiva, o contador será incrementado em duas unidades; III. Para que o sexo seja contado, será necessário que o usuário digite tanto "F" quanto "f". Somente a afirmativa III é verdadeira. As afirmativas I e II são verdadeiras. As afirmativas I, II e III são verdadeiras. Somente a afirmativa I é verdadeira. As afirmativas I e III são verdadeiras. Respondido em 15/05/2020 17:52:12 8a Questão Analise o trecho do código abaixo, e indique a saída obtida se for lido o valor 5 para n: cin>>n; total=0; for (i=15; i>n; i-=2) { total+=i; } cout < < total;<total;< p=""> </total;<> 48 60 39 55 63 Respondido em 15/05/2020 17:52:10 Explicação: Considerando o trecho e n sendo 5 : cin>>n; total=0; for (i=15; i>n; i-=2) { total+=i; } cout < < total; temos o teste de mesa : n total i 5 0 15 0 + 15 que é 15 13 15 + 13 que é 28 11 28 + 11 que é 39 9 39 + 9 que é 48 7 48 + 7 que é 55 5 ( 5 > 5 dá falso) Logo, total é 55 PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 9a aula Lupa PPT MP3 Exercício: CCE1950_EX_A9_201903308313_V1 15/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Você deseja armazenar na variável SOMA a adição entre todos os elementos de um vetor com 10 número reais chamado NUM. O trecho de código que apresenta a estrutura repetitiva que permite que isso seja feito é: for (i=1;i<=10;i++) { SOMA+=NUM[i]; } for (i=0;i=9;i++) { SOMA=NUM[i] } for (i=0;i<=9;i++) { SOMA+=NUM[i]; } for (i=0;i<=9;i++) { SOMA=SOMA[i]+NUM } for (i=0;i<=9) { SOMA=NUM[i]; } Respondido em 15/05/2020 17:53:51 2a Questão Qual estrutura de repetição abaixo preenche corretamente um vetor de 30 posições com 0 (zero) em cada uma das posições? for(int i=1;i<30;i++){ vetor[i] = 0; } for(int i=0;i<30;i++){ vetor[i] = 0; } for(int i=0;i<30;i++){ vetor[i] == 0; } for(int i=0;i<=30;i++){ vetor[i] = 0; } for(int i=1;i<=30;i++){ vetor[i] = 0; } Respondido em 15/05/2020 17:54:03 Explicação: for(int i=0;i<30;i++) { vetor[i] = 0; } Falso. Está acessando v[30], o que é incorreto. for(int i=0;i<=30;i++) { vetor[i] = 0; } FAlso. Está iniciando i de 1 e não de zero. for(int i=1;i<30;i++) { vetor[i] = 0; } FAlso. Está iniciando i de 1 e não de zero e está acessando v[30], o que é incorreto. for(int i=1;i<=30;i++) { vetor[i] = 0; } Falso. O erro está dentro do bloco do for. Está usando == e não a atribuição como deveria. PAra atibuir, use =. for(int i=0;i<30;i++) { vetor[i] == 0; } 3a Questão Um vetor é uma estrutura _____________ e _____________ para armazenamento de um _____________ que deve ser _____________. unidimensional - homogênea - conjunto de valores - do mesmo tipo unidimensional - heterogênea - único valor - de tipos variados bidimensional - heterogênea - conjunto de valores - do mesmo tipo bidimensional - homogênea - único valor - do mesmo tipo unidimensional - homogênea - único valor - de tipos variados Respondido em 15/05/2020 17:54:40 4a Questão Observe as declarações abaixo e assinale a opção correta. I int idades[]={5,16,27,19}; II float CR[3]={6.1, 8.9, 9.3}; III char letras[]={"A", "E", "I", "O", "U"}; IV char letras[]={"ALGORITMOS"}; As declarações I , II e IV estão corretas As declarações I , II e III estão corretas As declarações III e IV estão erradas A declaração I está errada e a declaração II está correta Somente as declarações I e II estão corretas Respondido em 15/05/2020 17:54:49 Explicação: A afirmativa III está incorreta porque cada caracter deve estar entre aspas simples e não duplas. 5a Questão Imagine que um dado é lançado 20 vezes e, a cada lançamento, a face sorteada é lançada em um vetor denominado sorteios. Considerando que você precisa escrever um algoritmo conforme a sintaxe do Portugol Studio que, ao final dos sorteios, informe quantas vezes cada face ímpar foi sorteada, qual das estruturas repetitivas a seguir voce utilizaria para contar a quantidade de sorteios nos quais cada uma das faces ímpares saiu? para (ind=0;ind<=20;ind++) { escolha (sorteios) { caso 1: cont1++ pare caso 3: cont3++ pare caso 5: cont5++ pare } } para (ind=0;ind<=19;ind++) { escolha (sorteios[ind]) { caso 1: cont1++ pare caso 3: cont3++ pare caso 5: cont5++ pare } } para (ind=0;ind<=19;ind--) { escolha (sorteios[ind]) { caso 1: cont1-- pare caso 3: cont3-- pare caso 5: cont5-- pare } } para (ind=10;ind<=20;ind++) { escolha (sorteios[ind]) { caso 1,3,5,7,9: cont1++ pare default: pare } } para (ind=0;ind<=19;ind++) { escolha (sorteios[ind,ind]) { caso 1: cont++ pare caso 3: cont++ pare caso 5: cont++ pare } } Respondido em 15/05/2020 17:54:47 6a Questão Suponha que em um programa em C/C++ se deseje armazenar 15 valores decimais em um vetor LISTA. Assinale a declaração correta: int LISTA[16]; float LISTA[15]; float lista[15]; float lista[16]; int lista[15]; Respondido em 15/05/2020 17:55:41 Explicação: Verdadeira float LISTA[15]; Falso. É 15 e não 16. Além disso, deve-se usar float ou double e não int. int LISTA[16]; Falso. É 15 e não 16. float lista[16]; FAlso. Deve-se usar float ou double e não int. int lista[15]; Falso. O nome do vetor dado no enunciado é LISTA e não lista. float lista[15]; 7a Questão Considere que um casal de amigos está brincando de par ou ímpar. Você precisa escrever um algoritmo que, a cada uma das 10 jogadas que farão, armazene nos vetores jogadasA e jogadasB o número escolhido pelo jogador A (que é par) e o número escolhido pelo jogador B (que é ímpar), respectivamente. Precisa informar, também a cada jogada, o jogador vencedor. O trecho que avaliaria a soma dos números escolhidos por cada amigo e decidiria quem venceu a rodada seria: total=jogadasA[ind]+jogadasB[ind] se (total%2==0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total=jogadasA+jogadasB se (total%2==0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total=jogadasA[ind]+jogadasB[ind] escolha (total%2==0) { escreva("Jogador A venceu!\n") } outros casos { escreva("Jogador B venceu!\n") } total=[ind]+jogadasB se (total%2>=0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total++ se (total%2!=0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } Respondido em 15/05/2020 17:56:09 8a Questão <valor[x]; </valor[x]; Todos os elementos do vetor VALOR. Todos os elementos que são menores que cinco do vetor VALOR. Todos os elementos ímpares do vetor VALOR. Todos os elementos pares do vetor VALOR. Todos os elementos que são maioresque cinco do vetor VALOR. Respondido em 15/05/2020 17:56:15 Explicação: Analisando o trecho dado em C++, temos o seguinte : x é índice do vetor VALOR e é inicializado com zero. x irá de zero até 10, mas só entrará no loop até valer 9. PAra cada x de 0 até 9 entraremos no loop e testaremos se o elemento de VALOR de índice x é maior que 5. Se for, tal elemento será impresso na tela. Se não for, nada faremos. Olhando para o vetor VALOR temos que serão impressos os valores de 6 até 10. Analisando cada opção : Falso. Serão impressos valores ímpares também. Todos os elementos pares do vetor VALOR. Falso. Serão impressos valores pares também. Todos os elementos ímpares do vetor VALOR. Falso. Serão impressos valores maiores que 5. Todos os elementos que são menores que cinco do vetor VALOR. Todos os elementos que são maiores que cinco do vetor VALOR. Falso. Serão impressos apenas os valores 6, 7, 8, 9 e 10 Todos os elementos do vetor VALOR. PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 10a aula Lupa PPT MP3 Exercício: CCE1950_EX_A10_201903308313_V1 15/05/2020 Aluno(a): EDER LUIZ MADEIRA BAIRROS 2020.1 - F Disciplina: CCE1950 - PROGRAMAÇÃO APLICADA À SISTEMAS ELÉTRICOS 201903308313 1a Questão Imagine que você precisa escrever um algoritmo que receba uma matriz 4x4 de números inteiros, gere e exiba uma segunda matriz na qual as linhas são as colunas da matriz 1, e as colunas são as linhas da matriz 1. Qual das alternativas a seguir apresenta o código da estrutura de repetição que recebe os elementos da primeira matriz e gera a segunda? para (lin=0;lin<=3;lin++) { para (col=0;col<=3;col++) { escreva(M2[lin][col]," ") } } para (lin=0;lin<=3;lin++) { para (col=0;col<=3;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) M2[col][lin]=M1[lin][col] } } para (lin=0;lin<=3;lin++) { para (col=0;col<=3;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) M2[lin][col]=M1[lin][col] } } enquanto (lin=0;lin<=3;lin++) { enquanto (col=0;col<=3;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) M2[col][lin]=M1[lin][col] } } para (lin=0;lin<=3;lin++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][lin]) M2[lin][lin]=M1[lin][lin] } Respondido em 15/05/2020 17:57:48 2a Questão Em uma aplicação em C/C++, a matriz ESTOQUE [3][4] armazena a quantidade estocada de 3 produtos no último quadrimestre (4 meses). Para obter o total estocado no primeiro mês do quadrimestre, o programa deverá: Somar todas as linhas da coluna índice 0. Somar todas as colunas da linha índice 1 Somar todas as linhas de todas as colunas. Somar todas as colunas da linha índice 0. Somar todas as linhas da coluna índice 1. Respondido em 15/05/2020 17:57:48 Explicação: Em cada linha se tem os preços de um produto. Em cada coluna de uma linha se tem o preço em cada mês do produto. Daí, a resposta ser a indicada no gabarito. 3a Questão Na codificação de um programa, na linguagem C++, é necessário a declaração de uma matriz bidimensional para armazenar as notas de 6 disciplinas de uma turma com 30 alunos. Tomando-se como base que o algoritmo considera que os dados estarão organizados na matriz de modo que cada linha represente as notas de um único aluno, marque a alternativa que apresenta de forma correta a declaração desta matriz, chamada notasAlunos. c) float notasAlunos[30,6]; a) float notasAlunos[30][6]; e) float notasAlunos[][]; b) float notasAlunos[6][30]; d) float notasAlunos[6,30]; Respondido em 15/05/2020 17:58:00 Explicação: A especificação de uma matriz segue a sintaxe: tipo [qtd linhas][qtd colunas]; Como são 30 alunos, cada um terá uma linha e para as 6 notas, cada uma terá uma coluna. Temos então: float notasAlunos[30][6]; 4a Questão Observe a matriz: A R E S E U Q E O T S I Qual será o resultado obtido após ser executado o trecho do algoritmo a seguir: for (i = 0; i < 4; i ++) for ( j = 0; j < 2; j++) { aux = mat[i][j]; mat[i][j] = mat[i][3-j]; mat[[i][3 - j] = aux; } S E R A Q U E E I S T O S E R A Q U E E I S T O S E R A Q U E E I S T O S E R A Q U E E I S T O S E R A Q U E E I S T O Respondido em 15/05/2020 17:58:40 Explicação: Conforme gabarito e aula de matrizes, consciente que o índice da linha começa de zero e o da coluna também. O papel da variavel aux é permitir a troca dos valores da matriz. 5a Questão Considere os seguintes valores de entrada: 1, 2, 3, 4, 5, 6, 7, 8 e 9 e ainda, o programa abaixo. Marque a resposta que mostra o que será exibido na tela. #include < iostream > using namespace std; int main() { int lin, col, mat[3][3]; for (lin=0; lin<3; lin++) for(col=0; col<3; col++) { cout<< "\nEntre com o elemento da matriz:"; cin>> mat[lin][col]; } for (lin=0; lin<3; lin++) cout << mat[lin][lin]<<"\n"; system("pause"); return 0; } 1 5 9 1 3 5 7 9 2 4 6 8 1 2 3 1 2 3 4 5 6 7 8 9 Respondido em 15/05/2020 17:58:53 Explicação: Considerando a entrada 1, 2, 3, 4, 5, 6, 7, 8 e 9 e o trecho do programa abaixo, veja o comentado ao fim de cada trecho. int lin, col, mat[3][3]; for (lin=0; lin<3; lin++) for(col=0; col<3; col++) { cout<< "\nEntre com o elemento da matriz:"; cin>> mat[lin][col]; } O trecho acima montará a matriz com 3 linhas e 3 colunas, a saber : 1 2 3 4 5 6 7 8 9 Já o trecho a seguir : for (lin=0; lin<3; lin++) cout << mat[lin][lin]<<"\n"; imprimirá os elementos da matriz em que a linha e a coluna são iguais. Ou seja, imprimirá os elementos da diagonal principal, que estão destacados em amarelo. 1 2 3 4 5 6 7 8 9 Impressos : 1 5 9 6a Questão Considere as regras do Portugol Studio e imagine que você precisa escrever um algoritmo que receba uma matriz 3x2 e exiba a quantidade de elementos ímpares armazenados nas linhas pares. A estrutura de repetição capaz de realizar o recebimento dos elementos da matriz M1 e a contagem descrita é: para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1) se (lin%2){ se (M1%2!=0) { qtdeImpares++ } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2!=0){ se (M1[lin][col]%2!=0) { qtdeImpares++ } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2==0){ se (M1[lin][col]%2!=0) { qtdeImpares-- } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2==0){ se (M1[lin][col]%2!=0) { qtdeImpares++ } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2==0){ se (M1[lin][col]%2==0) { qtdeImpares++ } } } } Respondido em 15/05/2020 17:59:28 7a Questão Se você precisar escrever um programa em C++ que receba uma matriz de elementos inteiros dispostos em 3 linhas e 4colunas e exiba a quantidade de números múltiplos de 5 armazenados na matriz vai precisar de Duas estruturas seletivas: uma controlando as linhas e variando de 1 a 5, e outra controlando as colunas e variando de 1 a 3. Duas estruturas seletivas: uma controlando as linhas e variando de 0 a 2, e outra controlando as colunas e variando de 0 a 3. Duas estruturas seletivas: uma controlando as linhas e variando de 0 a 2, e outra controlando os múltiplos de 5 e variando de 0 a 5 . Duas estruturas repetitivas: uma controlando as linhas e variando de 0 a 2, e outra controlando os múltiplos de 5 e variando de 0 a 5 . Duas estruturas repetitivas: uma controlando as linhas e variando de 0 a 2, e outra controlando as colunas e variando de 0 a 3. Respondido em 15/05/2020 17:59:47 8a Questão Analise o código em C++ mostrado abaixo e assinale a alternativa que descreve corretamente a sua execução: #include < iostream > using namespace std; int main() { int p, num[50]; for (p = 0; p <= 49; p++) { cout << "Digite um valor : "; cin >> num[p]; } for (p = 0; p <= 49; p++) { if (num[p] % 2 == 0 && num[p] > 30) cout << num[p] << "\t"; } system("pause"); return 0; } O código armazenará em um vetor 50 números inteiros e imprimirá somente os números ímpares e que sejam maiores que 30. O código armazenará em um vetor 50 números inteiros e imprimirá todos os 50 números. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam menores que 30. O código armazenará em um vetor 50 números inteiros e imprimirá todos os números que sejam maiores que 30. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam maiores que 30. Respondido em 15/05/2020 17:59:39 Explicação: Analisando o programa temos que : O 1o. for lê valores inteiros e os armazena em um vetor com capacidade para 30 elementos. Depois, no 2o. for, testa cada elemento do vetor e verifica se é par e se é maior que 30. Apenas satisfazendo as 2 condições é que o elemento de v será impresso. Analisando cada opção : O código armazenará em um vetor 50 números inteiros e imprimirá todos os 50 números. é falso. Nâo imprime todos os números O código armazenará em um vetor 50 números inteiros e imprimirá todos os números que sejam maiores que 30. é falso. Tem que ser par e maior que 30 para ser impresso. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números ímpares e que sejam maiores que 30. é falso. Imprime os pares maiores que 30 e não os ímpares. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam menores que 30. é falso. Tem que ser par e maior que 30 para ser impresso. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam maiores que 30. Verdadeira
Compartilhar