Baixe o app para aproveitar ainda mais
Prévia do material em texto
Gabarito das Autoatividades FUNDAMENTOS DA COMPUTAÇÃO (GTI) 2011/2 Módulo III 3UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O GABARITO DAS AUTOATIVIDADES DE FUNDAMENTOS DA COMPUTAÇÃO UNIDADE 1 TÓPICO 1 1 A partir do momento em que a humanidade começou a se preocupar com a necessidade de uma forma de comunicação, surgiram os símbolos, com seus respectivos significados. Qual o nome da primeira forma de escrita? R.: Cuneiforme. 2 A invenção da primeira forma de escrita, da cerveja, a fabricação do vidro e dos primeiros instrumentos agrícolas são atribuídas a um povo que ocupou a região atualmente conhecida como Iraque. Qual o nome desse povo? R.: Sumérios. 3 Diversos estudiosos da matemática contribuíram para o aperfeiçoamento dos cálculos e a criação de novas simbologias. Qual o nome do matemático responsável pela popularização dos algarismos de zero a nove e que contribuiu significativamente no ramo da Álgebra? R.: Al-Kowarizmi. 4 A partir do momento em que o homem passou a utilizar elementos para representação numérica e a realizar operações matemáticas, criou também dispositivos que facilitem o processo. Qual o primeiro artefato criado pelo homem para automatizar cálculos? R.: Ábaco. TÓPICO 2 1 A calculadora mecânica desenvolvida por Blaise Pascal é considerada um marco no processo de criação e evolução de dispositivos de automação de cálculos. Porém, a calculadora de Pascal, denominada Pascalina, permitia realizar apenas as operações de soma e subtração. Algum tempo depois, outro pesquisador construiu uma calculadora dotada também das operações de divisão e multiplicação. Qual o nome desse pesquisador? R.: Gottfried Wilhelm von Leibniz. 4 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O 2 Muitos pesquisadores tiveram participação no processo de evolução dos dispositivos de automação dos cálculos até que se chegasse aos modernos computadores. Nessa trajetória de evolução há um pesquisador que é considerado o pai do computador. Qual o nome dele? R.: Charles Babbage. 3 Computadores são máquinas que precisam ser dotadas de “inteligência” para que operem adequadamente. A essa “inteligência” chamamos software ou simplesmente programas. A descrição de como programas devem funcionar foi realizada no século XIX. Qual o nome da pessoa que descreveu os princípios da programação de computadores? R.: Lady Ada. 4 As exigências do mundo moderno tornam a utilidade da Tecnologia da Informação cada vez mais importante. Qual a primeira vez que a Tecnologia da Informação foi utilizada em larga escala para atender à necessidade de uma população? R.: Censo americano de 1890. TÓPICO 3 1 Diversas formas de representação dos números foram criadas através dos tempos, porém teve uma representação que passou a ser adotada como modelo universal. Como se chama esse modelo de algarismos? R.: Hindu-arábicos. 2 Os primeiros computadores eram essencialmente baseados em dispositivos eletromecânicos e a aritmética utilizada era a decimal. Num dado momento um pesquisador iniciou o uso da aritmética binária. Qual o nome desse pes- quisador? R.: Helmut Schreyer. 3 Durante a Segunda Guerra Mundial, dois dispositivos para codificação e decodificação de mensagens foram construídos. Esses dispositivos tiveram grande significação em sua utilização relativa às comunicações de guerra. Qual o nome deles? R.: Enigma e Colossus. 4 A ideia de uma máquina que pudesse executar quaisquer instruções base- adas em um programa foi concebida há bastante tempo, porém a descrição do funcionamento de tal máquina foi realizada apenas no século XX. Qual o 5UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O nome do pai da teoria da computabilidade? R.: Alan Mathison Turing. TÓPICO 4 1 A internet é produto de pesquisas sobre comunicação de dados para finalidades militares. O objetivo inicial da rede era permitir a comunicação mesmo que um dos nós entre emissor e receptor falhasse ou estivesse fora de operação. Por esse motivo criou-se o conceito de roteamento, no qual cada vez que a comunicação é estabelecida pode ocorrer numa diferente rota. Qual o primeiro nome que a internet recebeu? R.: ARPANET. 2 Diversos pesquisadores se empenharam em desenvolver ferramentas informatizadas que auxiliassem a aprendizagem. Um desses pesquisadores desenvolveu uma linguagem de programação para ingressantes em cursos de computação/informática. Qual o nome dessa linguagem de programação e por que ela recebeu esse nome? R.: O nome da linguagem de programação é Pascal, cujo nome foi dado em homenagem ao inventor da primeira calculadora mecânica, Blaise Pascal. 3 Diversas instituições contribuíram para a evolução da computação/ informática. Dentre essas, indique as duas que mais são populares atualmente e justifique por quê. R.: Dentre as mais populares estão a Microsoft, pelo fato de ter criado muitos softwares de uso fácil, e a Apple, que possui uma linha de produtos de alta tecnologia, como o iPhone, iPad, iPod, entre outros. 4 Descreva o que Bill Gates pretendia dizer quando pronunciou a frase “Um computador em cada casa e em cada mesa de trabalho”. R.: A ideia fundamental era a popularização dos recursos computacionais de tal forma que qualquer pessoa pudesse utilizá-los e tornar-se dependente deles. 5 A computação/informática, como outras áreas do conhecimento, possui ondas de tendências. A tendência nos primórdios era o uso de grandes equipamentos, depois surgiram os computadores pessoais, trazendo a onda da redução de tamanho. Quando a internet se tornou acessível às pessoas comuns, os microcomputadores continuaram sendo utilizados, porém a comunicação passou a ser realizada através de servidores com grande capacidade de processamento. A onda atual indica tendência em pequenos dispositivos de comunicação. Cite dois exemplos desses dispositivos. 6 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O R.: Smartphones (Apple iPhone, Samsung Galaxy, etc.) e tablets (Apple iPad, Samsung Galaxy Tab, Motorola Xoom, Toshiba Tablet, BlackBerry PlayBook, Lenovo IdeaPad U1 Hybrid, HP Slate etc.). UNIDADE 2 TÓPICO 1 1 Converter os valores da base decimal para a base binária: a) 89 = 1011001 b) 172 =10101100 2 Converter os valores da base decimal para a base octal: a) 125 = 175 b) 247 = 367 3 Converter os valores da base decimal para a base hexadecimal: a) 158 = 9E b) 218 = DA 4 Converter os valores da base binária para a base decimal: a) 100100101 = 293 b) 111011001 = 473 5 Converter os valores da base octal para a base decimal: a) 137 = 95 b) 253 = 171 6 Converter os valores da base hexadecimal para a base decimal: a) AF5 = 2805 b) B12 = 2834 TÓPICO 2 1 Descreva a função realizada pela Unidade de Lógica e Aritmética (ULA). R.: A Unidade de Lógica e Aritmética é responsável pela realização de operações lógicas, operações de deslocamento e operações aritméticas. O nome da unidade já identifica as principais funções, que são o tratamento de operações lógicas e a realização e operações aritméticas. 2 Descreva a função de um Sistema Operacional dentro de um sistema computacional. R.: O Sistema Operacional é um software, tipicamente formado por um conjunto de programas, que tem a finalidade de prover uma interface entre o hardware e as aplicações utilizadas pelos usuários deste hardware. O Sistema Operacional também é dito como o software que permite tornar o hardware 7UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O útil, pois o hardware sem um Sistema Operacional é pouco útil para a grande maioria dos usuários. 3 Descreva a finalidade de uma ferramenta de desenvolvimento. R.: As ferramentas de desenvolvimento têm a finalidade de permitir que sejam construídos programas, tipicamente programas aplicativos para auxiliar osusuários em suas atividades profissionais. 4 Descreva a diferença entre um sinal analógico e um sinal digital. R.: Um sinal analógico tem a característica de possuir uma variação denominada contínua, formando o que se chama de ondas. Já o sinal digital tem a característica de possuir uma variação na forma de pulsos. 5 Qual a abrangência de uma rede WAN? R.: As redes WAN (Wide Area Network) são tipicamente denominadas de redes de longa distância, as quais podem abranger cidades, países ou continentes. TÓPICO 3 1 Qual é o principal enfoque da Engenharia de Software? R.: O principal enfoque da Engenharia de Software é lidar com os aspectos relativos a como softwares são planejados, construídos e implantados. Isso significa também um cuidado com todas as fases do ciclo de vida do software. 2 Quais são os quatro fundamentos absolutos de gestão da qualidade, de acordo com Crosby (1979)? R.: Os quatro fundamentos de gestão da qualidade de acordo com Crosby (1979) são: • Qualidade é definida como conformidade com os requisitos. • A forma para obter qualidade é a prevenção, não inspeção. • O padrão de desempenho deve ser zero defeitos, não sendo aceito meio termo. • A medida da qualidade é o custo da qualidade. 3 Quais são os processos definidos por Juran (1988) para o gerenciamento da qualidade? R.: Os processos propostos por Juran (1988) para o gerenciamento da qualidade são: • Planejamento da qualidade. • Controle da qualidade. • Melhoria da qualidade. 8 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O 4 Quais os objetivos da realização do processo de medição? R.: Os objetivos da realização do processo de medição são: • prover apoio à gerência e melhoria de processos de software; • prover apoio à gerência e melhoria de produtos de software. 5 Qual é o recurso de um sistema de banco de dados que permite o gerencimento de acessos concorrentes por diferentes processos ao mesmo conjunto de dados? R.: O gerenciamento de transação. TÓPICO 4 1 Uma mídia capturada pode ser contínua? Explique e exemplifique. R.: Sim, um vídeo capturado é uma mídia contínua. 2 Uma mídia sintetizada pode ser discreta? Explique e exemplifique. R.: Sim, um desenho produzido em computador é uma mídia sintetizada discreta. 3 Quais são as categorias em que são divididos os sistemas multimídia? R.: Standalone e distribuídos. 4 Qual o nome do fenômeno da sensação de continuidade das imagens em um vídeo? R.: Persistência da visão. 5 Qual a principal solução utilizada para viabilizar a transmissão de dados mutimídia na internet? R.: Compressão dos dados. 9UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O UNIDADE 3 TÓPICO 1 1 Assinale os identificadores corretamente definidos: a) (x) _Soma b) ( ) 2Numero c) (x) Numero2 d) (x) primeirovalor e) ( ) índice f) ( ) caminhão g) ( ) c_avião h) (x) sNome i) ( ) $Valor j) ( ) #Telefone k) (x) TotalBruto l) (x) Total m) (x) Data n) (x) endereco_32 o) ( ) A&C p) (x) a q) ( ) rel&gio r) (x) X_y_Z s) (x) HoRa t) (x) Continua u) (x) H2O 2 Defina o tipo de dado mais adequado para as variáveis segundo o conteúdo a ser armazenado: a) Nome a) ( ) inteiro b) ( ) real c) (x) caractere d) ( ) lógico b) Metros a) ( ) inteiro b) (x) real c) ( ) caractere d) ( ) lógico c) Quantidade a) (x) inteiro b) ( ) real c) ( ) caractere d) ( ) lógico d) Endereco a) ( ) inteiro b) ( ) real c) (x) caractere d) ( ) lógico e) Achou a) ( ) inteiro b) ( ) real c) ( ) caractere d) (x) lógico 3 Assinale o tipo de operador utilizado em cada expressão, considerando que uma expressão pode conter mais de um operador: a) 198 + 12 a) (x) Aritmético b) ( ) Aritmético e Lógico c) ( ) Relacional e Aritmético b) (Parar = Sim) ou (Sinal = ‘Vermelho’) 10 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O a) ( ) Aritmético e Lógico b) ( ) Aritmético e Relacional c) (x) Lógico e Relacional c) ((10 / 5) + (3 * 2)) = 8 a) ( ) Aritmético b) ( ) Aritmético e Lógico c) (x) Aritmético e Relacional d) (Soma >= 5) e (Soma <= 50 ) a) ( ) Aritmético e Lógico b) (x) Lógico e Relacional c) ( ) Aritmético e Relacional e) (Valor_Compra – Desconto) > LimiteCredito a) (x) Aritmético e Relacional b) ( ) Relacional e Lógico c) ( ) Relacional 4 Desenvolva os algoritmos propostos a seguir. a) Elabore um algoritmo que leia o preço de compra, o percentual de acréscimo e calcule o preço de venda de uma mercadoria. Ao final, escreva o preço de compra, o acréscimo aplicado e o preço de venda. R.: Algoritmo CalculaVenda; variaveis PrecoCompra, PrecoVenda, Percentual : real; inicio escreva('Informe o preço de compra: '); leia(PrecoCompra); escreva('Informe o percentual: '); leia(Percentual); Acrescimo ← (PrecoCompra * Percentual) / 100; PrecoVenda ← PrecoCompra + Acrescimo; escreva('Preço de compra..: ', PrecoCompra); escreva('Acréscimo........: ', Acrescimo); escreva('Preço de venda...: ', PrecoVenda); fim. b) Construa um algoritmo que leia o capital e uma taxa de rendimento a ser 11UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O aplicada. Escreva o capital, a taxa de rendimento, o rendimento e o montante (capital + rendimento). R.: Algoritmo CalculaCapital; variaveis Capital, Taxa, Rendimento, Montante : real; inicio escreva('Informe o valor do capital: '); leia(Capital); escreva('Informe o valor da taxa (%): '); leia(Taxa); Rendimento ← (Capital * Taxa) / 100; Montante ← Capital + Rendimento; escreva('O valor do capital é ', Capital); escreva('A taxa aplicada foi ', Taxa); escreva('O rendimento foi de ', Rendimento); escreva('O montante é de ', Montante); fim. c) Elabore um algoritmo que leia um número, identifique se é par ou ímpar e escreva o resultado. R.: Algoritmo ParImpar; variaveis Numero : inteiro; Resultado : caractere; inicio escreva('Informe um número: '); leia(numero); se ((numero mod 2) = 0) entao Resultado ← 'par' senao Resultado ← 'ímpar'; escreva('O número informado é ', Resultado); fim. d) Faça um algoritmo que leia quatro notas de um aluno e escreva a média obtida. R.: Algoritmo MediaAluno; variaveis Nota1, Nota2, Nota3, Nota4, Media : real; inicio 12 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O escreva('Informe a primeira nota: '); leia(Nota1); escreva('Informe a segunda nota: '); leia(Nota2); escreva('Informe a terceira nota: '); leia(Nota3); escreva('Informe a quarta nota: '); leia(Nota4); Media ← (Nota1 + Nota2 + Nota3 + Nota4) / 4; escreva('A média das notas é ', Media); fim. e) Um mercado resolveu oferecer três condições de pagamento a prazo aos clientes (15, 30 ou 45 dias). Construa um algoritmo para ler o valor da compra e a taxa de juros para cada um dos prazos e escreva quanto o cliente irá pagar em cada condição. R.: Algoritmo CondicoesPagto; variaveis ValorCompra, Taxa15, Taxa30, Taxa45 : real; Pagar15, Pagar30, Pagar45 : real; inicio escreva('Informe o valor da compra: '); leia(ValorCompra); escreva('Informe a taxa para pagamento em 15 dias: '); leia(Taxa15); escreva('Informe a taxa para pagamento em 30 dias: '); leia(Taxa30); escreva('Informe a taxa para pagamento em 45 dias: '); leia(Taxa45); Pagar15 ← ValorCompra + ((ValorCompra * Taxa15) / 100); Pagar30 ← ValorCompra + ((ValorCompra * Taxa30) / 100); Pagar45 ← ValorCompra + ((ValorCompra * Taxa45) / 100); escreva('Para pagamento em 15 dias o valor será R$ ', Pagar15); escreva('Para pagamento em 30 dias o valor será R$ ', Pagar30); 13UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O escreva('Para pagamento em 45 dias o valor será R$ ', Pagar45); fim. TÓPICO 2 1 Desenvolva os algoritmos propostos a seguir. a)Elabore um algoritmo onde será lido o valor de vários itens de compra e ao final escreva o valor a ser pago. O algoritmo deverá continuar lendo itens enquanto o valor digitado for diferente de zero. R.: Algoritmo Compras; variaveis Valor, Somatorio : real; inicio Somatorio ← 0; escreva('Informe o valor do item de compra (0 para parar): '); leia(Valor); enquanto (Valor <> 0) faca inicio Somatorio ← Somatorio + Valor; escreva('Informe o valor do item de compra (0 para parar): '); leia(Valor); fim enquanto; escreva('O valor a ser pago é R$ ', Somatorio); fim. b) Uma loja deseja saber quantos clientes compram 1 = à vista, 2 = 30 dias e 3 = 60 dias. Desenvolva um algoritmo que leia uma quantidade ilimitada de clientes. Ao informar zero, o algoritmo será finalizado e deverá apresentar quantos clientes foram digitados em cada condição. R.: Algoritmo Estatistica; variaveis Opcao, QtdeAVista, Qtde30Dias, Qtde60Dias : inteiro; inicio QtdeAVista ← 0; Qtde30Dias ← 0; Qtde60Dias ← 0; escreva('Informe a opção de pagamento do cliente (1=à 14 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O vista/ 2=30 dias/ 3=60 dias): '); leia(Opcao); enquanto (Opcao <> 0) faca inicio escolha Opcao caso 1 : QtdeAVista ← QtdeAVista + 1; caso 2 : Qtde30Dias ← Qtde30Dias + 1; caso 3 : Qtde60Dias ← Qtde60Dias + 1; senao escreva('Opção informada deve ser apenas 1=à vista/ 2=30 dias/ 3=60 dias!'); fim escolha; escreva('Informe a opção de pagamento do cliente (1=à vista/ 2=30 dias/ 3=60 dias): '); leia(Opcao); fim enquanto; escreva('Opções de pagamento selecionadas: '); escreva('À vista = ', QtdeAVista); escreva('30 Dias = ', Qtde30Dias); escreva('60 Dias = ', Qtde60Dias); fim. c) Construa um algoritmo para calcular e escrever o IMC (Índice de Massa Corporal) de uma pessoa. São fornecidos o nome da pessoa, o peso e a al- tura. A fórmula para calcular o IMC é o peso dividido pela altura ao quadrado. Com base no resultado do cálculo do IMC, escreva o resultado conforme as seguintes faixas: até 20,0 (inclusive) = abaixo do peso acima de 20,0 e abaixo de 25,0 = peso normal entre 25,0 e abaixo de 30,0 = sobrepeso entre 30,0 e abaixo de 40,0 = obeso 40,0 e acima = obeso mórbido O algoritmo deverá ser executado até que seja informado “FIM” no nome da pessoa. R.: Algoritmo CalculaIMC; variaveis Peso, Altura, IMC : real; Nome, Classificacao : caractere; inicio escreva('Informe o nome da pessoa: '); leia(Nome); enquanto (Nome <> 'FIM') faca 15UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O inicio escreva('Informe o peso da pessoa: '); leia(Peso); escreva('Informe a altura da pessoa: '); leia(Altura); IMC ← Peso / (Altura * Altura); se (IMC <= 20) entao Classificacao ← 'Abaixo do peso' senao se (IMC < 25) entao Classificacao ← 'Peso normal' senao se (IMC < 30) entao Classificacao ← 'Sobrepeso' senao se (IMC < 40) entao Classificacao ← 'Obeso' senao Classificacao ← 'Obeso mórbido' fim se; fim se; fim se; fim se; escreva('A pessoa é/está ', Classificacao); escreva('Informe o nome da pessoa: '); leia(Nome); fim enquanto; fim. d) Faça um algoritmo que leia o nome de uma pessoa e várias ligações telefônicas (número do telefone e valor da ligação), enquanto o número do telefone informado for diferente de zero. Ao final, escreva o nome do cliente e o valor da conta telefônica. R.: Algoritmo Telefone; variaveis Nome, Fone : caractere; Somatorio, Valor : real; inicio Somatorio ← 0; escreva('Informe o nome da pessoa: '); leia(Nome); escreva('Informe o número do telefone: '); 16 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O leia(Fone); enquanto (Fone <> ) faca inicio escreva('Informe o valor: '); leia(Valor); Somatorio ← Somatorio + Valor; escreva('Informe o número do telefone: '); leia(Fone); fim enquanto; escreva('O valor da conta de ', Nome, ' é R$ ', Somato- rio); fim. e) No controle de qualidade de uma empresa são classificadas as mercadorias como de primeira, de segunda e refugo. Elabore um algoritmo para ler 100 peças e no final escreva quantas são de primeira, quantas são de segunda e quantas são refugo. R.: Algoritmo Qualidade; variaveis Indice, Tipo, Primeira, Segunda, Refugo : inteiro; inicio Primeira ← 0; Segunda ← 0; Refugo ← 0; para Indice de 1 ate 100 faca inicio escreva('Informe a classificação da peça (1=primeira/ 2=segunda/ 3=refugo): '); leia(Tipo); escolha Tipo caso 1 : Primeira ← Primeira + 1; caso 2 : Segunda ← Segunda + 1; caso 3 : Refugo ← Refugo + 1; senao escreva('Opção informada deve ser apenas 1=pri- meira/ 2=segunda/ 3=refugo!'); fim escolha; fim para; escreva('As quantidades de peças são: '); escreva('Primeira = ', Primeira); escreva('Segunda = ', Segunda); escreva('Refugo = ', Refugo); fim. 17UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O TÓPICO 3 1 Desenvolva os algoritmos propostos a seguir. a) Elabore um algoritmo que leia 30 números inteiros e utilizando um subal- goritmo que recebe como parâmetro se deve mostrar os números pares ou ímpares. Ao final, mostre os números pares e depois os números ímpares. R.: Algoritmo ParesImpares; constante Max = 30; tipo TNumeros = Vetor[1..Max] de inteiro; variaveis ListaNumeros : TNumeros; Indice, Numero : inteiro; Subalgoritmo Listagem(Pares : logico); variaveis IndLocal : inteiro; inicio para IndLocal de 1 ate Max faca inicio se (Pares = verdadeiro) entao inicio se ((ListaNumeros[IndLocal] mod 2) = 0) entao escreva(ListaNumeros[IndLocal]); senao se ((ListaNumeros[IndLocal] mod 2) <> 0) entao escreva(ListaNumeros[IndLocal]); fim se; fim para; fim; inicio para Indice de 1 ate 30 faca inicio escreva('informe um número inteiro: '); leia(Numero); ListaNumeros[Indice] ← Numero; fim para; escreva('Listagem dos número pares: '); 18 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O Listagem(verdadeiro); escreva('Listagem dos número ímpares: '); Listagem(falso); fim. b) Para manter uma conta corrente, um banco cobra R$ 29,90 mensais de taxa. Construa um algoritmo que leia quantos correntistas o banco possui e mostre quanto o banco arrecadará em um ano. O cálculo deverá ser realizado por um subalgoritmo. R.: Algoritmo Banco; constantes TaxaMensal = 29.90; variaveis QtdeCorrentistas : inteiro; Arrecadacao : real; Subalgoritmo Calcula(Qtde : inteiro): real; inicio Calcula ← QTde * TaxaMensal; fim; inicio escreva('Informe a quantidade de correntistas do banco: '); leia(QtdeCorrentistas); escreva('O banco arrecadará R$ ', Calcula(QtdeCorrentistas)); fim. c) Em uma competição de agilidade são cadastrados 20 cães. Construa um algoritmo que leia o nome, a raça e a pontuação do cão. Ao final, utilize um subalgoritmo para mostrar os dados em ordem crescente de pontuação. R.: subalgoritmo Impressao; variaveis IndLocal, PontosLocal : inteiro; Trocou : logico; NomeLocal, RacaLocal : caractere; inicio Trocou ← verdadeiro; while Trocou faca inicio Trocou ← falso; 19UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O para IndLocal de 2 ate Max faca inicio se (Lista[IndLocal.Pontuacao < Lista[IndLocal-1]. Pontuacao) entaoinicio NomeLocal ← Lista[IndLocal].Nome; RacaLocal ← Lista[IndLocal].Raca; PontosLocal ← Lista[IndLocal].Pontuacao; Lista[IndLocal].Nome ← Lista[IndLocal-1]. Nome; Lista[IndLocal].Raca ← Lista[IndLocal-1]. Raca; Lista[IndLocal].Pontuacao ← Lista[IndLocal-1]. Pontuacao; Lista[IndLocal-1].Nome ← NomeLocal; Lista[IndLocal-1].Raca ← RacaLocal; Lista[IndLocal-1].Pontuacao ← PontosLocal; Trocou ← verdadeiro; fim se; fim para; fim enquanto; para IndLocal de 1 ate Max faca escreva('Nome: ', Lista[IndLocal].Nome, ' Raça: ', Lista[IndLocal].Raca, ' Pontuação: ', Lista[IndLocal. Pontuacao); fim; inicio para Indice de 1 ate Max faca inicio escreva('Informe o nome do cão: '); leia(Nome); escreva('Informe a raça: '); leia(Raca); escreva('Informa a pontuação: '); leia(Pontos); Lista[Indice].Nome ← Nome; Lista[Indice].Raca ← Raca; Lista[Indice].Pontuacao ← Pontos; fim para; Impressao; fim. 20 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O d) Faça um algoritmo que leia a descrição e o valor de cada item de uma lista de material escolar. Em seguida, mostre a lista (descrição e valor) e o percentual que cada item representa em relação ao valor total da compra. O percentual deverá ser calculado por um subalgoritmo. R.: Algoritmo Materiais; constantes Max = 100; tipo TMateriais Descricao : caractere; Valor : real; fim registro; TVetor = Vetor[1..Max] de TMateriais; variaveis Lista : TVetor; Indice : inteiro; Descricao : caractere; Valor, Somatorio : real; subalgoritmo Calcula(Total, Vlr : real); inicio Calcula ← (Vlr 100)/ Total; fim; inicio Somatorio ← 0; QtdeItens ← 0; escreva('Informe a descrição ("FIM" para encerrar): '); leia(Descricao); enquanto (Descricao <> 'FIM') faca inicio escreva('Informe o valor do item: '); leia(Valor); Somatorio ← Somatorio + Valor; QtdeItens ← QtdeItens + 1; Lista[QtdeItens].Descricao ← Descricao; Lista[QtdeItens].Valor ← Valor; escreva('Informe a descrição ("FIM" para encerrar): '); 21UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O leia(Descricao); fim enquanto; para Indice de 1 ate QtdeItens faca inicio escreva('Descrição ', Lista[Indice].Descricao); escreva('Valor ', Lista[Indice].Valor); escreva('Representatividade do item ', Calcula(Somatorio, Lista[Indice].Valor), ' %'); fim para; fim. e) Em um cinema são apresentados cinco filmes. Construa um algoritmo que leia o nome do filme, a categoria, o gênero e a bilheteria alcançada. Utilizando um subalgoritmo, mostre qual foi o campeão de bilheteria e quanto em percentual ele está à frente do último colocado. R.: Algoritmo Cinema; constantes Max = 5; tipo TDados Nome : caractere; Categoria : caractere; Genero : caractere; Bilheteria : inteiro; fim registro; TVetor = Vetor[1..Max] de TDados; variaveis Lista : TVetor; Indice : inteiro; Nome, Categoria, Genero : caractere; Bilheteria : inteiro; subalgoritmo Seleciona; variaveis IndLocal, Menor, Maior : inteiro; inicio Menor ← 1; Maior ← 1; para IndLocal de 1 ate Max faca inicio 22 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O se (Lista[IndLocal].Bilheteria < Lista[Menor]. Bilheteria) entao Menor ← IndLocal; se (Lista[IndLocal].Bilheteria > Lista[Maior]. Bilheteria) entao Maior ← IndLocal; fim para; escreva('O campeão de biblheteria é ', Lista[Maior]. Nome); escreva('Ele está ', (Lista[Maior].Bilheteria * 100)/ Lista[Menor].Bilheteria, '% à frente do último colocado'); fim; inicio para Indice de 1 ate Max faca inicio escreva('Informe o Nome do filme: '); leia(Nome); escreva('Informe a Categoria do filme: '); leia(Categoria); escreva('Informe o gênero do filme: '); leia(Genero); escreva('Informe a bilheteria: '); leia(Bilheteria); Lista[Indice].Nome ← Nome; Lista[Indice].Categoria ← Categoria; Lista[Indice].Genero ← Genero; Lista[Indice].Bilheteria ← Bilheteria; fim para; Seleciona; fim. TÓPICO 4 1 Elabore os algoritmos propostos a seguir. a) Elabore um algoritmo que implemente uma matriz de 15 X 12 onde as linhas são os produtos em estoque e as colunas são as quantidades incluídas em cada mês do ano. Ao terminar a inclusão dos dados, liste a matriz. R.: Algoritmo Matriz15x12; constantes MaxCol = 12; 23UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O MaxLin = 15; tipo TMatriz = Vetor[1..MaxCol, 1..MaxLin] de inteiro; variaveis Matriz : TMatriz; IndL, IndC, Qtde : inteiro; inicio para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva('Informe a quantidade do produto ', IndL, ' para o mês ', IndC); leia(Qtde); Matriz[IndC, IndL] ← Qtde; fim para; fim para; escreva('Listagem dos dados:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva('A quantidade do produto ', IndL, ' para o mês ', IndC, ' é ', Matriz[IndC, IndL]); fim para; fim para; fim. b) Faça um algoritmo que leia uma matriz de 5 X 5 e multiplique cada um dos seus elementos por um número qualquer. Carregue uma segunda matriz com os valores multiplicados. Ao final, liste a matriz original e a matriz com os números multiplicados. R.: Algoritmo Matriz5x5; constantes MaxCol = 5; MaxLin = 5; tipo TMatriz = Vetor[1..MaxCol, 1..MaxLin] de inteiro; 24 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O variaveis Matriz1, Matriz2 : TMatriz; IndL, IndC, Numero, Fator : inteiro; inicio para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva('Informe o número para a posição ', IndC, '/', IndL); leia(Numero); Matriz1[IndC, IndL] ← Numero; fim para; fim para; escreva('Informe o fator multiplicador: '); leia(Fator); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio Matriz2[IndC, IndL] ← Matriz1[IndC, IndL] * Fator; fim para; fim para; escreva('Listagem dos dados da matriz 1:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva(Matriz1[IndC, IndL]); fim para; fim para; escreva('Listagem dos dados da matriz 2:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva(Matriz2[IndC, IndL]); fim para; fim para; fim. 25UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O c) Construa um algoritmo que leia duas matrizes de 3 X 3 e ao final mostre as matrizes e uma terceira matriz com a soma das duas. R.: Algoritmo Matriz3x3; constantes MaxCol = 3; MaxLin = 3; tipo TMatriz = Vetor[1..MaxCol, 1..MaxLin] de inteiro; variaveis Matriz1, Matriz2, Matriz3 : TMatriz; IndL, IndC, Numero : inteiro; inicio escreva('Entrada dos dados da matriz 1:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva('Informe o número para a posição ', IndC, '/', IndL); leia(Numero); Matriz1[IndC, IndL] ← Numero; fim para; fim para; escreva('Entrada dos dados da matriz 2:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLinfaca inicio escreva('Informe o número para a posição ', IndC, '/', IndL); leia(Numero); Matriz2[IndC, IndL] ← Numero; fim para; fim para; para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio Matriz3[IndC, IndL] ← Matriz1[IndC, IndL] + 26 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O Matriz2[IndC, IndL]; fim para; fim para; escreva('Listagem dos dados da matriz 1:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva(Matriz1[IndC, IndL]); fim para; fim para; escreva('Listagem dos dados da matriz 2:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva(Matriz2[IndC, IndL]); fim para; fim para; escreva('Listagem dos dados da matriz 3:'); para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva(Matriz3[IndC, IndL]); fim para; fim para; fim. d) Uma empresa de turismo solicitou uma pesquisa que coletou dados sobre o local onde as pessoas gostam de estar nos dias de feriado. A pesquisa disponibilizou as opções: em casa, na praia ou no campo e dividiu em faixas de idade: até 15 anos, de 16 a 25, de 26 a 40 e acima de 40 anos. Faça um algoritmo que armazene os dados solicitados em uma matriz de 3 X 4 onde as linhas são as opções e as colunas são as faixas de idade. Ao final, mostre do total de pessoas pesquisadas qual o local mais escolhido e qual o local que as pessoas acima de 40 anos preferem. R.: Algoritmo Matriz3x4; constantes MaxCol = 3; MaxLin = 4; 27UNIASSELVI NEAD GABARITO DAS AUTOATIVIDADES F U N D A M E N T O S D A C O M P U T A Ç Ã O tipo TMatriz = Vetor[1..MaxCol, 1..MaxLin] de inteiro; variaveis Matriz : TMatriz; IndL, IndC, Opcao, Idade : inteiro; Total, Soma, Maior, Maior40 : inteiro; inicio para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio Matriz[IndC, IndL] ← 0; fim para; fim para; escreva('Informe o local em que prefere passar os fe- riados:'); escreva('0 = concluir digitação, 1 = em casa, 2 = na praia ou 3 = no campo: '); leia(Opcao); enquanto (Opcao <> 0) faca inicio escreva('Informe sua idade:'); escreva('1 = até 15, 2 = até 25, 3 = até 40 e 4 = acima de 40 anos:'); leia(Idade); Matriz[Opcao, Idade] ← Matriz[Opcao, Idade] + 1; fim enquanto; Total ← 0; para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio Total ← Total + Matriz[IndC, IndL]; fim para; fim para; escreva('O total de pessoas pesquisadas foi ', Total); fim. e) Para controlar a qualidade da água de uma fonte são retiradas três amostras de manhã e três amostras à tarde. Uma análise considera o grau de turbidez, que varia de 0 a 5 pontos. Construa um algoritmo com uma matriz de 2 X 28 GABARITO DAS AUTOATIVIDADES UNIASSELVI NEAD F U N D A M E N T O S D A C O M P U T A Ç Ã O 3 que armazene estes dados e ao final mostre em qual período a água se encontrava melhor, qual o grau de turbidez, em qual período se encontrava pior e o grau de turbidez. R.: Algoritmo Matriz2x3; constantes MaxCol = 2; MaxLin = 3; tipo TMatriz = Vetor[1..MaxCol, 1..MaxLin] de inteiro; variaveis Matriz : TMatriz; IndL, IndC, Manha, Tarde : inteiro; inicio Manha ← 0; Tarde ← 0; para IndC de 1 ate MaxCol faca inicio para IndL de 1 ate MaxLin faca inicio escreva('Informe o grau de turbidez: '); leia(Matriz[IndC, IndL]); fim para; fim para; para IndL de 1 ate MaxLin faca inicio Manha ← Manha + Matriz[1, IndL]; fim para; para IndL de 1 ate MaxLin faca inicio Tarde ← Tarde + Matriz[2, IndL]; fim para; se (Manha > Tarde) então escreva('O maior grau de turbidez ocorre pela manhã') senao escreva('O maior grau de turbidez ocorre pela tarde'); fim se; fim.
Compartilhar