Baixe o app para aproveitar ainda mais
Prévia do material em texto
Exercício 1: Qual a sequência que este algoritmo apresenta ao final? DECLARE cont, num1, num2, res NUMÉRICO num1 <— 0 num2 <— 1 ESCREVA num1 ESCREVA num2 PARA cont <— 3 ATÉ 8 FAÇA res <— num1 + num2 ESCREVA res num1 <— num2 num2 <— res FIM FIM_ALGORITMO A) 0 - 1 - 1 - 2 - 3 - 5 - 8 - 13 - 21 - 35 – 55 B) 0 - 1 - 1 - 2 - 3 - 5 - 8 - 13 - 21 C) 0 - 1 - 1 - 2 - 3 - 5 - 8 - 13 D) 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 E) 3 - 4 - 5 - 6 - 7 - 8 O aluno respondeu e acertou. Alternativa(C) Comentários: C) O algorítimo Imprime os 8 primeiros termos da sequência de Fibonacci: 0 1 1 2 3 5 8 13. Os 2 primeiros termos são 0 e 1. Após o segundo termo, cada termo é a soma dos 2 anteriores. Exercício 2: O que o algoritmo abaixo faz? DECLARE m, calc, i NUMÉRICO LEIA m ENQUANTO (m > 0) FAÇA INÍCIO calc <— 0 SE (RESTO (m/2) = 0) ENTÃO INÍCIO PARA i <— 1 ATÉ m FAÇA INÍCIO SE (RESTO (m/i) = 0) ENTÃO calc <— calc + 1 FIM ESCREVA calc FIM SENÃO INÍCIO PARA i <— 1 ATÉ m-1 FAÇA INÍCIO calc <— calc + i FIM ESCREVA calc FIM LEIA m FIM FIM_ALGORITMO. A) Lê um número determinado de valores para m, todos inteiros e positivos, um de cada vez. Se m for par, verifique quantos divisores possui. Se m for ímpar, calcule a soma dos números inteiros de l até m (m não deve entrar nos cálculos). Mostra os cálculos realizados. Finaliza a entrada de dados com m zero ou positivo. B) Lê um número indeterminado de valores para m, todos inteiros e positivos, um de cada vez. Se m for ímpar, verifique quantos divisores possui. Se m for par, calcule a soma dos números inteiros de l até m (m não deve entrar nos cálculos). Mostra os cálculos realizados. Finaliza a entrada de dados com m zero ou negativo. C) Lê um número indeterminado de valores para m, todos inteiros e positivos, um de cada vez. Se m for par, verifique quantos divisores possui. Se m for ímpar, calcule a soma dos números inteiros de l até m (m não deve entrar nos cálculos). Mostra os cálculos realizados. Finaliza a entrada de dados com m zero ou negativo. D) Lê um número determinado de valores para m, todos inteiros e negativos, um de cada vez. Se m for par, verifique quantos divisores possui. Se m for ímpar, calcule a soma dos números inteiros de l até m (m não deve entrar nos cálculos). Mostra os cálculos realizados. Finaliza a entrada de dados com m zero ou negativo. E) Lê um número indeterminado de valores para m, todos inteiros e positivos, um de cada vez. Se m for par, verifique quantos divisores possui. Se m for par, calcule a soma dos números inteiros de l até +1 (m não deve entrar nos cálculos). Mostra os cálculos realizados. Finaliza a entrada de dados com m zero ou negativo. O aluno respondeu e acertou. Alternativa(C) Comentários: C) analisando o algoritmo temos que o primeiro teste é se o número é par ou não. Se o número for par o algoritmo conta quantos divisores o número tem. No loop ele testa se (resto( m/i) = 0 ele conta um divisor porém ele vai até m. Se o número for ímpar, o algoritmo vai fazer outro cálculo. Somará os números até o par anterior ao número. Depois de feito esses cálculos, o resultado é exibido e um novo número é solicitado ao usuário. Se o usuário digitar 0, o programa sai do loop "enquanto" e termina Exercício 3: Dado o enunciado abaixo: Peça as horas de trabalho, número de horas trabalhadas no mês, e o percentual de desconto do INSS. O algoritmo deverá mostrar o salário bruto, o valor descontado e o valor do salário líquido. Sendo: Horas de trabalho = 160 Valor das Horas trabalhadas =20,00 Percentural de desconto = 30 Programa salario; Variáveis HT, VH,PD,TD,SB: real; Inicio Imprima “Digite as horas trabalhadas: “ Ler HT Imprima “Digite o valor das horas trabalhadas” Ler VH; Imprima “Digite o porcentual de desconto” Ler PD; SB<—HT * VH; TD <—(PD/100) * SB; // TD Total de desconto SL <—SB-TD; //SL Salário liquido Imprima “Salário Bruto é: “ , SB Imprima “Total de Descontos: “ , TD Imprima “Salário Liquido: “ , SL Fim. Qual será o resultado final? A) Salário bruto = 3.200 Total de descontos = 9,60 Salário líquido =2400,00 B) Salário bruto = 3.200 Total de descontos = 960,00 Salário líquido =2240,00 C) Salário bruto = 3.000 Total de descontos = 9,60 Salário líquido =2400 D) Salário bruto = 3.200 Total de descontos = 96,00 Salário líquido =2400,00 E) Salário bruto = 3.200 Total de descontos = 9,60 Salário líquido =2240,00 O aluno respondeu e acertou. Alternativa(B) Comentários: B) O resultado final será a letra B. Pois Salário Bruto (SB) são as horas trabalhadas vezes o valor das horas trabalhadas. Então: 160*20 = 3200 O total de descontos (TD) é 30% do Salário bruto, então: (30/100)*3200 = 960,00 E o salário líquido é o Salário bruto (SB) menos o total de descontos (TD), então: 3200-960 = 2240,00 Exercício 4: Sendo o custo de um espetáculo teatral igual a R$ 500.000,00 e o preço do convite desse espetáculo igual a R$ 80,00. Qual será a resposta do algoritmo abaixo: ALGORITMO SOLUÇÃO: ALGORITMO DECLARE custo, convite, qtd NUMÉRICO LEIA custo LEIA convite qtd <— custo / convite ESCREVA qtd FIM_ALGORITMO A) 6.250 convites B) 6.050 convites C) 7.250 convites D) 625 convites E) 605 convites O aluno respondeu e acertou. Alternativa(A) Comentários: A) Qtd <- custo/convite; Sendo assim, teremos: Qtd = 500.000 / 80 Qtd = 6250 Exercício 5: Faça um programa que receba o código correspondente ao cargo de um funcionário e seu salário atual e mostre o cargo, o valor do aumento e seu novo salário. Caso o usuário digite código 2 e o salário igual a R$ 1550,00. Qual será o resultado final do algoritmo? ALGORITMO SOLUÇÃO: ALGORITMO DECLARE salario, aumento, novo_sal, cargo NUMÉRICO ESCREVA “Digite o cargo do funcionário (1, 2, 3, 4 ou 5). LEIA cargo ESCREVA “Digite o valor do salario: “ LEIA salario SE (cargo = 1) ENTÃO INÍCIO ESCREVA “O cargo é Escriturário” aumento <— salario * 50 / 100 ESCREVA “O valor do aumento é: “, aumento novo_sal <— salario + aumento ESCREVA “O novo salario é: “, novo_sal FIM SENÃO SE (cargo = 2) ENTÃO INÍCIO ESCREVA “O cargo é Secretário” aumento <— salario * 35 / 100 ESCREVA “O valor do aumento é: “, aumento novo_sal <— salario + aumento ESCREVA “O novo salario é: “, novo_sal FIM SENÃO SE (cargo = 3) ENTÃO INÍCIO ESCREVA “O cargo é Caixa” aumento <— salario * 20 / 100 ESCREVA “O valor do aumento é: “, aumento novo_sal <— salario + aumento ESCREVA “O novo salario é: “, novo_sal FIM SENÃO SE (cargo = 4) ENTÃO INÍCIO ESCREVA “O cargo é Gerente” aumento <— salario * 10 / 100 ESCREVA “O valor do aumento é: “, aumento novo_sal <— salario + aumento ESCREVA “O novo salario é: “, novo_sal FIM SENÃO SE (cargo = 5) ENTÃO INÍCIO ESCREVA “O cargo é Diretor” aumento <— salario * 0 / 100 ESCREVA “O valor do aumento é: “, aumento novo_sal <— salario + aumento ESCREVA “O novo salario é: “, novo_sal FIM SENÃO ESCREVA “Cargo Inexistente!” FIM_ALGORITMO A) Cargo: Secretária – Valor do aumento 542,50 – Novo salário: 2092,50 B) Cargo: Gerente – Valor do aumento 542,50 – Novo salário: 2092,50 C) Cargo: Secretária – Valor do aumento 500,50 – Novo salário: 2092,50 D) Cargo: Caixa – Valor do aumento 542,50 – Novo salário: 2092,50 E) Cargo: Secretária – Valor do aumento 542,50 – Novo salário: 2000,50 O aluno respondeu e acertou. Alternativa(A) Comentários: A) O usuário digitando 2 irá entrar no "SENÃO SE (cargo = 2)" Em seguida escreve que o cargo é secretário Define que a variável aumento = 1.550*35/100 (542,50) e escreve Define a variável novo_sal = 1.550+542,50 (2092,50) e escreve na tela Fim do algoritmo Exercício 6: Sendo o salário de um funcionário igual a R$ 750,00, qual será o novo salário desse funcionário, acrescidode bonificações e de auxílio-escola? ALGORITMO ALGORITMO DECLARE sal, novo_sal, boni, aux NUMÉRICO LEIA sal SE sal <= 500 ENTÃO boni <— sal * 5% SE (sal > 500) E (sal <= 1200) ENTÃO boni <— sal * 12% SE (sal > 1200) ENTÃO boni <— 0 SE sal <= 600 ENTÃO aux <— 150 SE sal > 600 ENTÃO aux <— 100 novo_sal <— sal + boni + aux ESCREVA novo_sal FIM_ALGORITMO A) R$ 940,00 B) R$ 1.940,00 C) R$ 950,00 D) R$ 840,00 E) R$ 2.940,00 O aluno respondeu e acertou. Alternativa(A) Comentários: A) A função LEIA sal irá recolher o valor Este valor é calculado segundo os seguintes parâmetros de cada função: Se o valor de SAL for menor ou igual a 500; então a variável BONI (que será acrescida no final) recebe um bônus de 5%; Se o valor SAL for dado entre 500 ou 1200, então a variável BONI recebe um bônus de 12%; Se o valor de SAL for maior que 1200, então a variável BONI receberá 0 de valor. Sendo a condição verdadeira ou falsa, irá depender apenas do valor dado durante a função LEIA. Como foi dado R$ 750 a variável SAL, a primeira função retorna um valor falso indicando que a condição não foi preenchida pelo valor, SE sal <= 500 ENTÃO boni <- sal * 5% Ou seja, R$ 750 não é menor ou igual a R$ 500, portanto não há acréscimo de 5% para a variável BONI. Assim como na terceira função: SE (sal > 1200) ENTÃO boni <- 0 R$ 750 não é maior que 1200, portanto BONI não recebe 0. Agora... o valor de SAL preenche o requisito da segunda função, segundo seus parâmetros. SE (sal > 500) E (sal <= 1200) ENTÃO boni <- sal * 12% O Valor de Sal (R$ 750) preenche os requisitos e obedece os parâmetros da função, portanto boni recebe 12% do valor de SAL. Assim como na função: SE sal > 600 ENTÃO aux <- 100 SAL é maior que 600, portanto aux recebe o valor de 100. Tudo isto é acrescido no final, e o valor mostrado é a soma de todos os valores de cada variável. SAL (750) + BONI (750*12% = 90) + aux (100) = 940. Exercício 7: Um algoritmo e, posteriormente um programa, recebe dados. Tais dados precisam ser armazenados na memória do computador para serem utilizados no processamento. Portanto, para armazenarmos dados no computador utilizamos: A) Tabela ASCII B) Variáveis C) Bytes D) Variantes E) Types O aluno respondeu e acertou. Alternativa(B) Comentários: B) Elas armazenam dados na memória para serem chamadas posteriormente para realizar determinada função, seja ela uma soma, uma subtração ou armazenar um texto. Exercício 8: O trecho de fluxograma abaixo reflete apropriadamente que tipo de tomada de decisão: A) Tomada de decisão repetitiva B) Tomada de decisão por seleção C) Tomada de decisão encadeada D) Tomada de decisão seqüencial E) Tomada de decisão por ação O aluno respondeu e acertou. Alternativa(B) Comentários: B) um processo cognitivo que resulta na selecção de uma opção entre várias alternativas. Exercício 9: Temos os operadores MOD, DIV e SQR I – 3 MOD 2– Lê-se: Resto de divisão de três por dois II - 3 DIV 2 - Lê-se: Quociente de divisão de três por dois. III- SQRT 8 – Lê-se: Raiz quadrada de oito. IV - 3 MOD 2– Lê-se: Quociente de divisão de três por dois. V - SQR 8 – Lê-se Raiz quadrada de oito. Quais as alternativas incorretas? A) I, II e III B) IV e V C) II e IV D) Todas E) I e V O aluno respondeu e acertou. Alternativa(B) Comentários: A) I – 3 MOD 2– Lê-se: Resto de divisão de três por dois Correto. “MOD”, em programação, significa módulo, que tem como função a busca do resto da divisão entre dois números. Nesse caso, será 3 por 2. II - 3 DIV 2 - Lê-se: Quociente de divisão de três por dois. Correto. “DIV”, em programação, significa “divisão” e tem a mesma função da divisão feita pela calculadora: encontrar o quociente da divisão entre dois números. Nesse caso, será 3 por 2. III - SQRT 8 – Lê-se: Raiz quadrada de oito. Correto. “SQRT”, em programação, significa “raiz quadrada”, que tem como função devolver a raiz quadrada de um número definido. IV - 3 MOD 2– Lê-se: Quociente de divisão de três por dois. Incorreto. Como foi detalhado acima, “MOD” é para o resto da divisão, não para o quociente. V - SQR 8 – Lê-se Raiz quadrada de oito. Incorreto. “SQR”, em programação, serve para encontrar a raiz de um número, mas com índice não necessariamente igual a 2. Um exemplo, que é usado na calculadora do Windows é: sqr(indice, num). B) I – 3 MOD 2– Lê-se: Resto de divisão de três por dois Correto. “MOD”, em programação, significa módulo, que tem como função a busca do resto da divisão entre dois números. Nesse caso, será 3 por 2. II - 3 DIV 2 - Lê-se: Quociente de divisão de três por dois. Correto. “DIV”, em programação, significa “divisão” e tem a mesma função da divisão feita pela calculadora: encontrar o quociente da divisão entre dois números. Nesse caso, será 3 por 2. III - SQRT 8 – Lê-se: Raiz quadrada de oito. Correto. “SQRT”, em programação, significa “raiz quadrada”, que tem como função devolver a raiz quadrada de um número definido. IV - 3 MOD 2– Lê-se: Quociente de divisão de três por dois. Incorreto. Como foi detalhado acima, “MOD” é para o resto da divisão, não para o quociente. V - SQR 8 – Lê-se Raiz quadrada de oito. Incorreto. “SQR”, em programação, serve para encontrar a raiz de um número, mas com índice não necessariamente igual a 2. Um exemplo, que é usado na calculadora do Windows é: sqr(indice, num). Exercício 10: Dado o enunciado: A conversão de graus Farenheit para Celsius é obtida por c = 5/9*(F – 32). Faça um programa que calcule e escreva uma tabela de graus Celsius e graus Farenheit, cujos graus variem de 50 a 65 de 1 em 1. Qual a linha está errada? ALGORITMO Solução: 1) DECLARE cels, faren string 2) PARA faren <— 50 ATÉ 65 FAÇA 3) INÍCIO 4) ESCREVA faren 5) cels <— 5/9 * (faren – 32) 6) ESCREVA cels 7) FIM 8) FIM_ALGORITMO. A) 1 B) 2 C) 3 D) 4 E) 5 O aluno respondeu e acertou. Alternativa(A) Comentários: A) cels, faren tem q ser single, porque são números e não letras.
Compartilhar