Baixe o app para aproveitar ainda mais
Prévia do material em texto
LEMBRANDO: O programador (criador do algoritmo) escreve a seqüência de passos que soluciona um problema específico(algoritmo) de um cliente (usuário). Esta seqüência de passos permite que o problema possa ser resolvido de maneira automática e repetitiva. Após ser criado, sempre que o usuário quiser solucionar este problema, o algoritmo pode ser seguido por “alguém” ou por uma máquina (executor), produzindo as respostas desejadas. Em geral, para informar as respostas desejadas (solucionar o problema) o executor precisa de alguns dados que devem ser fornecidos pelo usuário quando o algoritmo está sendo executado. Portanto, quase sempre, um algoritmo opera sobre um conjunto de entradas, transformando-as, para gerar uma saída que seja útil para o usuário. No algoritmo, então, o programador deve instruir o executor a: � reservar e nomear locais (“caixas” ou “variáveis”) para guardar os valores fornecidos pelo usuário ou resultantes das operações. Estes locais são conhecidos como variáveis porque os valores que armazenam podem ser modificados/trocados. �interagir com o usuário quando precisa de valores: informando-o de sua necessidade e recebendo (“ouvindo e memorizando” , anotando, guardando) estes valores � transformar adequadamente o conjunto de dados de entrada gerando os valores que representam as respostas desejadas (que também devem ser guardados) � informar as respostas ao usuário Estas instruções podem ser escritas em uma pseudo-linguagem que simplifica a linguagem natural, desde que o executor a conheça. Na linguagem utilizada em sala de aula o foco da comunicação usuário executor é sob o ponto de vista do executor. Assim, quando o usuário informa um valor para o executor ocorre a entrada de um valor no universo do executor. Quando o executor informa uma mensagem ou um valor ao usuário ocorre uma saída do universo do executor. Em sala utilizaremos a seguinte pseudo-linguagem: Objetivo Instrução Reservar e nomear locais para guardar valores que o algoritmo utiliza Variáveis: nome_1ªcx, nome_2ªcaixa, ... Comunicar ( informar) ao usuário um valor armazenado em uma variável nome_cx >> SAIDA Comunicar ( informar) ao usuário uma mensagem (uma frase) “frase” >> SAIDA Receber ( “ouvir”, obter) um valor fornecido pelo usuário, armazenando-o em uma variável nome_cx << ENTRADA Realizar uma operação aritmética e o valor resultante da operação é armazenado em uma variável (atribuição) Nome_cx operação aritmética envolvendo valores e variáveis Para o programador encontrar a solução ele deve: – Identificar quais os valores devem ser mostrados ao usuário como resultado da execução do algoritmo, isto é, as respostas que o executor deve informar ao usuário(saídas) – Identificar quais os valores o usuário deve fornecer ao executor para que ele possa resolver o problema – Determinar como fazer (a seqüência de cálculos ) para que os valores de entrada sejam transformados nos valores de saída, isto é, que ações devem ser realizadas para depois de obter os valores necessários, transformá-los nas respostas desejadas. EXEMPLO 1: Faça um algoritmo que transforme uma temperatura na escala Celsius (C) para a correspondente em Fahrenheit (F). E: Temperatura em Celsius ( nº real) S: Temperatura em fahrenheit ( nº real) Como? Fórmula de conversão: F = 9/5 * C + 32 Variáveis: tempC, tempF “Caro usuário, informe a temperatura que você deseja converter:” >> SAIDA tempC<< ENTRADA tempF ���� 1.8 * tempC + 32 “Em fahrenheit esta temperatura equivale a ”>> SAIDA tempF>>SAIDA EXEMPLO 2 Faça um algoritmo para calcular quantos metros de madeira serão necessários e o preço a pagar para emoldurar um quadro cujas dimensões são fornecidas pelo usuário. Sabe-se que o preço do metro da madeira custa R$ 5,00 E: dimensões do quadro ( alt e compr) S: metragem e preço a pagar Como? Achar o perímetro p/ metragem e multiplicar pelo custo para o preço a pagar Variáveis: alt, compr, metragem, preco “Caro usuário, informe a altura e o comprimento do quadro:” >> SAIDA alt<< ENTRADA compr<< ENTRADA metragem ���� 2 * (alt+compr) preço ���� metragem * 5 “Qt de metros a comprar: ”>> SAIDA metragen>>SAIDA “Preço a pagar: “>>SAIDA Preço>>SAIDA EXERCÍCIOS 1)Escreva um algoritmo para converter uma temperatura em graus fahrenheit fornecida pelo usuário para a equivalente em Celsius 2) Escreva um algoritmo para obter as dimensões (comprimento, largura e altura) de um banheiro retangular, e mostrar a quantidade de caixas de azulejos para se colocar em todas as suas paredes. Cada caixa de azulejos possui 2 m2. a) considere que não será descontada a área ocupada pela porta e janela b) considere que as dimensões (comprimento e altura) da porta e da janela também serão informados pelo usuário. 3) Um motorista de táxi deseja calcular o rendimento de seu carro na praça. Faça um algoritmo que leia ( capture) a marcação do odômetro (Km) no início e no final do dia, o número de litros de combustível gasto e o valor total (R$) recebido dos passageiros. E informe : a média do consumo em Km/L e o lucro (líquido) do dia. Obs: O preço do GNV é de R$ 1,50, 4) Faça um programa que mostre o valor da entrada e de cada parcela a ser paga por uma pessoa. O total comprado e o número de parcelas serão fornecidos pelo usuário. A loja só parcela 70% do montante. b) Modifique o programa acima para que seja acrescido uma taxa de administração de crédito sobre o valor parcelado. Esta taxa equivale a 10% do valor parcelado e deve ser pago junto com a entrada 5) A sombra de uma pessoa que possui X metros de altura mede Y metros. No momento, ao seu lado, a sombra projetada de um poste mede Z metros. Se, mais tarde, a sombra do poste diminui K cm, quanto mediria a sombra da pessoa? Por exemplo, a sombra de uma pessoa que tem 1,80 m de altura mede 60 cm. No momento, a seu lado, a sombra projetada de um poste mede 2 m. Se, mais tarde, a sombra do poste diminui 50 cm, a sombra da pessoa passa a medir 45 cm. Obs: Como a altura do sol é a mesma para ambas as sombras, os dois triângulos retângulos da figura, são SEMELHANTES, isto é, a base do pequeno está para a base do grande assim como a altura do pequeno está para a altura do grande. Faça um algoritmo que mostre a altura do poste e quanto mede a sombra da pessoa mais tarde. O usuário informa os valores de X, Y, Z e K. 6) Faça um programa que leia a altura de uma pessoa fornecida em cms e exiba-a em m/cm. Ex: 120 � 1m 20cm 1ª situação 2ª situação 4 7) Faça um algoritmo que leia as duas notas de um aluno, calcule e imprima a sua média sabendo que a primeira nota tem peso 3 e a segunda nota tem peso 7. 8) Numa região sem postos de combustível um viajante deseja calcular o número mínimo de litros que deverá colocar no tanque de seu carro para que ele possa percorrer um determinada distância até o próximo abastecimento. Escreva um algoritmo que leia a distância até o primeiro posto e o consumo médio de combustível do carro (em Km/L). Calcular e escrever o número mínimo de litros necessários para percorrer até o primeiro posto. DESAFIO: Informe ao usuário a quantidade de litros que deverá colocar em um recipiente extra sabendo que o tanque de seu carro armazena no máximo 55 litros 9)Faça um algoritmo em pseudo-linguagem que calcule quantos litros de tinta serão necessários para pintar um tampo de mesa circular cujo raio (em m) é fornecido pelo usuário A) considere que com um litro de tinta pode-se pintar 2m2 C) DESAFIO: considerando que uma lata tem 10 l e só podem ser vendidaslatas fechadas, quantas latas serão necessárias?
Compartilhar