Baixe o app para aproveitar ainda mais
Prévia do material em texto
das A Gabarito utoatividades LÓGICA E TÉCNICAS DE PROGRAMAÇÃO Prof. Anderson Emídio De Macedo Gonçalves Prof.ª Veronice De Freitas 3UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O GABARITO DAS AUTOATIVIDADES DE LÓGICA E TÉCNICAS DE PROGRAMAÇÃO UNIDADE 1 SEÇÃO 01 1 Quais das sentenças abaixo são proposições? a) (x) A lua é feita de queijo verde. b) (x) Dois é um número primo. c) ( ) O jogo vai acabar logo? d) (x) X2 - 4 = 0. 2 Determinar o valor lógico de cada uma das seguintes proposições: a) (F) Tiradentes morreu afogado. b) (V) As diagonais de um paralelogramo são iguais. c) (V) O número 125 é cubo perfeito. d) (V) O produto de dois números ímpares é um número ímpar. 3 Determinar o valor lógico (V ou F) de cada uma das seguintes proposições. a) (F) Goiânia é a capital de Tocantins. b) (V) O número 25 é quadrado perfeito. c) (F) Todo número divisível por 5 termina com 5. 4 Determine se as proposições são Simples (S) ou Compostas (C): a) (c) Maria estuda e trabalha. b) (s) Mário é feio. c) (s) 3 é um número ímpar. d) (c) Márcia é jogadora ou estudante. e) (c) Paulo é rico e feliz. f) (s) 32 é múltiplo de 4. g) (s) Paris é a capital da França. h) (c) Pedro é estudioso e Maria é bonita. i) (c) Celso é pobre, então é infeliz. j) (s) João é velho. 4 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O k) (c) Ou Carla vai à festa, ou fica em casa. l) (s) 13 é número e primo. 5 Marque as sentenças abaixo que são proposições simples ou compostas. Para as sentenças que não são proposições, explique porque não são: a) (s) João é alto. b) (s) Ela é bonita. c) (s) A casa é pequena. d) ( ) Quem está batendo à porta? (Pergunta) e) ( ) Talvez eu vá ao teatro. (Possibilidade) f) (s) 2 + 2 = 4 g) (s) x + y = 8 h) (s) O planeta Marte é habitado. i) ( ) Possivelmente choverá hoje. (Não é) SEÇÃO 02 1 Dê a negação das seguintes proposições: a) O processador é rápido, mas a impressora é lenta. R.: O processador não é rápido, mas a impressora não é lenta. b) O processador é rápido ou a impressora é lenta. R.: Não é verdade que o processador é rápido ou a impressora é lenta c) Pepinos são verdes e não têm sementes. R.: Pepinos não são verdes e não é verdade que não têm sementes. d) A comida é boa ou o serviço é excelente. R.: Não é verdade que a comida é boa ou o serviço é excelente. e) Nem a comida é boa, nem o serviço é excelente. R.: Não é verdade que nem a comida é boa e nem o serviço é excelente. 5UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 2 Dê o valor verdade das proposições abaixo: a) Se a Lua é um satélite, então a terra é um planeta. (V) b) Um corpo celeste não é um satélite se gira em torno de um planeta. (F) c) Se Lilo é um gato, então tem quatro patas. (Considere que existe um gato chamado Lilo). (V) d) Se a Terra é uma estrela, então a Lua é um planeta. (V) 3 Dê o valor verdade das seguintes proposições: a) Amarelo será preto se, e somente se, vermelho for branco. (V) b) 3 + 4 = 7 se, e somente se, 8 x 5 = 50. (V) c) 1 + 1 = 4 se, e somente se, 7 + 3 = 10. (F) d) Azul não é verde se, e somente se, preto for lilás. (F) e) Não é verdade que 1 + 1 = 3 se, e somente se, 2 + 2 = 5. (F) 4 Sejam as proposições: p: Marcos é alto e q: Marcos é elegante. Traduzir para a linguagem simbólica as proposições abaixo: a) Marcos é alto e elegante. R.: p ^ q b) Marcos é alto, mas não é elegante. R.: p ^ ~q c) Não é verdade que Marcos é baixo ou elegante. R.: ~(p v q) d) Marcos não é nem alto e nem elegante. R.: ~p ^~q e) Marcos é alto ou é baixo e elegante R.: p v (~p ^ q) 5 Sejam as proposições p e q, traduzir para a linguagem simbólica as seguintes proposições: 6 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O a) Carlos é alto e elegante. R.: p ^ q b) Carlos é alto, mas não é elegante. R.: p ^ ~q c) Não é verdade que Carlos é baixo ou elegante. R.: ~(~p v q) d) Carlos não é nem alto e nem elegante. R.: ~(p v q) e) Carlos é alto ou é baixo e elegante. R.: p v (~p ^ q) f) É falso que Carlos é baixo ou que não é elegante. R.: ~(~p v ~q) 6 Sejam as proposições p e q, traduzir para a linguagem simbólica as seguintes proposições: p: Paula é rica e q: Paula é feliz. a) Paula é pobre, mas feliz. R.: ~q ^ q b) Paula é rica ou infeliz. R.: p v ~q c) Paula é pobre e infeliz. R.: ~q ^ ~q d) Paulo é pobre ou rica, mas infeliz. R.: ~p v (p ^ ~q) 7 Sejam as proposições p, q e r, traduzir para a linguagem simbólica as seguintes proposições: 7UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O p: Felipe fala francês e q: Felipe fala inglês e r: Felipe fala alemão. a) Felipe fala francês ou inglês, mas não fala alemão. R.: p v (q ^ ~r) b) Felipe fala francês e inglês, ou não fala francês e alemão. R.: (p ^ q) v ~(p ^ q) c) É falso que Felipe fala francês, mas que não fala alemão. R.: ~(p ^ ~r) d) É falso que Felipe fala inglês ou alemão, mas que não fala francês. R.: ~(q v (r ^ ~p) ) 8 Sejam as proposições p e q, traduzir para a linguagem corrente as seguintes proposições: p: Está frio e q: Está Chovendo. a) ~p R.: Não está frio. b) p ^ q R.: Está frio e está chovendo. c) p v q R.: Está frio ou está chovendo. d) q ↔ p R.: Está chovendo se e somente se estiver frio. e) p → ~q R.: Se está frio então não está chovendo. f) p v ~q R.: Está frio ou não está chovendo. g) ~p ^ ~q R.: Não está frio e nem chovendo. h) p ↔ ~q R.: Está frio se e somente se não estiver chovendo. i) p ^ ~q → p R.: Se está frio e não está chovendo, então está frio. 9) Sejam as proposições p e q, traduzir para a linguagem corrente as seguintes proposições: p: Eduardo é rico e q: Murilo é feliz. 8 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 10 Sejam as proposições p e q, traduzir para a linguagem corrente as seguintes proposições: p: Roberto fala inglês e q: Roberto fala alemão. a) q v p R.: Roberto fala inglês ou alemão. b) p ^ q R.: Roberto fala alemão e inglês. c) p ^ ~q R.: Roberto fala inglês e não fala alemão. d) ~p ^ ~q R.: Roberto não fala inglês nem alemão. e) ~(~p ^ ~q) R.: Não é verdade que Roberto não fala alemão ou inglês 11 Sejam as proposições p e q, traduzir para a linguagem corrente as seguintes proposições: p: Matheus é gaúcho e q: Thiago é paulista. a) ~(~p ^ ~q) R.: Não é verdade que Matheus não é gaúcho e Thiago não é paulista. b) ~(~p v ~q) R.: Não é verdade que Matheus não é gaúcho ou Thiago não é paulista. c) p → ~q R.: Se Matheus é gaúcho, então Thiago não é paulista. d) ~p → ~q ] R.: Se Matheus não é gaúcho, então Thiago não é paulista 12 Sejam as seguintes proposições simples: p: “Tiradentes morreu afogado” e q: “Jaime é gaúcho”. Traduzir para linguagem natural as seguintes proposições compostas: a) p ∧ q R.: Tiradentes morreu afogado e Jaime é gaúcho. a) q → p R.: Se Eduardo é rico, então Murilo é feliz. b) p v ~q R.: Eduardo é rico ou Murilo não é feliz c) q ↔ ~p R.: Murilo é feliz se e somente se Eduardo não é rico. d) ~p → q R.: Se Eduardo não é rico, entao Murilo é feliz e) ~p ^ q → p R.: Se Eduardo não é rico e Murilo é feliz, então Eduardo é rico. 9UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O b) p → q R.: Se Tiradentes morreu afogado, então Jaime é gaúcho. c) ~p ∧ q R.: Tiradentes não morreu afogado ou Jaime é gaúcho. 13 Sejam as proposições: p: João joga futebol. q: Pedro joga tênis. Traduzir as fórmulas lógicas para o português. a) p ∨ q R.: João joga futebol ou Pedro joga tênis. b) p ∧ q R.: João joga futebole Pedro joga tênis. c) p ∧ ~q R.: João joga futebol e Pedro não joga tênis. d) p → ~q R.: Se João joga futebol, então Pedro não joga tênis. e) ~p ∧ ~q R.: João não joga futebol e Pedro não joga tênis. f) ~p ↔ ~q R.: João não joga futebol se e somente se Pedro não joga tênis. 14 Sejam as proposições: p: A bola é vermelha. q: O bambolê é amarelo. Traduzir as fórmulas lógicas para o português. a) p ∨ q R.: A bola é vermelha o u o b a m b o l ê é amarelo. b) p ∨ q R.: A bola é vermelha e o bambolê é amarelo. c) p ∨ ~q R.: A bola é vermelha e o bambolê não é amarelo. d) ~p ∨ ~q R. : A bo la não é vermelha e o bambolê não é amarelo. e) ~p ↔ ~q R. : A bo la não é vermelha se e somente se o bambolê não é amarelo. 15 Considere as proposições: p: Está frio e q: Está chovendo. Traduza para a linguagem corrente as seguintes proposições apresentadas na linguagem simbólica: 10 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O a) ~p R.: Não está frio. b) p Λ q R.: Está frio ou está chovendo. c) p v q R.: Está frio ou está chovendo. d) q p (sem resposta) e ) p ~ q ( s e m resposta) f) p v ~q R.: Está frio ou não está chovendo. g) ~p Λ ~q R.: Não está frio e não está chovendo. h) p ~q (sem resposta) 16 Considere as proposições: p: Está frio e q: Está chovendo. Traduza para a linguagem corrente as seguintes proposições: a) p v ~q R.: Está frio ou não está chovendo. b) p → q R.: Se está frio, então está chovendo. c) ~p ^ ~q R.: Não está frio nem chovendo. d) p ↔ ~q R.: Está frio se e somente se não está chovendo. e) (p v ~q) ↔ (q ^~p) R.: Está frio ou não está chovendo se e s o m e n t e s e e s t á chovendo e não está frio. SEÇÃO 03 1 Construa a tabela-verdade para as proposições abaixo: a) p ↔ ~q p q ~q p ↔ ~q V V F F V F V V F V F V F F V F 11UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O b) ~p v q p q ~p ~p v q V V F V V F F F F V V V F F V V c) (p ^ q) → ~(p v q) p q p ^ q p v q ~(p v q) (p ^ q) → ~(p v q) V V V V F F V F F V F V F V F V F V F F F F V V d) (p ^ q) ↔ (p v r) p q r p ^ q p v r (p ^ q) ↔ (p v r) V V V V V F V V F V V V V F V F V V V F F F V F F V V F V F F V F F F V F F V F V F F F F F F V 2 Construa a tabela-verdade de cada uma das seguintes proposições: a) p ∨ q ∨ p b) p ∧ q ∨ p f) p ∨ (~p ∧ ~q) g) ~p ∧ q ↔ ~q → p c) p ∧ ~q d) ~p ∧ ~q 12 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O a) p q ~q p ↔ ~q V V F F V F V V F V F V F F V F b) p q p ^ q p ∧ q ∨ p V V V F V F F F F V F V F F F F c) p ∧ ~q p q ~q p ∧ ~q V V F F V F V V F V F F F F V F d) ~p ∧ ~q p q ~q ~p ~p ∧ ~q V V F F F V F V F F F V F V F F F V V V e) p ∨ (~p ∧ ~q) p q ~p ~q ~p ∧ ~q p ∨ (~p ∧ ~q) V V F F F V V F F V F V F V V F F F F F V V V V 13UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O f) ~p ∧ q ↔ ~q → p p q ∼p∧q↔∼q→p V V F V F F F V V F F V 3 Construir as tabelas-verdade das seguintes proposições: a) ~ p ∧ r → q ∨ ~ r b) p → (p → ~ r) ↔ q ∨ r c) p → r ↔ q ∨ ~ r d) (p ∧ q → r) ∨ (~ p ↔ q ∨ ~ r) a) p r q ∼p∧r→q∨∼r V V V V V V F V V F V V F V V V F F V V F V F F V F F V F F F V b) p q r p→(p→∼r)↔q∨r V V V V V V F V V F V V F V V V F F V V F V F V V F F F F F F F 14 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O c) p q r p→r↔q∨∼r V V V V V V F F V F V V F V V V F F V V F V F F V F F V F F F V d) p q r (p∧q→r)∨(∼p↔q∨∼r) V V V V V V F V V F V V F V V V F F V V F V F V V F F V F F F V 15UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O SEÇÃO 04 1 Exercícios - Tautologia: Preencha as tabelas a seguir: a) P(p) = ~(p ˄ ~p) Tabela da Verdade: p ~q p ˄ ~p ~(p ˄ ~p) V V F V F F F V b) P(p, q) = p ˅ ~(p ˄ q) Tabela da Verdade: p q p ˄ q ~(p ˄ q) p ˅ ~(p ˄ q) V V V F V V F F V V F V F V V F F F V V 2 Exercícios - Contradição: Preencha as tabelas abaixo: a) P(p) = p ˄ ~p Tabela da Verdade: p ~p p ˄ ~p V F F F V F b) P(p, q) = ~p ˄ (p ˄ ~q) Tabela da Verdade: p q ~p ~q p ˄ ~q ~p ˄ (p ˄ ~q) V V F F F F V F F V V F F V V F F F F F V V F F 16 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 3 Exercícios - Contingência: Preencha as tabelas abaixo: a) P(p) = p → ~p Tabela da Verdade: p ~p p → ~p V F F F V V b) P(p, q) = p ˅ q → p Tabela da Verdade: p q p ˅ q p ˅ q → p V V V V V F V V F V V F F F F V 4 Definir as proposições abaixo como Tautologias, Contradições ou Contingências: a) (p → q) ˄ p → q R.: Tautologia. b) p ˅ q → p ˄ q R.: Contingência. c) (p → q) → (p ˄ r → q) R.: Tautologia. 5 Mostre que as equivalências são verdadeiras. 17UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O a) (p ∧ q → r) (p → (q → r)) é: _____________________________ p q r p ∧ q p ∧ q → r q → r p→(q → r) (p ∧ q → r) ↔ (p → (q → r)) 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 b) p ↔ q (p ∧ q) v (~ p∧ ~ q) é: ____________________________ p q p ↔ q p ∧ q ~ p ~ q ~ p∧ ~ q (p ∧ q) v (~ p∧ ~ q) 1 1 0 0 0 0 1 1 6 Quais das proposições abaixo são tautologias (verdadeiras), quais são contradições (logicamente falsas) e quais não são nem tautologias nem contradições? a) (p ∧ q) v (~ p∧ ~ q) R.: Contingência. b) ~(p∧ ~ q) R.: Contingência. c) p → (p → q) R.: Contingência. d) (p v q) → ((p∧ ~q) v (~p ∧ q)) R.: Contingência. 18 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O ATIVIDADES DE APRENDIZAGEM DA UNIDADE 1 1) Sejam as proposições: p: Marcos é alto e q: Marcos é elegante. Traduzir para a linguagem simbólica as seguintes proposições: a) Marcos é alto e elegante. R.: p^q b) Marcos é alto, mas não é elegante. R.: p^~q c) Não é verdade que Marcos é baixo e elegante. R.: ~(~p^q) d) Marcos é alto ou é baixo e elegante. R.: p v(~p^q) e) Marcos não é nem alto e nem elegante. R.: ~p^~q f) É falso que Marcos é baixo ou que não é elegante. R.: ~(~pv~q) 2) Dadas as proposições: p: Adriana é bonita. q: Adriana é inteligente. Escrever na linguagem simbólica as seguintes proposições: a) Adriana é bonita e inteligente. p^q b) Adriana é bonita, mas não inteligente. p ^~q c) Não é verdade que Adriana não é bonita ou inteligente.~(~pvq) d) Adriana não é bonita nem inteligente.~p^~q e) Adriana é bonita ou não é bonita e inteligente. pv(~p^q) f) É falso que Adriana não é bonita ou que não é inteligente.~(~pv~q) 3) Sejam as proposições: p: Está frio. q: Está chovendo. 19UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Traduzir para a linguagem corrente as seguintes proposições: a) ~ p R . : n ã o e s t á chovendo. b) p ∧ q R.: está fr io e chovendo. c) p v q R.: está frio ou chovendo. d) q ↔ p R.: está chovendo se e somente se estiver frio. e) ~ p ∧ ~ q R.: não está frio e nem chovendo. f) p → ~ q R.: se está frio, então não está chovendo. g) p ↔ ~q R.: está frio se e somente se não estiver chovendo. h) p v ~ q R.: está frio ou não está chovendo. i) p ∧ ~ q → p R.: está frio e, se não estiver chovendo, então está frio. 4) Sejam as proposições: p: Jorge é rico. q: Carlos é feliz. Traduzir para linguagem corrente as seguintes proposições: a) p v q R.: Jorge é rico ou Carlos é feliz. b) p ∧ q R.: Jorge é rico e Carlos é feliz. c) p ∧ ~ q R.: Jorge é rico e Carlos não é feliz. d) ~ p ∧ ~q R.: Jorge não é rico e Carlos não é feliz. 5) Verificar se as proposições a seguir são tautologias: a) p v ~(p ^ q) R.: Tautologia. b) p ^ q → (p ↔ q) R.: Tautologia. c) p v (q ^ ~q) ↔ p R.: Tautologia. d)p ^ r → ~q v r R.: Tautologia. 6) Determine quais proposições são tautologias, contradições ou contingências: 20 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O a) (p → p) v (p → ~p) R.: Tautologia. b) (p → q) ^ p → q R.: Tautologia. c) p → (q → (q → p)) R.: Tautologia. d) ~p v q → (p → q) R.: Tautologia. e) p → (p → q ^ ~q) R.: Contingência. f) (p ^ q → r) ↔ (p → (q → r)) R.: Tautologia. 7) Determinar o valor lógico de P em cada um dos casos abaixo, considerando a informação fornecida. a) Q é falsa e P ̂ Q é falsa. (V ou F) b) Q é falsa e P v Q é falsa. (F) c) Q é falsa e P → Q é falsa. (V) d) Q é falsa e P → Q é verdadeira. (F) e) Q é falsa e P ↔ Q é verdadeira. (F) f) Q é verdadeira e P ↔ Q é falsa. (F) 8) Construir a tabela da verdade para as seguintes proposições: a) p ˄ q → p ˅ q p q p∧q→p∨q 1 1 1 1 0 1 0 1 1 0 0 1 b) ~p → (q → p) p q ∼p→(q→p) 1 1 1 1 0 1 0 1 0 0 0 1 d) (p ↔ ~q) ↔ q → p p q (p↔∼q)↔p→q 1 1 0 1 0 0 0 1 1 21UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O p q (p↔∼q)↔p→q 0 0 0 9) Determinar P(VV, VF, FV, FF) em cada um dos seguintes casos: a) P(p,q) = ~(~p ↔ q) p q ∼(∼p↔q) V V V V F F F V F F F V b) P(p,q) = (p ˅ q) ˄ ~(p ˄ q) p q (p∨q)∧∼(p∧q) V V F V F V F V V F F F d) P(p,q) = ~((p ˅ q) ˄ (~p ˅ ~q)) p q ∼((p∨q)∧(∼p∨∼q)) V V V V F F F V F F F V 10) Determinar P(VFV) em cada um dos seguintes casos: a) P(p,q,r) = p ˄ ~q → ~q p q p∧∼q→∼q V V V V F V F V V F F V 22 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O b) P(p,q,r) = ~p ˄ (q ˄ ~r) p q r ∼p∧(q∧∼r) V V V F V V F F V F V F F V V F F F V F F V F V V F F F F F F F UNIDADE 2 SEÇÃO 1 1) Escreva um algoritmo na forma narrativa para fazer uma salada de frutas. Resposta: 1 – pegar um utensílio para colocar as frutas cortadas; 2 – coletar as frutas para a salada; 3 – lavar as frutas; 4 – descascar as frutas; 5 – cortar em tamanhos pequenos; 6 – colocar todas as frutas cortadas no utensílio; 7 – se desejar uma calda, faça um suco de três laranjas e acrescente na salada. Para esta resolução, foi abordado um algoritmo bastante superficial, que possui apenas a síntese da resposta, isto é, o desenvolvedor do processo pode escrever o algoritmo no nível que achar necessário, descrevendo ou não os detalhes de acordo com o problema. 23UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 2) A tabela abaixo contém algumas instruções que tem por objetivo calcular o total de uma venda. Na coluna tipo Identifique os dados de entrada (E), processamento (P) e saída (S). Na coluna sequência lógica estabeleça a sequência numérica das instruções (ordem para serem executadas). Resposta: Algoritmo venda Instrução (Identifique a ordem correta) Tipo Sequência lógica Calcular o valor total da peça (Quantidade * Valor da peça) P 3 Mostrar o código da peça e seu valor total S 4 Receber valor da peça E 1 Receber Quantidade de peças E 2 3) Crie o fluxograma do algoritmo abaixo: algoritmo “exemplo” var PRECO_UNIT, PRECO_TOT : real QUANT : inteiro Início escreva(“Digite o preço unitário: ”) leia (PRECO_UNIT) escreva (“Digite a quantidade: ”) leia(QUANT) PRECO_TOT PRECO_UNIT * QUANT escreva(“Preço total: “, PRECO_TOT) fimalgoritmo 24 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 4) Diferencie tipo de dados e variáveis. R.: Tipo de dados: está relacionado ao tipo de informação que desejamos armazenar na memória do computador (exemplo: se é um número inteiro, um número com casas decimais (real), caracteres ou lógico). Variáveis: quando nos referimos à variável, do ponto de vista da programação de computadores, estamos tratando de uma “região de memória (do computador) previamente identificada, cuja finalidade é armazenar os dados ou informações de um programa por um determinado espaço de tempo”. A Resposta: 25UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O memória do computador se organiza tal qual um armário com várias divisões, sendo cada divisão identificada por um endereço. O computador armazena os dados nessas divisões, sendo que, em cada divisão, só é possível armazenar um dado e, toda vez que o computador armazenar um dado em uma dessas divisões, o dado que antes estava armazenado é eliminado. O conteúdo pode ser alterado, mas somente um dado por vez pode ser armazenado naquela divisão. O computador identifica cada divisão por intermédio de um endereço no formato hexadecimal, e as linguagens de programação permitem nomear cada endereço ou posição de memória, facilitando a referência a um endereço de memória. Uma variável é composta por dois elementos básicos: o conteúdo, o valor da variável e identificador, um nome dado à variável para possibilitar sua utilização. 5) Identifique o tipo dos dados: (a) inteiro; (b) real; (c) lógico; (d) cadeia ou literal Resposta: (c) Verdadeiro (d) “Maria” (d) “c*d” (a) -23 (c) Falso (b) 35.23 (d) “1 2 3 4” (b) -18.589 (d) “aula” (a) 345 (a) 897 (b) 0.342 6) Quais são as regras básicas para criar nomes (identificadores) das variáveis? R.: As variáveis e as constantes têm um nome (Rótulo) que as identificam dentro do código/pseudocódigo. Esse nome deve ser criado conforme as seguintes regras: a) O primeiro caractere deve ser SEMPRE uma letra. b) Os nomes devem ser formados por caracteres pertencentes às letras do alfabeto e aos números. Se o identificador for mais de uma palavra, podemos separá-los com o underline “_”. c) Não pode haver espaços em branco entre os caracteres dos identificados. d) Os nomes dos escolhidos devem ser explicativos do seu conteúdo. e) Nomes de variáveis longos dificultarão a codificação (verificar tamanho dependendo da linguagem que for programar). f) Não deve utilizar acentuação ou cedilha. g) Os nomes dados às variáveis não podem ser os mesmos nomes das palavras reservadas da linguagem que será utilizada. 26 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 7) Marque com X os identificadores válidos: (x) A ( ) 5B ( erro: iniciando com nº (x) NOTA (x) DATA (x) PROGRAMA ( ) PROGRAM erro: palavra reservada (dependendo da linguagem) ( ) NOTA[1] (erro: []) (x) A32B (x) X5 ( ) E(13) erro: () (x) MATRICULA ( ) A:B erro: : (x) F1GH78 ( ) B*D erro: * (x) AX_DATA ( ) X – Y erro: - (x) VALOR ( ) “NOTA” (erro: “) ( ) AH! erri (erro: !) ( ) KM/H (erro: /) ( ) NOTA*DO*ALUNO (erro: *) (x) NOMEDAEMPRESA (x) ANO (x) MEDIA (x) MEDIA SALARIAL ( ) AI! (erro: !) (x) A15B34 ( ) “AULA” (erro: “) (x) NOME_ALUNO ( ) 1DEPARTAMENTO (erro: iniciou com número) 8) Sendo SOMA, NUM e X variáveis numéricas (inteiro ou real); NOME, COR e DIA variáveis literais (caractere); TESTE, COD e TUDO variáveis lógicas, assinalar os comandos de atribuição considerados inválidos: Resposta: (x) NOME <- 5 ( ) SOMA <- NUM + 2 * X ( ) TESTE <- COD (x) TUDO <- SOMA ( ) COR <- “PRETO” ( ) X <- X + 1 (x) NUM <- “ABC” ( ) DIA <- “SEGUNDA” ( ) COD <- VERDADEIRO 27UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 9) Encontre os erros dos comandos de atribuição a seguir: Algoritmo “exercício 01” var logico: A real: B, C inteiro: D inicio A <- B + C D <- B C <- A + D Fimalgoritmo Resposta: Algoritmo “exercício 01” Var real: A // Alterado para o tipo de dados Real real: B, C real: D // Alterado para o tipo de dados Real inicio B <- 10.50 // valor inicial para a variável B C <- 20.40 // valor inicial para a variável C A <- B + C D <- B C <- A + D Fimalgoritmo SEÇÃO 2 1)Analise os algoritmos abaixo e diga o que será impresso na tela ao serem executados: 28 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo Simulação a) algoritmo "teste01" var A , B: inteiro inicio A <-10 B <- 20 escreva(B) B <- 5 Escreva( A, B) fimalgoritmo Memória A <-10 B <- 20 B <- 5 Vídeo 20 10 5 b) algoritmo "teste02" var A , B,C: inteiro Inicio A <- 30 B <- 20 C <- A + B escreva(C) B <- 10 escreva( B, C) C <- A + B escreva(A, B, C) fimalgoritmo Memória A <- 30 B <- 20 C <- 30 + 20 (50) B <- 10 C <- 30 + 10(40) Vídeo 50 10 50 30 10 40 29UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O c) algoritmo "teste03" var X: inteiro Z, Y: real inicio X <- 30 Y <- 40 Z <- Y – X * 2 Escreva(Z) X <- 10 Y <- X + Z /2 escreva(X, Y, Z) fimalgoritmo Memória X <- 30 Y <- 40 Z <- 40 – 30 * 2 X <- 10 Y <- 10 + Z / 2 Vídeo -20 0 2) Identifique ENTRADA(S), PROCESSAMENTO e SAÍDA(S) no algoritmo abaixo: algoritmo “exemplo02” var PRECO_UNIT, PRECO_TOT : real QUANT : inteiro Início escreva(“Digite o preço unitário: ”) leia (PRECO_UNIT) escreva (“Digite a quantidade: ”) leia(QUANT) PRECO_TOT PRECO_UNIT * QUANT escreva(“Preço total: “, PRECO_TOT) fimalgoritmo Resposta: Entrada: PRECO_UNIT, QUANT. Processamento: PRECO_TOT PRECO_UNIT * QUANT. Saída: PRECO_TOT. 3) O que será atribuído às variáveis A, X e B? 30 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo “exemplo03” logico: A, B inteiro: X inicio X 8 + 6 * 2 B 5 + 3 A B fimalgoritmo 4) Dadas as declarações abaixo, assinale os comandos de atribuição inválidos: var NUM: inteiro SOMA, X: real SIMBOLO, NOME, COR, DIA: caracter COD, TESTE, TUDO: lógico (x) SIMBOLO 8 ( ) SOMA NUM + 3 * X (x) TESTE COR (x) TUDO SOMA ( ) COR “VERMELHO”; ( ) X X + 1 (x) NUM “1234” ( ) DIA “QUARTA” Resposta: X 20 B 8 A 8 SEÇÃO 3 1) Os pares de instruções abaixo produzem o mesmo resultado? (4 / 2) + (2 / 4) e 4 / 2 + 2 / 4 4 / (2 + 2) / 4 e 4 / 2 + 2 / 4 ( 4 + 2 ) * 2 - 4 e 4 + 2 * 2 - 4 Resposta: Resposta: (4 / 2) + (2 / 4) e 4 / 2 + 2 / 4 Sim 4 / (2 + 2) / 4 e 4 / 2 + 2 / 4 Não ( 4 + 2 ) * 2 - 4 e 4 + 2 * 2 - 4 Não 31UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 2) Dadas as informações abaixo, informe qual o valor das relações (verdadeiro ou falso): a) a = 9.0, b = 2.0, nome = ‘Beatriz’, profissao = ‘advogado’ a + b = 11 (verdadeiro) nome <> “Carlos” (verdadeiro) profissao = “professor” (falso) b) a = 8 b = 12 nome = “Veronice”, profissao =”professor” a + 5 = b - 3 (falso) nome <> “ana” (verdadeiro) profissao = “dentista” (falso) c) x = 3, y = 4, z = 10, nome = “Carlos”, R = verdadeiro ( x + y > z ) e (nome = “Carlos”) (falso) (R) ou ( y > = x ) (verdadeiro) (not R) e ( z div y + 1 = x ) (falso) (nome = “josé”) e ( x + y + z < ( y * y )) (falso) 3) Determine os valore finais de A, B e C após a execução do trecho do algoritmo abaixo: Atribuições Simulação A <-0 B <- 1 C <- A + B A <- A + 1 B <- A + B + C Memória A <-0 B <- 1 C <-0 + 1 (1) A <- 0 + 1 (1) B <- 1 + 1 + 1 A irá conter 1 C irá conter 1 B irá conter 3 Vídeo 32 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 4) Sabendo que A=3, B=8 e C=4, informe se as expressões abaixo são verdadeiras ou falsas. Expressão Verdadeiro Falso a) (A+C) > B ( ) (x) b) B >= (A + 3) (x) ( ) c) C = (B – A) (x) ( ) d) (B + A) >= C (x) ( ) e) (C+A) > B ( ) (x) 5) Sabendo que A=5, B=4 e C=3 e D=6, informe se as expressões abaixo são verdadeiras ou falsas. Expressão Verdadeiro Falso (A > C) .e. (C >= B) ( ) (x) (A+B) > 10 .ou. (A+B) = (C+D) (x) ( ) (A>=C) .e. (D >= C) (x) ( ) nao (A < B) xou (D = C) (x) ( ) A < B xou B > D (x) ( ) 6) Determine o resultado lógico das expressões abaixo, assinalando se são verdadeiras ou falsas. Considere os seguintes valores para as variáveis: X = 8, A=7 , B=5 , C=3 , D=6 , NOME=”MARIA”. Expressão Verdadeiro falso (X < 10) .e. (A = 3) ( ) (x) (X=5) .ou. (B < 4) .ou. (C>6) ( ) (x) (NOME=”MARIA”) .e. (A > 5) (x) ( ) (NOME<>”PEDRO”) .e. (D > B) (x) ( ) (A < B) .ou. (D > C) (x) ( ) (B >= A) .e. (D>C) ( ) (x) (D<>C) .ou. (X > A) (x) ( ) (NOME=”PEDRO” ) .ou. (C <> 5) (x) ( ) (A = B) .e. (C < D) ( ) (x) (B > 3 ) .e. (C < 8) (x) ( ) 33UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O SEÇÃO 4 1) Analise os blocos de código dos algoritmos abaixo e represente o que será impresso ao serem executados: a) A <- 15 B <- 30 escreva( B) B <- 40 escreva (A, B) Memória A <- 15 B <- 30 B <- 40 Vídeo 30 15 40 b) A <- 20 B <- 45 C <- A + B escreva ( C ) B <- 30 escreva ( B, C) C <- A + B escreva (A, B, C) Memória A <- 20 B <- 45 C <- 20 + 45 (65) B <- 30 C <- 20 + 30(50) Vídeo 65 30 65 20 30 50 34 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O c) A <- 15 B <- A + 1 A <- B + 2 B <- A + 1 escreva ( A ) A <- B + 1 B <- B - 2 escreva ( A ) Memória A <- 15 B <- 15 + 1(16) A <- 16 + 2(18) B <- 18 + 1(19) A <- 19 + 1(20) B <- 19 – 2(17) Vídeo 18 20 d) A <- 40 B <- 30 C <- A + B escreva (C) B <- 10 escreva (B, C) C <- A + B B <- A - C A <- (5 + B) * 2 escreva (A, B, C) Memória A <- 40 B <- 30 C <- 40 + 30 B <- 10 C <- 40 + 10(50) B <- 40 - 50 A <- (5 + (-10)) * 2 Vídeo 70 10 70 -10 -10 50 2) Qual a função do algoritmo a seguir? 35UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo “exercicio02” Var sal : real inicio escreva(“Digite o valor do salário: ”) leia(sal) escreva(“O salário com 37% é: ”, sal + (sal * 37 / 100)) fimalgoritmo Resposta: O algoritmo tem por objetivo fazer a leitura de um salário e apresentar o salário lido com aumento de 37%. 3) O algoritmo abaixo deverá ler um salário e calcular 10% de aumento sobre o salário. Para que o algoritmo seja executado corretamente, complete-o com os comandos que faltam: Linha 1 - Algoritmo "ReajusteSalarial" Linha 2 - inicio Linha 3 - var Linha 4 - SALARIO, SALARIO_NOVO ___________________ Linha 5 - ______________________ (“Digite o salário”) Linha 6 - ______________________ (SALARIO) Linha 7 - SALARIO_NOVO ← _________________* 1.10 Linha 8 - __________ (“O valor do novo salário é:”, _____________) Linha 9 - fimalgoritmo Resposta: Algoritmo "ReajusteSalarial" inicio var SALARIO, SALARIO_NOVO: real Inicio // ----------- ENTRADA ------------- escreval (“Digite o salário”) leia(SALARIO) // ----------- PROCESSAMENTO ------------- SALARIO_NOVO <- SALARIO * 1.10 36 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O // ----------- SAÍDA ------------- escreval (“O valor do novo salário é:”, SALARIO_NOVO) fimalgoritmo 4 Identifique os dados de entrada, processamento e saída no algoritmo abaixo: − Receba código da peça. − Receba valor da peça. − Receba Quantidade de peças. − Calcule o valor total da peça. Quantidade * Valor da peça). − Mostre o código da peça e seu valor total. Resposta: Algoritmo "ControlePeca" inicio var CODIGO, QTDE: inteiro VALOR, TOTAL: real Inicio // --------- ENTRADA ---------- escreval (“Entre com o código da peça”) leia(CODIGO) escreval (“Entre com a quantidade: ”) leia(QTDE) escreval (“Entre com o valor da peça: ”) leia(VALOR) // --------- PROCESSAMENTO ---------- TOTAL <- QTDE* VALOR // --------- SAÍDA ---------- escreval(“O código da peça é: “,CODIGO) escreval(“O valor total é: “,TOTAL) fimalgoritmo 37UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O ATIVIDADES DE APRENDIZAGEM DA UNIDADE 2 OBS.: resolução – algoritmos no padrão do software VisuAlg 1) Faça um algoritmo que escreva a mensagem “Olá Mundo”. algoritmo “exercicio01” Inicio escreva(“Olá Mundo”) fimalgoritmo 2) Ler dois números inteiros e imprimir a soma deles. algoritmo “exercicio02” var NUM1, NUM2, SOMA: inteiro //ou real (vai depender dos valores dos números) inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o valor do primeiro número”) leia(NUM1) escreval(“Entre com o valor do segundo número”) leia(NUM2) // --------------- PROCESSAMENTO ------------ SOMA <- NUM1 + NUM2 // --------------- SAÍDA ------------ Escreval(“A soma dos dois números é: “, SOMA) fimalgoritmo 3) Faça um programa que calcule e mostre a área de um triângulo. Sabe- se que: Area = (base * altura) / 2. algoritmo “exercicio03” var BASE, ALTURA, AREA: real inicio // --------------- DADOS DE ENTRADA ------------ escreval(“Entre a base:”) 38 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O leia(BASE) escreval(“Entre com a altura:”) leia(ALTURA) // --------------- PROCESSAMENTO ------------ AREA = (BASE * ALTURA) / 2 // --------------- SAÍDA ------------ escreval(“A Área do triângulo é: “, AREA) fimalgoritmo 4) Faça um algoritmo que leia quatro números informados pelo usuário e que depois imprima a média ponderada, sabendo- se que os pesos são respectivamente: 1, 2, 3 e 4: algoritmo “exercicio04” var NUM1, NUM2, NUM3, NUM4: inteiro //ou real (vai depender dos valores dos números) MEDIA: real // defina como real devido ao cálculo da média (pode conter casas decimais) inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o valor do primeiro número”) leia(NUM1) escreval(“Entre com o valor do segundo número”) leia(NUM2) escreva(“Entre com o valor do primeiro número”) leia(NUM3) escreval(“Entre com o valor do segundo número”) leia(NUM4) // --------------- PROCESSAMENTO ------------ MEDIA <- (NUM1 * 1 + NUM2 * 2 + NUM3 * 3 + NUM4 * 4) / // --------------- SAÍDA ------------ Escreval(“A soma dos dois números é: “, SOMA) fimalgoritmo 39UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 5) Faça um algoritmo para “Calcular o estoque médio de uma peça”, sendo que ESTOQUEMEDIO = (QUANTIDADE_MINIMA + QUANTIDADE_MAXIMA) / 2. algoritmo “exercicio05” var ESTOQUEMEDIO, QUANTIDADE_MINIMA, QUANTIDADE_MAXIMA: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com a quantidade mínima em estoque:”) leia(QUANTIDADE_MINIMA) escreval(“Entre com a quantidade máxima em estoque:”) leia(QUANTIDADE_MAXIMA) // --------------- PROCESSAMENTO ------------ ESTOQUEMEDIO <- (QUANTIDADE_MINIMA + QUANTIDADE_MAXIMA) / 2 // --------------- SAÍDA ------------ Escreval(“O estoque médio é: “,ESTOQUEMEDIO) Fimalgoritmo 6) Elabore um algoritmo que leia o tamanho do lado de um quadrado e informe a área e o perímetro do quadrado. (Perímetro = 4 * LADO; área = LADO ^ 2). algoritmo “exercicio06” var PERIMETRO, LADO, AREA: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o valor correspondente ao lado do quadrado :”) leia(LADO) // --------------- PROCESSAMENTO ------------ AREA <- LADO ^ 2) PERIMETRO <- 4 * LADO // --------------- SAÍDA ------------ escreval(“A área é: ‘, AREA) 40 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O escreval(“O perímetro é: “, PERIMETRO fimalgoritmo 7) Faça um programa que calcule e mostre a área de um círculo. Sabe-se que: Area = π * r2. algoritmo “exercicio07” var RAIO, AREA: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o raio :”) leia(RAIO) // --------------- PROCESSAMENTO ------------ AREA <- 3.1416 * RAIO ^ 2 // --------------- SAÍDA ------------ fimalgoritmo 8) Faça um programa que receba o salário de um funcionário, calcule e mostre o novo salário, sabendo-se que este sofreu um aumento de 25%. algoritmo “exercicio08” var SALARIO, SAL_AUMENTO: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o salário:”) leia(SALARIO) // --------------- PROCESSAMENTO ------------ SAL_AUMENTO <- SALARIO * 1.25 // --------------- SAÍDA ------------ escreval(“O salário é: “,SALARIO) escreval(“O salário com aumento é: “,SAL_AUMENTO) fimalgoritmo 41UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 9) Faça um programa que receba o salário base de um funcionário, calcule e mostre o seu salário a receber, sabendo-se que o funcionário tem gratificação de R$ 50 e paga imposto de 10% sobre o salário base. algoritmo “exercicio9” var SALARIO_BASE, SAL_RECEBER, IMPOSTO: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o salário base:”) leia(SALARIO_BASE) // --------------- PROCESSAMENTO ------------ GRATIFICACAO <- 50 IMPOSTO <- SALARIO_BASE * 0.10 SAL_RECEBER <- SALARIO_BASE – IMPOSTO + GRATIFICACAO // --------------- SAÍDA ------------ escreval(“O salário base é: “,SALARIO_BASE) escreval(“A gratificação é: “,GRATIFICACAO) escreval(“O valor do imposto é: “,IMPOSTO) escreval(“O salário / receber é: “,SAL_RECEBER) fimalgoritmo 10) Uma revendedora de carros usados paga a seus funcionários vendedores, um salário fixo por mês, mais uma comissão também fixa para cada carro vendido e mais 5 % do valor das vendas por ele efetuadas. Escrever um algoritmo que leia o número de carros por ele vendidos, o valor total de suas vendas, o salário fixo e o valor que recebe por carro vendido. Calcule e escreva o salário mensal do vendedor. algoritmo “exercicio10” var NUM_CARROS: inteiro SALARIO_FIXO, TOTAL_VENDA, SAL_MENSAL, COMISSAO_FIXA, COMISSAO_VENDA : real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o número de carros vendidos :”) leia(NUM_CARROS) 42 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O escreva(“Valor total de vendas :”) leia(TOTAL_VENDA) escreva(“Salário fixo :”) leia(SALARIO_FIXO) // --------------- PROCESSAMENTO ------------ COMISSAO_FIXA <- NUM_CARROS * 100 // 100,00 de comissão por carro vendido COMISSAO_VENDA <- TOTAL_VENDA * 0.05 SAL_MENSAL <- SALARIO_FIXO + COMISSAO_FIXA + COMISSAO_ VENDA // --------------- PROCESSAMENTO ------------ escreval(“A comissão fixa é: “,COMISSAO_FIXA) escreval(“A comissão de 5% do total de venda é: “,COMISSAO_VENDA) escreval(“O salário fixo é “,SALARIO_FIXO) escreval(“O salário mensal é: “,SAL_MENSAL) fimalgoritmo 11) A conta de água de uma residência e o resultado da soma da tarifa de água com tarifa de esgoto. Faça um algoritmo que leia a tarifa de água, calcule a tarifa de esgoto (80% da tarifa de água) e escreva o valor da conta a ser paga. algoritmo “exercicio11” var TARIFA_AGUA, TARIFA_ESGOTO, CONTA: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com a tarifa de água :”) leia(TARIFA_AGUA) // --------------- PROCESSAMENTO ------------ TARIFA_ESGOTO <- TARIFA_AGUA * 0.80 CONTA <- TARIFA_AGUA + TARIFA_ESGOTO // --------------- SAÍDA ------------ escreval(“O valor da conta é : “,CONTA)fimalgoritmo 43UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 12) José distribui sua renda mensal da seguinte forma: 10% saúde, 25% educação, 30% alimentação, 10% vestuário; 5% lazer, 20% outros. Faça um algoritmo que leia a renda mensal liquida de Luciana, calcule e escreva o valor aplicado em cada item acima citado. algoritmo “exercicio12” var RENDA_MENSAL, SAUDE, EDUCACAO, ALIMENTACAO, VESTUARIO, LAZER, OUTROS: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“A renda mensal é :”) leia(RENDA_MENSAL) // --------------- PROCESSAMENTO ------------ SAUDE <- RENDA_MENSAL * 0.10 EDUCACAO <- RENDA_MENSAL * 0.25 ALIMENTACAO <- RENDA_MENSAL * 0.30 VESTUARIO <- RENDA_MENSAL * 0.10 LAZER <- RENDA_MENSAL * 0.05 OUTROS <- RENDA_MENSAL * 0.20 // --------------- SAÍDA ------------ escreval(“A renda mensal é: “, RENDA_MENSAL) escreval(“10% saúde: “,SAUDE) escreval(“25% educação: “,EDUCACAO) escreval(“30% alimentação: “,ALIMENTACAO) escreval(“10% vestuário “,VESTUARIO) escreval(“5% lazer “,LAZER) escreval(“20% outros “,OUTROS) fimalgoritmo 13) Escreva um algoritmo para ler o número total de eleitores de um município, o número de votos brancos, nulos e válidos. Calcular e escrever o percentual que cada um representa em relação ao total de eleitores. algoritmo “exercicio13” var TOTAL_ELEITORES, NV_BRANCOS, NV_NULOS , NV_VALIDOS, PER_BRANCO, 44 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O PER_NULO, PER_VALIDO: real Inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o total de eleitores:”) leia(TOTAL_ELEITORES) escreva(“Entre com o número de votos brancos:”) leia(NV_BRANCOS) escreva(“Entre com o número de votos nulos:”) leia(NV_NULOS) escreva(“Entre com o número de votos válidos:”) leia(NV_VALIDOS) // --------------- PROCESSAMENTO ------------ PER_BRANCO <- (NV_BRANCOS / TOTAL_ELEITORES) * 100 PER_NULO <- (NV_NULOS / TOTAL_ELEITORES) * 100 PER_VALIDO <- (NV_VALIDO / TOTAL_ELEITORES) * 100 // --------------- SAÍDA ------------ escreval(“Percentual de votos brancos: “,PER_BRANCO, “%”) escreval(“Percentual de votos nulos: “,NV_NULOS, “%”) escreval(“Percentual de votos válidos: “,NV_VALIDO, “%”) fimalgoritmo 14) Elabore um algoritmo que leia o número de horas trabalhadas e o valor do salário mínimo. Calcule e escreva o salário a receber seguindo as regras abaixo: • A hora trabalhada vale a metade do salário mínimo; • O salário bruto equivale ao número de horas trabalhadas multiplicado pelo valor da hora trabalhada; • O imposto equivale a 3% do salário bruto; • O salário a receber equivale ao salário bruto menos o imposto. algoritmo “exercicio14” var NUM_HORAS_TRAB, VAL_SALARIO_MIN, VAL_HORAS_TRAB, SAL_ BRUTO, IMPOSTO, SAL_RECEBER: real Inicio 45UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O // --------------- DADOS DE ENTRADA ------------ escreval(“Entre com o número de horas trabalhadas:”) leia(NUM_HORAS_TRAB) escreva(“Valor do salário mínimo:”) leia(VAL_SALARIO_MIN) // --------------- PROCESSAMENTO ------------ VAL_HORAS_TRAB <- VAL_SALARIO_MIN / 2 SAL_BRUTO <- NUM_HORAS_TRAB * VAL_HORAS_TRAB IMPOSTO <- SAL_BRUTO * 0.03 SAL_RECEBER <- SAL_BRUTO - IMPOSTO // --------------- SAÍDA ------------ escreval(“Valor da hora trabalhada: “,VAL_HORAS_TRAB) escreval(“Salário bruto: “,SAL_BRUTO) escreval(“Valor do imposto: ”, IMPOSTO) escreval(“Salário a receber: ”, SAL_RECEBER) fimalgoritmo 15) Uma pessoa paga de impostos anuais, o seguinte: • IPTU: 1% do valor do imóvel; • PVA: 3% do valor do veículo. OBS.: Faça um programa que leia o valor do imóvel e do veículo. Calcule o IPTU e o IPVA, o total pago em impostos e mostre os resultados. algoritmo “exercicio15” var VALOR_IMOVEL, IPTU, IPVA: real Inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o valor do imóvel:”) leia(VALOR_IMOVEL) // --------------- PROCESSAMENTO ------------ IPTU <- VALOR_IMOVEL * 0.01 IPVA <- VALOR_IMOVEL * 0.03 // --------------- SAÍDA ------------ escreval(“O valor do imóvel é:”, VALOR_IMOVEL) 46 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O escreval(“O valor do IPTU (1%) será:”, IPTU) escreval(“O valor do IPVA (3%) será:”, IPVA) fimalgoritmo 16) Faça um algoritmo que receba o ano de nascimento de uma pessoa e o ano atual, calcule e mostre: • A idade dessa pessoa; • Quantos anos ela terá em 2028. algoritmo “exercicio16” var ANO_NASC, IDADE, IDADE_2028: real Inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o ano de nascimento:”) leia(ANO_NASC) // --------------- PROCESSAMENTO ------------ IDADE <- 2014 - ANO_NASC IDADE_2028 <- 2028 - ANO_NASC // --------------- SAÍDA ------------ escreval(“A sua idade é:”, IDADE) escreval(“Sua idade em 2028 será:”, IDADE_2028) fimalgoritmo 17) Faça um algoritmo que receba o custo de um espetáculo teatral e o preço do convite esse espetáculo. Esse programa deve calcular e mostrar: • A quantidade de convites que devem ser vendidos para que pelo menos o custo do espetáculo seja alcançado. • A quantidade de convites que devem ser vendidos para que se tenha um lucro de 23%. algoritmo “exercicio17” var CUSTO_ESP, PRECO_CONVITE, TOTAL_CUSTO: real Inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o custo do espetáculo:”) 47UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O leia(CUSTO_ESP) escreva(“Entre o preço do convite:”) leia(PRECO_CONVITE) // --------------- PROCESSAMENTO ------------ NUM_VENDA_CUSTO <- CUSTO_ESP / PRECO_CONVITE NUM_VENDA_CUSTO <- NUM_VENDA_CUSTO + NUM_VENDA_CUSTO * 0.23 // --------------- SAÍDA ------------ escreval(“A quantidade de convites que devem ser vendidos para que pelo menos o custo do espetáculo seja alcançado: “,NUM_VENDA_CUSTO) escreval(“A quantidade de convites que devem ser vendidos para que se tenha um lucro de 23%”, NUM_VENDA_CUSTO) fimalgoritmo 18) Considerando uma eleição de apenas 2 candidatos, elabore um algoritmo que leia do teclado o número total de eleitores, o número de votos do primeiro candidato e o número de votos do segundo candidato. Em seguida, o algoritmo deverá apresentar o percentual de votos de cada um dos candidatos e o percentual de votos nulos. algoritmo “exercicio18” var TOTAL, NV_CAND01, NV_CAND02, PER_CAND01, PER_CAND02, PER_NULO : real Inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o total de eleitores:”) leia(TOTAL) escreva(“Entre com o número de votos do candidato 01:”) leia(NV_CAND01) escreva(“Entre com o número de votos do candidato 02:”) leia(NV_CAND02) // --------------- PROCESSAMENTO ------------ PER_CAND01 <- (NV_CAND01 / TOTAL) * 100 PER_CAND02 <- (NV_CAND02 / TOTAL) * 100 48 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O TOTAL_NULO <- TOTAL – (NV_CAND01 + NV_CAND02) PER_NULO <- (TOTAL_NULO / TOTAL) * 100 // --------------- SAÍDA ------------ escreval(“Total de votos: “,TOTAL) escreval(“Percentual do candidato 01: “, PER_CAND01, “%”) escreval(“Percentual do candidato 02: “, PER_CAND02, “%”) escreval(“Percentual nulo (foi considerado a diferença dos 2 candidatos): “, PER_NULO, “%”) fimalgoritmo 19) Faça o algoritmo que calcule o valor em Reais, correspondente aos dólares que um turista possui no cofre do hotel.O programa deve solicitar os seguintes dados: Quantidade de dólares guardados no cofre e cotação do dólar naquele dia. algoritmo “exercicio9” var TOTAL_REAL, QTDE_DOLAR, VALOR_DOLAR: real Inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com a quantidade em dolares:”) leia(QTDE_DOLAR) escreva(“Entre com o valor da cotação do dólar do dia:”) leia(VALOR_DOLAR) // --------------- PROCESSAMENTO ------------ TOTAL_REAL <- QTDE_DOLAR * VALOR_DOLAR // --------------- SAÍDA ------------ escreval(“O total em reais é: “,TOTAL_REAL) fimalgoritmo 20) Faça um algoritmo que receba o preço de custo de um produto e mostre o valor de venda. O preço de custo receberá um acréscimo de acordo com um percentual informado pelo usuário. algoritmo “exercicio20” var 49UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O PRECO_CUSTO,PRECO_VENDA: real PERCENTUAL: inteiro inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o preço de custo do produto:”) leia(PRECO_CUSTO) escreva(“Entre com o preço de custo do produto (por exemplo: 10 para 10%”) leia(PERCENTUAL) // --------------- PROCESSAMENTO ------------ PRECO_VENDA <- PRECO_CUSTO + (PRECO_CUSTO * PERCENTUAL) /100 // --------------- SAÍDA ------------ escreval(“O preço de venda é: “,PRECO_VENDA ) fimalgoritmo 21) Faça um programa que receba o salário-base de um funcionário, calcule e mostre o seu salário a receber, sabendo-se que esse funcionário tem gratificação de R$50,00 e paga imposto de 10% sobre o salário-base. algoritmo “exercicio21” var SALARIO_BASE, SAL_RECEBER, GRATIFICACAO, IMPOSTO: real inicio // --------------- DADOS DE ENTRADA ------------ escreva(“Entre com o salário base:”) leia(SALARIO_BASE) // --------------- PROCESSAMENTO ------------ GRATIFICACAO <- 50 IMPOSTO <- SALARIO_BASE * 0.10 SAL_RECEBER <- (SALARIO_BASE – IMPOSTO) + GRATIFICACAO // --------------- SAÍDA ------------ escreval(“O salário é base é: “,SALARIO_BASE) escreval(“A gratificação é: “,GRATIFICACAO) escreval(“O valor do imposto é: “,IMPOSTO) escreval(“O salário que você vai receber é:”, SAL_RECEBER) fimalgoritmo 50 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O UNIDADE 3 SEÇÃO 1 1) Indique a saída dos trechos a seguir: Pseudocódigo Simulação X <- 10 se (X / 5 = 2) entao X <- 0 fimse escreva (X) Memória X <-10 X <-0 Vídeo X: 0 X <- 10 Y <- 15 se ((X <= 10) e (Y > 13)) entao X <- 3 fimse escreva (X) Memória X <-10 Y <- 15 X <- 3 Vídeo X: 3 X <- 10 Y <- 15 se ((X < 10) e (Y > 13)) entao X <- 3 fimse escreva (X) Memória X <-10 X <-15 Vídeo X: 10 2) Indique a saída dos trechos abaixo, considerando: A <- 2 B <- 3 C <- 5 D <- 9 51UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Pseudocódigo Simulação a) se (nao (D > 5)) entao X <- (A + B) * D senao X <- (A – B) / C fimse escreva (X) Memória D <-5 X <- (2 – 3) / 5 Vídeo X: -0,2 b) se ((A > 2) e (B < 7)) entao X <- (A + 2) * (B – 2) senao X <- (A + B) / D * (C + D) fimse escreva(X) Memória X <- (2 + 3) / 9 * (5 + 9) Vídeo X: 7,77 c) se ((A = 2) ou (B < 7)) entao X <- (A + 2) * (B – 2) senao X <- (A + B) / D * (C + D) fimse escreva(X) Memória X <- (2 + 2) * (3 – 2) Vídeo X: 4 d) se ((A> 2)ou nao (B < 7))entao X <- A + B – 2) senao X <- A – B Fimse escreva(X) Memória X <- 2 - 3 Vídeo X: -1 e) se (nao (A > 2) ou nao (B <7)) entao X <- A + B senao X <- A / B Fimse escreva (X) Memória X <- 2 + 3 Vídeo X: 5 52 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O f) se (nao (A > 3) e nao (B < 5)) entao X <- A + D senao X <- D / B fimse escreva (X) Memória X <- 9 / 3 Vídeo X: 3 g) se ((C >= 2) e (B <= 7)) entao X <- (A + D) / 2 senao X <- D * C fimse escreva (X) Memória X <- (2 + 9) / 2 Vídeo X: 5,5 h) se ((A >= 2) ou (C <= 1)) entao X <- (A + D) / 2 senao X <- D * C fimse escreva (X) Memória X <- (2 + 9) / 2 Vídeo X: 5,5 3) Qual será o valor final das variáveis A e B depois da execução do seguinte algoritmo? R.: Ao final da execução, a variável A será igual a 10 e a variável B igual a 2. 53UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Pseudocódigo Simulação Algoritmo “exercicio02” var A, B: inteiro inicio A <- 1 B <- 2 se A > B entao A <- 5 senao A <-10 fimse fimalgoritmo Memória A <- 1 B <- 2 A < 10 Vídeo 4) Qual a função do algoritmo abaixo? R.: Ler duas notas, calcular a média do acadêmico e exibir ao final a mensagem ao usuário de “aprovado”, caso a média seja igual ou superior a 6, e de “reprovado”, caso contrário. 54 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Pseudocódigo Simulação algoritmo “calcularMedia” var N1, N2, Media : real inicio // ----ENTRADA ---- escreva(“Nota 1:”) leia(N1) escreva(“Nota 2:”) leia(N2) // ----PROCESSAMENTO ---- Media <- (N1 + N2)/2 // ----SAÍDA ---- se media>=6 entao escreva(“aprovado”) senao escreva(“reprovado”) fimse fimalgoritmo Memória N1 <- ___ N2 <- ___ Media <- (N1 + N2) / 2 Vídeo Nota 1: Nota 2: 5) Quais os valores das variáveis A, B, C ao executar o algoritmo a seguir? 55UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Pseudocódigo Simulação algoritmo “TesteCondicional” Var A,B,C : inteiro inicio A <- 5 B <- 20 C <- 10 Se (A < B) e (B < C) entao C <- A Senão se (B <> C) entao B <- C Senao A <- B Fimse Fimse Fimalgoritmo a) A = 5, B=10, C=10 b) A = 5, B=20, C=10 c) A = 20, B=5, C=10 d) A = 10, B=5, C=20 Memória A<- 5 B<- 20 C<-10 B <- C Vídeo 6) Qual o resultado das variáveis A, B e C, D, E ao executar o algoritmo abaixo? 56 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Pseudocódigo Simulação algoritmo “TesteLogico” var A, B, C, D, E: real início A <- 25 B <- 40 C <- 40 D <- 35 E <- 50 se (B > C) e (A < B) entao B <- C - 1 E <- A senão se (D < E) ou (B <> C) entao B <- A + 10 D <- C E <- D / 2 senão D <- B A <- E *4 fimse fimse escreva(A, B, C, D, E) fimalgoritmo Quais são os valores impressos para as variáveis A, B, C, D, E ao executar o algoritmo? Variáveis Valores A 25 B 35 C 40 D 40 E 20 OBS.: dependendo do software que for executar o algoritmo, é necessário alterar a variável E devido ao nome do operador lógico E. 7) Forneça valores para as variáveis A, B, C e verifique se eles podem ser valores dos lados de um triângulo (“triângulo qualquer”, “triângulo equilátero” ou “triângulo” isósceles) ou se não são valores válidos (“Não é triângulo”). 57UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo “TiposTriangulo” Var A, B, C:inteiro Inicio Leia(A) 3 leia(B) 5 leia(C) 8 se (A < B + C) e (B < A + C) e (C < A + B) entao se A = B e B = C então escreva("Triângulo Eqüilátero"); senao se (A = B) ou (A = C) ou (C = B) entao escreva ("Triângulo Isósceles") senao escreva("Triângulo Qualquer") fimse fimse senão escreva("Não é triângulo") Fimse Fim algoritmo 8) Dê exemplo de valores para A, B, C para que imprima a mensagem “Triângulo Equilátero”. Memória Vídeo A<- 5 B<- 5 C<- 5 Triângulo Eqüilátero 9) Dê exemplo de valores para A, B, C para que imprima a mensagem “Triângulo Isósceles”. Memória VídeoA <- 8 B <- 8 C <- 10 Triângulo Isósceles 58 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 10) Dê exemplo de valores para A, B, C para que imprima a mensagem “Triângulo Qualquer”. Memória Vídeo A <- 2 B <- 5 C <- 8 Triângulo Qualquer 11) Dê exemplo de valores para A, B, C para que imprima a mensagem “Não é Triângulo”. Memória Vídeo A <- 3 B <- 5 C <- 8 Não é Triângulo SEÇÃO 2 1) Escreva um algoritmo que receba o código correspondente ao cargo de um funcionário de uma escola e seu salário atual e mostre o valor do novo salário, com aumento, conforme tabela abaixo: Código do Cargo Cargo Aumento 1 Secretário 45% 2 Professor 35% 3 Tesoureiro 25% 4 Coordenador 15% 5 Diretor Não tem aumento 59UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "ReajusteSalarial" var Cargo : Inteiro Salario_atual, Novo_salario : real inicio escreval ("Cód - Cargo") escreval (" 1 - Secretário") escreval (" 2 - Professor") escreval (" 3 - Tesoureiro") escreval (" 4 - Coordenador") escreval (" 5 - Diretor") escreva ("Informe o salário atual do funcionário R$: ") leia(Salario_atual) escreva ("Informe o código do cargo do funcionário: ") leia(Cargo) Escolha Cargo caso 1 Novo_salario := Salario_atual + (Salario_atual * 0.45) caso 2 Novo_salario := Salario_atual + (Salario_atual * 0.35) caso 3 Novo_salario := Salario_atual + (Salario_atual * 0.25) caso 4 Novo_salario := Salario_atual + (Salario_atual * 0.15) caso 5 Novo_salario := Salario_atual outrocaso escreva("Escolha uma opção válida entre 1 à 5") fimescolha escreva("O novo salário é de: R$", Novo_salario) fimalgoritmo 2) Faça um algoritmo que receba o código correspondente ao cargo de um funcionário e seu salário atual. Depois, mostre o cargo, o valor do aumento e seu novo salário. Os cargos estão na tabela a seguir. Código Cargo Percentual 1 Escriturário 50 2 Secretário 35 60 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 3 Caixa 25 4 Gerente 10 5 Diretor 3 61UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo "ReajusteSalarial_2" var Cargo : Inteiro Salario_atual, Novo_salario, Valor_aumento : real Descricao_cargo : caracter inicio escreval ("Cód - Cargo") escreval (" 1 - Escriturário") escreval (" 2 - Secretário") escreval (" 3 - Caixa") escreval (" 4 - Gerente") escreval (" 5 - Diretor") escreva ("Informe o salário atual do funcionário R$: ") leia(Salario_atual) escreva ("Informe o código do cargo do funcionário: ") leia(Cargo) Escolha Cargo caso 1 Valor_aumento := (Salario_atual * 0.50) Novo_salario := Salario_atual + Valor_aumento Descricao_cargo := "Escriturário" caso 2 Valor_aumento := (Salario_atual * 0.35) Novo_salario := Salario_atual + Valor_aumento Descricao_cargo := "Secretário" caso 3 Valor_aumento := (Salario_atual * 0.25) Novo_salario := Salario_atual + Valor_aumento Descricao_cargo := "Caixa" caso 4 Valor_aumento := (Salario_atual * 0.10) Novo_salario := Salario_atual + Valor_aumento Descricao_cargo := "Gerente" caso 5 Valor_aumento := (Salario_atual * 0.03) Novo_salario := Salario_atual + Valor_aumento Descricao_cargo := "Diretor" outrocaso escreva("Escolha uma opção válida entre 1 à 5") fimescolha escreval("Para o cargo de ", Descricao_cargo, " o aumento foi de R$", Valor_aumento) escreval("Seu novo salário é de R$", Novo_salario) fimalgoritmo 62 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 3) Faça um programa que receba dois números e execute as operações listadas a seguir de acordo com a escolha do usuário. Escolha do usuário Escolha do usuário 1 Média entre os números digitados 2 Diferença do maior pelo menor 3 Produto entre os números digitados 4 Divisão do primeiro pelo segundo 63UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "Operacoes" var N1, N2, Diferenca, opcao : Inteiro Media, Produto, Divisao : real inicio escreva ("Informe o primeiro número inteiro: ") leia(N1) escreva ("Informe o segundo número inteiro: ") leia(N2) escreval ("Selecione uma das opções abaixo:") escreval (" 1 - Média entre os números Digitados") escreval (" 2 - Diferença do maior pelo menor") escreval (" 3 - Produto entre os números digitados") escreval (" 4 - Divisão do primeiro pelo segundo") leia(opcao) Escolha opcao caso 1 Media := (N1 + N2)/2 escreva("A média dos valores informados é: ", Media) caso 2 se (N1 > N2) entao Diferenca := N1 - N2 senao Diferenca := N2 - N1 fimse escreva("A diferença entre os valores é: ", Diferenca) caso 3 Produto := N1 * N2 escreva("O produto entre os valores é: ", Produto) caso 4 se (N2 = 0) entao escreva("Impossível a divisão por zero") senao Divisao := N1 / N2 escreva("A divisão do primeiro pelo segundo é: ", Divisao) fimse outrocaso escreva("Escolha uma opção válida entre 1 à 4") fimescolha fimalgoritmo 64 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O SEÇÃO 3 1) Qual a função do algoritmo abaixo? R.: Somar os valores informados pelo usuário na variável ‘num’ e armazenar o total na variável ‘SOMA’, imprimindo, ao final, o resultado da soma. Pseudocódigo Simulação 65UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo “exercício02” Var NUM, SOMA, I : inteiro inicio SOMA <- 0 I <- 1 enquanto i <= 10 faca leia(num) SOMA <- SOMA + NUM I <- I + 1 fimenquanto escreva (SOMA) fimalgoritmo Memória Soma <- 0 I <- 1 Num <- 1 Soma <- 0 + 1 I <- 1 + 1 Num <- 2 Soma <- 1 + 2 I <- 2 + 1 Num <- 3 Soma <- 3 + 3 I <- 3 + 1 Num <- 4 Soma <- 6 + 4 I <- 4 + 1 Num <- 5 Soma <- 10 + 5 I <- 5 + 1 Num <- 6 Soma <- 15 + 6 I <- 6 + 1 Num <- 7 Soma <- 21 + 7 I <- 7 + 1 Num <- 8 Soma <- 28 + 8 I <- 8 + 1 Num <- 9 Soma <- 36 + 9 I <- 9 + 1 Num <- 10 Soma <- 45 + 10 I <- 10 + 1 Vídeo SOMA: 55 66 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O 2) Qual a função do algoritmo abaixo? R.: Calcular o fatorial de um número informado pelo usuário e exibir ao final o resultado obtido. Pseudocódigo Simulação Algoritmo “exercicio04” Var n, fat, i : inteiro início fat <- 1 i <- 1 leia (n) enquanto i <= n faca fat <- fat * i i <- i + 1 fimalgoritmo escreva (fat) fimalgoritmo Memória fat <- 1 I <- 1 n <- 5 fat <- 1 * 1 i <- 1 + 1 fat <- 1 * 2 i <- 2 + 1 fat <- 2 * 3 i <- 3 + 1 fat <- 6 * 4 i <- 4 + 1 fat <- 24 * 5 i <- 5 + 1 Vídeo fat: 120 3) Faça a simulação do algoritmo abaixo e descreva sua função. R.: Ter por objetivo ler o nome e a nota de três alunos, imprimindo ao final o nome e a nota do aluno que obteve a maior nota e a média das notas informadas. 67UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "Exercicio05" var nota, notaMaior, soma, conta: real nome, nomeMaior:caracter inicio conta <- 1 notaMaior <- 0 enquanto (conta < 4) faca escreva("Informe o nome ", conta, ": ") leia(nome) escreva("Informe a nota ", conta, ": ") leia(nota) soma <- soma + nota se (nota > notaMaior) entao notaMaior <- nota nomeMaior <- nome fimse conta <- conta + 1 fimenquanto escreva(nomeMaior, " teve a maior nota!") escreva("A media da turma foi: ", soma / 3) fimalgoritmo 68 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Memória Vídeo conta <- 1 notaMaior <- 0 nome <- Leticia nota <- 9 soma <- 0 + 9 notamaior <- 9 nomeMaior <- Leticia conta <- 1 + 1 nome <- Guilherme nota <- 9.5 soma <- 9 + 9.5 notamaior <- 9.5 nomeMaior <- Guilherme conta <- 2 + 1 nome <- Elton nota <- 10 soma <- 18.5 + 10 notamaior <- 10 nomeMaior <- Elton conta <- 3 + 1 Elton teve a maior nota! A média da turma foi 9.50. SEÇÃO 4 1) Analise e teste o código de programa abaixo e identifique o problema dele. (Faça a correção do algoritmo). 69UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "exercicio_01" var contador: inteiro inicio escreva("Digite um numero menor que dez: ") leia(contador) repita escreva("Contador: ", contador) ate contador > 10 fimalgoritmo O algoritmo entrará em looping, já que a condição estabelecida para que ele pare a execução é que a variável contador seja maior que dez. O que não irá ocorrer, tendo em vista que o programa solicita ao usuário para que insira um número menor que dez e a variável contador não é incrementada em cada passagem no laço de repetição. Resolução algoritmo "exercicio_01" var contador: inteiro inicio escreva("Digite um numero menor que dez: ") leia(contador) repita escreva("Contador: ", contador) contador := contador + 1 ate contador > 10 fimalgoritmo 2) Qual a função do código abaixo? 70 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O R.: Irá executar no mínimo uma vez. Enquanto não for digitado o número 0, irá somar todos os valores informados pelo usuário, exibindo o resultado da soma a cada passagem. algoritmo "exercicio_02" var opcao: inteiro somador: inteiro inicio somador <- 0 repita escreva("Digite um numero qualquer ou zero para sair: ") leia(opcao) somador <- somador + opcao escreva("Somador: ", somador) ate opcao = 0 fimalgoritmo 3) Qual a função do código abaixo? R.: O algoritmo abaixo permite realizar as quatro operações matemáticas (adição, subtração, multiplicação e divisão) com os dois valores armazenados nas variáveis X e Y. O usuário deverá indicar qual operação deseja realizar, a qual será armazenada na variável opção e será utilizada como condição para executar os trechos de código estabelecidos na estrutura de seleção Escolha-Caso. 71UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "exemplo_03" var R: real X, Y: inteiro opcao: caracter inicio repita escreva("Digite o primeiro valor: ") leia(X) escreva("Digite o segundo valor: ") leia(Y) escreva("Digite um operador (+, -, * ou /) ou s para sair: ") leia(opcao) escolha opcao caso "+" R <- X + Y escreva(X, " +", Y, " =", R) caso "-" R <- X - Y escreva(X, " -", Y, " =", R) caso "*" R <- X * Y escreva(X, " *", Y, " =", R) caso "/" R <- X / Y escreva(X, " /", Y, " =", R) fimescolha ate (opcao = "s") ou (opcao = "S") fimalgoritmo 4) Faça o fluxograma do algoritmo abaixo: 72 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo “exercício_04” var X: inteiro inicio repita escreva(“Digite um valor”) leia (x) Se (x > 0) entao Escreva (“X > 0”) Senão Se (x < 0) Então Escreva (“X < 0”) ate (x = 0) escreva (“X = 0”) fimalgoritmo 73UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O SEÇÃO 5 1) Qual a função do algoritmo baixo? R.: Tem por objetivo somar os valores ímpares entre 1 a 18, imprimindo ao final o resultado da soma. 74 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Pseudocódigo Simulação algoritmo “exercicio01” Var SOMA, IMPAR: inteiro inicio para IMPAR de 1 ate 18 passo 2 faca SOMA <- SOMA + IMPAR Fimpara escreva(“a soma é:”, SOMA) fimalgoritmo Memória Impar <- 1 Soma <- 0 + 1 Soma <- 1 + 3 Soma <- 4 + 5 Soma <- 9 + 7 Soma <- 16 + 9 Soma <- 25 + 11 Soma <- 36 + 13 Soma <- 49 + 15 Soma <- 64 + 17 Vídeo A soma é: 81 2) Qual a função do algoritmo abaixo? R.: Tem por objetivo imprimir a tabuada a partir do valor informado pelo usuário. Algoritmo “exercicio_02” var r, n1, cont: inteiro inicio escreva(“Entre com um número de 1 até 20 : “ leia(n1) Para cont de 1 ate 10 faca r cont * n1; escreva (n1,“ x ”,cont,“ = ”,r) fimpara fimalgoritmo 3) O algoritmo abaixo tem por função calcular a área de um retângulo. Inclua a estrutura de repetição para/fim para permitir que o usuário calcule a área de 10 retângulos. 75UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo “exercicio_03” var Base, Altura, Area: real inicio //Obtendo os dados do usuário Escreva('Digite o valor da base do retângulo: ') Leia(Base) Escreva('Digite o valor da altura do retângulo: ') Leia(Altura) //Calculando a área Area <- Base * altura Escreva('A área é: ',Area) FimAlgoritmo Resolução Algoritmo "exercicio_03" var Base, Altura, Area: real i : inteiro inicio para i:=1 ate 10 faca //Obtendo os dados do usuário Escreva("Digite o valor da base do retângulo: ") Leia(Base) Escreva("Digite o valor da altura do retângulo: ") Leia(Altura) //Calculando a área Area <- Base * altura Escreval("A área é: ",Area) fimpara FimAlgoritmo 4) Qual a função do algoritmo abaixo? R.: Imprimir dez vezes o nome informado pelo usuário. 76 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Algoritmo “exercicio_03” var cont : Inteiro NOME: caracter inicio escreva(“entre com um nome :”) leia(NOME) Para cont de 1 ate 10 faca escreva(NOME) fimpara FimAlgoritmo ATIVIDADES DE APRENDIZAGEM DA UNIDADE 3 Atividades – estrutura condicional 1) Faça um algoritmo para ler: a descrição do produto (nome), a quantidade adquirida e o preço unitário. Calcular e escrever o total (total = quantidade adquirida * preço unitário), o desconto e o total a pagar (total a pagar = total - desconto), sabendo-se que: • Se quantidade <= 5, o desconto será de 2%. • Se quantidade > 5 e quantidade <=10, o desconto será de 3%. • Se quantidade > 10, o desconto será de 5%. 77UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "produtos" var produto : caracter qtde, preco_unit, total, desconto, total_pagar : real inicio escreva ("Informe o nome do produto: ") leia(produto) escreva ("Informe a quantidade desejada: ") leia(qtde) escreva ("Informe o preço unitário R$") leia(preco_unit) total := (qtde * preco_unit) se (qtde <= 5) entao desconto := total * 0.02 senao se (qtde > 5) e (qtde <= 10) entao desconto := total * 0.03 senao desconto := total * 0.05 fimse fimse total_pagar := total- desconto escreval ("O valor total é de R$", total) escreval ("O desconto é de R$", desconto) escreval ("O total a pagar é de R$", total_pagar) fimalgoritmo 2) Um posto está vendendo combustíveis com a seguinte tabela de descontos: Álcool até 20 litros, desconto de 3% por litro acima de 20 litros, desconto de 5% por litro Gasolina até 20 litros, desconto de 4% por litro acima de 20 litros, desconto de 6% por litro Escreva um algoritmo que leia o número de litros vendidos e o tipo de combustível (codificado da seguinte forma: A - álcool, G - gasolina), calcule e imprima o valor a ser pago pelo cliente, sabendo-se que o preço do litro da gasolina é R$ 3,30 e o preço do litro do álcool é R$ 2,90. 78 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "combustivel" var tipo : caracter litros, totalpagar : real inicio escreva ("Digite A para Alcool ou G para Gasolina:") leia(tipo) // o comando abaixo (maiusc) converte a letra informada pelo usuário para maiuscula tipo := maiusc(tipo) escreva ("Informe a quantidade vendida em litros:" ) leia(litros) Escolha tipo caso "A" se (litros <= 20) entao totalpagar := litros * (2.90 - (2.90 * 0.03)) senao totalpagar := litros * (2.90 - (2.90 * 0.05)) fimse caso "G" se (litros <= 20) entao totalpagar := litros * (3.30 - (3.30 * 0.04)) senao totalpagar := litros * (3.30 - (3.30 * 0.06)) fimse fimescolha escreva("O valor total a ser pago é de R$", totalpagar) fimalgoritmo Atividades – estrutura de repetição – ENQUANTO/FAÇA Observação: embora seja possível desenvolver as atividades a seguir usando qualquer uma das estruturas de repetição apresentadas nessa unidade, os exercícios foram agrupados para usar os três tipos de estruturas. Desenvolva, inicialmente, usando a estrutura sugerida e depois tente adaptar para as outras estruturas de repetição. 3) Faça um algoritmo que imprima os números de 1 até 10. 79UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O Exemplo de saída: 1,2,3,4,5,6,7,8,9,10 algoritmo "exer03" var cont : inteiro inicio para cont:= 1 ate 10 faca escreva(cont, ", ") fimpara fimalgoritmo 4) Faça um algoritmo que imprima os números pares de 20 até 30. Exemplo de saída: 20,22,24,26,28,30 algoritmo "exer04" var cont : inteiro inicio para cont:= 20 ate 30 faca se (cont mod 2) = 0 entao escreva(cont, ", ") fimse fimpara fimalgoritmo 5) Faça um programa que receba vários números positivos ou negativos, terminada por zero. O programa deve fornecer como saída, a soma dos números positivos. Exemplo: Entre com um número: 26. Entre com um número: 40. Entre com um número: -5. Entre com um número: 10. Entre com um número: 0 (sai do laço). 80 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "exer05" var numero, soma : inteiro inicio numero := 1 enquanto (numero <> 0) faca escreva("Digite um número: ") leia(numero) se (numero mod 2) = 0 entao soma := soma + numero fimse fimenquanto escreva("o valor total somado é de: ", soma) fimalgoritmo 6) Ler um número não determinado de vezes um valor do teclado e escrever o valor da soma de todos os números digitados até o momento, até que seja digitado um número negativo. Exemplo: Entre com um número: 10. Entre com um número: 15. Entre com um número: 5. Entre com um número: -3. A soma é: 30. OBS.: não considere o valor negativo na soma. 81UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "exer06" var numero, soma : inteiro inicio numero := 1 enquanto (numero >= 0) faca escreva("Digite um número: ") leia(numero) se (numero >= 0) entao soma := soma + numero fimse fimenquanto escreva("o valor total somado é de: ", soma) fimalgoritmo Atividades – estrutura de repetição – REPITA/ATÉ Observação: analise as estruturas de repetição a seguir antes de desenvolver as atividades. Visualg C# Repita // bloco de comandos Até condição (verdadeira) do // bloco de comandos while condição (verdadeira) Repete o bloco de comandos até que a condição seja verdadeira. Repete o bloco de comandos enquanto a condição for verdadeira. 7) Uma empresa decidiu fazer um levantamento em relação aos candidatos que se apresentarem para preenchimento de vagas no seu quadro de funcionários. Supondo que você seja o programador dessa empresa, faça um Programa que leia para cada candidato a idade, o sexo (M ou F) e a experiência no serviço (S ou N). Para encerrar a entrada de dados, digite zero para a idade. Calcule e escreva: • Número de candidatos do sexo feminino. • Número de candidatos do sexo masculino. • A idade média dos homens que já têm experiência no serviço. • A porcentagem dos homens com mais de 45 anos entre o total dos homens. • Número de mulheres com idade inferior a 35 anos e com experiência no serviço. 82 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O • A menor idade entre as mulheres que já têm experiência no serviço. OBS.: para continuar o levantamento, solicite ao usuário se deseja continuar (S – SIM ou N – NÃO). O Algoritmo abaixo não pode ser feito utilizando a estrutura Repita-Até. 83UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O algoritmo "funcionarios" var idade, num_candidatas, num_candidatos, soma_idade, num_m_idade_experiencia, menor_idade_m_experiencia, num_candidatos_experiencia, num_candidatos_idosos: inteiro idade_media_h_experiencia, porcentagem_h_idade : real sexo, experiencia, continuar : caractere inicio num_candidatas := 0 num_candidatos := 0 num_m_idade_experiencia := 0 menor_idade_m_experiencia := 999 idade_media_h_experiencia := 0 porcentagem_h_idade := 0 soma_idade := 0 num_candidatos_experiencia := 0 num_candidatos_idosos := 0 continuar := "S" Repita escreva("Informe a idade do candidato: ") leia(idade) escreva("Informe o sexo 'M' - Masculino / 'F' - Feminino: ") leia(sexo) sexo := maiusc(sexo) escreva("Possui experiência? 'S' Sim / 'N' Não ") leia(experiencia) experiencia := maiusc(experiencia) //armazena a quantidade de pessoas do sexo feminino e masculino se (sexo = "F") entao num_candidatas := num_candidatas + 1 // armazena a menor idade da mulher com experiência. se (idade < menor_idade_m_experiencia) e (experiencia = "S") entao menor_idade_m_experiencia := idade fimse // armazena a qtde de mulheres com idade inferior a 35 anos e com experiência se (idade < 35) e (experiencia = "S") entao num_m_idade_experiencia := num_m_idade_experiencia + 1 fimse senao num_candidatos := num_candidatos + 1 //calcula a idade média dos homens que já têm experiência no serviço se (experiencia = "S") entao num_candidatos_experiencia := num_candidatos_experiencia + 1 soma_idade := idade + soma_idade 84 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD L Ó G I C A E T É C N I C A S D E P R O G R A M A Ç Ã O idade_media_h_experiencia := soma_idade / num_candidatos_experiencia
Compartilhar