You are on page 1of 58

Algoritmos

Prof. Ricardo Luiz de Freitas


ricardo@fumec.br
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
2
Aulas
1 - Conceitos de Algoritmo
2 - Compiladores, Dados, Variveis, Comandos leia e escreva
3 - Comando de atribuio, Expresses Aritmticas
4 - Comando Condicional SE
5 - Comando Condicional CASO
6 - Comando de Repetio PARA
7 - Sries Matemticas
8 - Comando de Repetio REPITA
9 - Comando de Repetio ENQUANTO
10 Vetor
11 Matriz
12 Mapeamento ALGORITMO x PASCAL
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
3
Aula 1
Conceito de ALGORITMOS
Estruturas bsicas de um Algoritmo
Seqencial
Condicional
Repetio
Exerccio

Prof. Ricardo Luiz de Freitas ricardo@fumec.br
4
Conceitos de Algoritmos
Algoritmo a descrio de uma seqncia
de passos que deve ser seguida para a
realizao de uma tarefa;
Algoritmo uma seqncia finita de
instrues ou operaes cuja execuo, em
tempo finito, resolve um problema
computacional;
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
5
Exemplos de Algoritmos
Como fazer um sanduche?

Passo 1 Pegar um po
Passo 2 Cortar o po ao meio
Passo 3 Pegar a maionese
Passo 4 Passar a maionese no po
Passo 5 Pegar o alface e o tomate
Passo 6 Cortar o tomate
Passo 7 Colocar alface e o tomate no po
Passo 8 Pegar o hambrguer
Passo 9 Fritar o hambrguer
Passo 10 Colocar o hambrguer no po
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
6
Um rob conseguiria executar o algoritmo e fazer um sanduche?
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
7
Como fazer um sanduche (verso 2)
Passo 1 Pegar um po
Passo 2 Cortar o po ao meio em sentido longitudinal
Passo 3.1 Abrir a geladeira
Passo 3.2 Pegar o vidro de maionese na geladeira
Passo 3.3 Fechar a porta da geladeira
Passo 3.4 Girar a tampa do vidro de maionese em sentido horrio
Passo 3.5 Tirar a tampa
Passo 3.6 Pegar uma esptula no armrio
Passo 3.7 Colocar a esptula dentro do vidro de maionese
Passo 3.8 Pegar um pouco de maionese
Passo 3.9 Tirar a esptula do vidro
Passo 4 Passar a maionese no po
...
Refinamento do
passo 3 Pegar a
maionese
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
8
Estruturas bsicas de um Algoritmo
Estrutura Seqencial

Estrutura Condicional (ou seletiva)

Estrutura de Repetio
Repeties definidas
Repeties indefinidas
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
9
Estrutura Seqencial
As aes so executadas uma aps a outra,
na mesma ordem em que aparecem:

Trazer a cesta com batatas
Pegar uma panela do armrio
Descascar as batatas
Jogar as cascas no lixo
Lavar a cesta e a panela
Guardar a cesta e a panela no armrio
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
10
Estrutura Condicional - SE
A execuo ou no de uma ao depende se o
resultado de uma condio verdadeiro ou falso

Trazer a cesta com batatas
Pegar uma panela do armrio
Se sua roupa clara ento
Colocar o avental
Descascar as batatas
Jogar as cascas no lixo
Lavar a cesta e a panela
Guardar a cesta e a panela no armrio
Condio
Ao
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
11
Estrutura Condicional - SE
O se..ento.. uma estrutura condicional
ou seletiva, onde a ao (ou mais de uma)
executada somente se o resultado da
condio for verdadeiro:

Se sua roupa clara ento
Colocar o avental
Lavar as mos
Pentear o cabelo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
12
Estrutura Condicional - SE
Podemos utilizar tambm se..ento..seno...
para tornar a seleo de aes mais
completa:

Se sua roupa clara ento
Colocar o avental
Lavar as mos
Seno
Colocar a toca
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
13
Estrutura de Repetio
Trazer a cesta com batatas
Pegar uma panela do armrio
Se sua roupa clara ento
Colocar o avental
Lavar as mos
Pegar uma batata na cesta
Lavar a batata
Descascar a batata
...
...
Jogar as cascas no lixo
Lavar a cesta e a panela
Guardar a cesta e a panela no armrio

50 vezes
Refinamento do
passo
Descascar as
batatas
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
14
Estrutura de Repetio - DEFINIDA
Trazer a cesta com batatas
Pegar uma panela do armrio
Se sua roupa clara ento
Colocar o avental
Lavar as mos
Repetir 50 vezes
Pegar uma batata na cesta
Lavar a batata
Descascar a batata
Jogar as cascas no lixo
Lavar a cesta e a panela
Guardar a cesta e a panela no armrio

E se no soubermos quantas batatas tem no cesto?
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
15
Estrutura de Repetio - INDEFINIDA
Trazer a cesta com batatas
Pegar uma panela no armrio
Se sua roupa clara ento
Colocar o avental
Lavar as mos
Enquanto ainda tivermos batatas no cesto
Pegar uma batata na cesta
Lavar a batata
Descascar a batata
Jogar as cascas no lixo
Lavar a cesta e a panela
Guardar a cesta e a panela no armrio
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
16
A linguagem um elemento chave na
construo de Algoritmos
Schlieben sie Ihre augen.
Fermez vos yeux.
Cierre sus ojos.
Close your eyes.
Feche seus olhos.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
17
Concluso
Para a construo e execuo de algoritmos
necessrio que tanto a pessoa que dar as
ordens quanto a pessoa (ou mquina) que
executar o algoritmo entendam a mesma
linguagem e, dessa forma, consigam
comunicar-se.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
18
Exerccio (para entregar)
Suponha que voc no possa vir a escola em
um dia de entrega do trabalho final de curso.
Faa um ALGORITMO que sirva para
programar um rob que ser acionado na
calada em frente a entrada da FUMEC. O
rob dever ir at o laboratrio onde a aula
est acontecendo, imprimir o trabalho, que est
armazenado na rede, e entregar o mesmo ao
professor, quando se auto desligar.

Instrues no prximo slide...

Prof. Ricardo Luiz de Freitas ricardo@fumec.br
19
Exerccio (para entregar)
Fazer no Word;
Valores mnimos para o algoritmo: 50 aes (1 verbo por
ao), 2 estruturas condicionais e 2 estruturas de repetio;
Valor: 1 ponto extra (se estiver dentro das regras);
Forma de entrega: rea do Aluno ou SINEF na pgina da
escola na internet (Apoio Didtico / Entrega de Trabalhos);
Data mxima de entrega: FINAL DO DIA;
Poder ser feito em dupla (somente um elemento da dupla
entregar o exerccio);
Colocar seu nome, e de seu colega (se for o caso), no incio
do algoritmo;
Exerccios sem nome, iguais e mal feitos sero zerados.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
20
Aula 2
Compiladores
Compilador VisuAlg
Dados
Identificadores
Variveis
Comando de entrada de dados LEIA
Comando de sada de dados ESCREVA
Exerccios
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
21
Compiladores
So programas utilizados para se criar outros programas;
Etapas:
Edio: digitao e alterao do programa;
Compilao: verificao de erros de sintaxe do programa;
Execuo: rodar o programa, entrando com os dados e obtendo
os resultados.
Erros que podem aparecer:
Sintaxe: identificado pelo compilador na etapa de compilao;
Lgica: identificado pelo usurio na etapa de execuo.
Exemplos:
Visualg = Portugol
PascalZIM = Pascal
Delphi = Pascal
Dreamworks = HTML
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
22
Compilador VisuAlg
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
23
Compilador VisuAlg
Abrir (Ctrl-A): Abre um arquivo anteriormente gravado, substituindo o texto presente no editor. Se
este tiver sido modificado, o VisuAlg pedir sua confirmao para salv-lo antes que seja
sobreposto.
Novo (Ctrl-N): Cria um novo "esqueleto" de algoritmo, substituindo o texto presente no editor. Se
este tiver sido modificado, o VisuAlg pedir sua confirmao para salv-lo antes que seja
sobreposto.
Salvar (Ctrl-S): Grava imediatamente o texto presente no editor. Na primeira vez que um novo texto
gravado, o VisuAlg pede seu nome e localizao.
Imprimir: Imprime imediatamente na impressora padro o texto presente no editor.
Copiar (Ctrl-C): Copia o texto selecionado para a rea de transferncia.
Colar (Ctrl-V): Copia texto da rea de transferncia para o local em que est o cursor.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
24
Compilador VisuAlg
Executar (F9): Inicia (ou continua) a execuo automtica do algoritmo.
Executar com timer (Shift-F9):: Insere um atraso (que pode ser especificado no intervalo ao lado)
antes da execuo de cada linha. Tambm reala em fundo azul o comando que est sendo
executado, da mesma forma que na execuo passo a passo.
Passo (F8): Inicia (ou continua) a execuo linha por linha do algoritmo, dando ao usurio a
oportunidade de acompanhar o fluxo de execuo e os valores das variveis.
Parar (Ctrl-F2): Termina imediatamente a execuo do algoritmo. Evidentemente, este boto fica
desabilitado quando o algoritmo no est sendo executado.
Gerar valores aleatrios: Ativa a gerao de valores aleatrios que substituem a digitao de
dados.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
25
Estrutura bsica de um Algoritmo no
VisuAlg
algoritmo "semnome"
// Funo :
// Autor :
// Data : 1/8/2011
// Seo de declaraes
var

inicio
// Seo de Comandos

fimalgoritmo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
26
Exemplo
algoritmo "CalcSomaMedia"
var n1, n2, n3, soma : inteiro
media : real
Inicio
escreva("Informe um nmero = ")
leia(n1)
escreva("Informe outro nmero = ")
leia(n2)
escreva("Informe mais um nmero = ")
leia(n3)
soma <- n1 + n2 + n3
media <- soma / 3
escreval("Mdia = ",media)
fimalgoritmo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
27
Dados
O dado a prpria essncia de um algoritmo
ou programa de computador.

Ele pode ser informado pelo usurio, gerado
pelo programa, processado pelo computador,
e impresso para o usurio como uma
informao.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
28
Tipos de dados
Tipos de dados so maneiras pelas quais os
dados so tratados

Constantes: so aqueles dados cujos valores
no se alteram durante a execuo do algoritmo
Variveis: so aqueles dados cujos valores
podem ser alterados durante a execuo do
algoritmo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
29
Tipos de dados
Classificao
Simples
Numricos
Inteiro
Real
No Numricos
Lgico
Caractere
Estruturados
Arquivos
Vetores
Matrizes
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
30
Tipos de dados
Numricos
INTEIRO
So os valores numricos inteiros (sem casas decimais)
Podem ser valores positivos ou negativos
Variando entre -999999999 e 999999999
Ex: 0, -2, 47, 58, 123220, -34235
REAL
So os valores numricos que possuem casas decimais
Podem ser valores positivos ou negativos
Ex: 0.12, -45.17, 3.14159, 0.000001, 2
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
31
Tipos de dados
No Numricos
LGICO
Representadas por apenas 2 valores:
Verdadeiro
Falso
CARACTERE
Representadas por uma seqncia de caracteres
(letras, nmeros ou caracteres especiais)
Textos em geral
Geralmente so delimitadas por aspas ( )
Ex: Rua, Computao, 20/10/1998, 1234
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
32
Identificadores
Todas as variveis ou constantes so
identificadas por um nome que chamamos de
IDENTIFICADOR

Exemplos:
Salario
Idade
J
Xpto
NomeDaVariavel
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
33
Identificadores
Regras para formao de identificadores
S podem conter LETRAS e NMEROS
Devem comear OBRIGATORIAMENTE com uma LETRA
No podem conter ESPAOS ou caracteres especiais
(@, ?, !, -, caracteres acentuados, etc.)
Composto por no mximo 30 caracteres

Nomes vlidos: i, j, FRUTA, salario,
a12, i23ER21, umnomequalquer
Nomes invlidos: 1, 25, nome-fruta,
5JOSE, A$1, um nome qualquer, mdia
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
34
Identificadores
O identificador deve passar ao programador (ou quem est
lendo o programa/algoritmo) o tipo de dados que a varivel
ou constante vai armazenar, ou seja, no devemos criar
nomes que no tem nada a ver com o contedo da varivel
ou constante:

Nomes inapropriados: i, j, a12, i23ER21,
xyz, xibobo, ricardo

Nomes apropriados: idade, salario,
nomefruta, contador,
enderecocorrespondencia

Prof. Ricardo Luiz de Freitas ricardo@fumec.br
35
Algoritmo Exemplo
(identificadores apropriados e inapropriados)
algoritmo "X"
var a, b, c : inteiro
inicio
leia(a)
b <- 1
para c de 2 ate a faca
b <- b * c
fimpara
escreval(b)
fimalgoritmo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
36
Algoritmo Exemplo
(identificadores apropriados e inapropriados)
algoritmo "CalculaFatorial"
var Numero, Fatorial, Contador : inteiro
inicio
escreva("Informe um nmero: ")
leia(Numero)
Fatorial <- 1
para Contador de 2 ate Numero faca
Fatorial <- Fatorial * Contador
fimpara
escreval("Fatorial = ",Fatorial)
fimalgoritmo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
37
Variveis
(abreviao de dados variveis)
O que uma Varivel?

Varivel uma posio na memria do computador
reservada pelo algoritmo durante a sua execuo para
armazenar dados a serem utilizados pelo prprio algoritmo
Estes dados podem ter sido gerados pelo prprio algoritmo
(comandos de repetio, comando de atribuio, etc.) ou
inseridos pelo usurio quando da execuo de um
comando de entrada/leitura de dados
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
38
Clusula VAR (declarao de variveis)
var (declarao das variveis do algoritmo)

As variveis (ou dados) podem ser de vrios
tipos:
inteiro: define variveis numricas do tipo inteiro, ou seja,
sem casas decimais. (Ex: 12, 1000, 5, 345)
real: define variveis numricas do tipo real, ou seja, com
casas decimais. (Ex: 1.45, 0.05, 500.4, 3.4)
caractere: define variveis do tipo caractere, ou seja, cadeia
de caracteres. (Ex: ABC, Ricardo, Agosto/2006).
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
39
Clusula VAR (declarao de variveis)
Exemplo

algoritmo "PrimeiroAlgoritmo"
var IDADE, NUMERO : inteiro
ALTURA, PESO, SALARIO : real
NOMEPAI, RUA, BAIRRO, DTNASC : caractere
inicio
...
fimalgoritmo

Prof. Ricardo Luiz de Freitas ricardo@fumec.br
40
Etapas de um algoritmo
1 etapa : entrada de dados (informados pelo usurio)

2 etapa : processamento (clculos)

3 etapa : sada de dados (exibio dos resultados)
Processamento
(clculos)
Entrada
de dados
Sada
de dados
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
41
Comando LEIA
(comando de I/O entrada de dados)
Comando utilizado para receber os valores
digitados pelos usurio, atribuindo-os s variveis
cujos nomes esto em <lista-de-variveis> (
respeitada a ordem especificada nesta lista).

leia(<lista-de-variveis>)

Exemplos
leia(nome)
leia(idade, peso, altura)
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
42
Comando LEIA
(comando de I/O entrada de dados)
O tipo de dado a ser digitado pelo usurio depende
do tipo da varivel utilizada no comando, se a
varivel for do tipo INTEIRO no podemos digitar
um texto ou um valor numrico real, pois abortar a
execuo do algoritmo.

O usurio digita o dado via teclado e aperta
ENTER. O dado gravado na VARIAVEL e o cursor
da tela pula para a primeira coluna da prxima linha.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
43
Comando ESCREVA
(comando de I/O sada de dados)
Comando utilizado para se escrever (imprimir)
informaes na tela ou em qualquer dispositivo de
sada de dados (impressora, fax, modem, etc) pelo
algoritmo.

escreva(...)
A informao entre parnteses impressa e o cursor
permanece na mesma linha.
escreval(...)
Idem, porm o cursor pula para a primeira coluna da
prxima linha.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
44
Comando ESCREVA
(comando de I/O sada de dados)
Temos as seguintes variaes para o comando:

escreva("Mensagem a ser impressa")
O texto entre aspas impresso.
escreva(variavel)
O contedo na memria de VARIAVEL impresso.
escreva("Mensagem 1 ",var1," Mensagem 2 ",var2)
Os textos so impressos junto com os contedos das variveis var1 e
var2, na mesma linha e um depois do outro totalmente colados uns
aos outros.

ATENO: importante o uso de espaos dentro das aspas a
fim de que os dados (textos e contedos de variveis) sejam
impressos separados uns dos outros
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
45
Comando ESCREVA
(comando de I/O sada de dados)
Exemplos de uso do escreva/escreval:

var NOME : caractere
IDADE : inteiro
SALARIO, INSS : real

escreva("Nome: ",nome)
impresso: Nome: Joselito Sem Noo
escreval("Sua idade de ",idade)
impresso: Sua idade de 39
escreval("Salrio de ",salario," INSS de ",inss)
impresso: Salrio de 850.65 INSS de 87.40

escreval
salto de uma linha em branco

Prof. Ricardo Luiz de Freitas ricardo@fumec.br
46
Exemplo 1
algoritmo "CalcSomaMedia"
var n1, n2, soma : inteiro
media : real
inicio
leia(n1)
leia(n2)
soma <- n1 + n2
media <- soma / 2
escreval(soma)
escreval(media)
fimalgoritmo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
47
Exemplo 1

algoritmo "CalcSomaMedia"
var n1, n2, soma : inteiro
media : real
Inicio
escreva("Digite um nmero : ")
leia(n1)
escreva("Digite outro nmero : ")
leia(n2)
soma <- n1 + n2
media <- soma / 2
escreval("Soma = ",soma)
escreval("Mdia = ",media)
fimalgoritmo
Entrada
de Dados
Clculos
Sada de
Dados
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
48
Exemplo 2
Faa um algoritmo que solicite ao usurio o seu nome
completo e o nmero de filhos que ele tem, e depois
imprima estas informaes.
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
49
Exemplo 2
(algoritmo resolvido)
algoritmo "TerceiroAlgoritmo"
var nome : caractere
numfilhos : inteiro
inicio
escreva("Qual o seu nome? ")
leia(nome)
escreva("Quantos filhos voc tem? ")
leia(numfilhos)
escreval("Nome: ",nome)
escreval("Nmero de filhos: ",numfilhos)
fimalgoritmo
Entrada
de Dados
Sada de
Dados
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
50
Exemplo 3
Faa um algoritmo que solicite ao usurio o seu nome, seu
endereo completo (logradouro, nmero, bairro, cidade, estado e
CEP), seu peso (em Kg) e o nmero do sapato. Depois imprima uma
etiqueta com estas informaes de acordo com o layout abaixo:

x---------------------nome------------------------x
x---------logradouro----------x, x---numero---x
Bairro x-----------------bairro-------------------x
x-----------cidade---------------x x--estadox
CEP x---cep---x

Peso (kg): x---peso---x
Nmero do sapato: x--numero do sapato--x
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
51
Exemplo 3
Exemplo de sada de dados:

RICARDO LUIZ DE FREITAS
RUA COBRE, 200
Bairro CRUZEIRO
BELO HORIZONTE MG
CEP 30150-101

Peso (kg): 86.5
Nmero do sapato: 40
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
52
Exemplo 3
(algoritmo resolvido)
algoritmo "Etiqueta"
var nome, logradouro, bairro, cidade, uf, cep, numero: caractere
sapato : inteiro
peso : real
inicio
escreva("Informe o seu nome: ")
leia(nome)
escreva("Informe o logradouro: ")
leia(logradouro)
escreva("Informe o nmero: ")
leia(numero)
escreva("Informe o bairro: ")
leia(bairro)

(continua...)
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
53
Exemplo 3
(algoritmo resolvido)
(continuao...)

escreva("Informe a cidade: ")
leia(cidade)
escreva("Informe a UF: ")
leia(uf)
escreva("Informe o CEP: ")
leia(cep)
escreva("Informe o nmero do seu sapato: ")
leia(sapato)
escreva("Informe o seu peso em Kg: ")
leia(peso)

(continua...)
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
54
Exemplo 3
(algoritmo resolvido)
(continuao...)

limpatela
escreval(nome)
escreval(logradouro,", ",numero)
escreval("Bairro ",bairro)
escreval(cidade," - ",uf)
escreval("CEP ",cep)
escreval
escreval("Peso (Kg): ",peso)
escreval("Nmero do sapato: ",sapato)
fimalgoritmo
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
55
Exerccio 1
Faa um algoritmo que solicite ao usurio o seu nome, seus documentos
(CPF, identidade, ttulo de eleitor, carteira de motorista), seu salrio e o nome
da empresa em que trabalha, e depois imprima a sua FICHA FUNCIONAL
de acordo com o layout abaixo:

FICHA FUNCIONAL DE: x---------------------nome------------------------x

Documentos:
CPF ............................................. x-----cpf-----x
C.I. ............................................... x---identidade---x
Titulo de eleitor ........................... x---ttulo de eleitor---x
Carteira de motorista ................... x---carteira de motorista ---x

Empresa: x-----nome da empresa------x
Salrio: R$ x-----salrio-----x

Prof. Ricardo Luiz de Freitas ricardo@fumec.br
56
Exerccio 1
Exemplo de sada de dados:

FICHA FUNCIONAL DE: RICARDO LUIZ DE FREITAS

Documentos:
CPF ............................................. 415467889-03
C.I. ............................................... M5677823
Titulo de eleitor ........................... 458690688444
Carteira de motorista ................... 22349377

Empresa: FEA-FUMEC
Salario: R$ 10500.45

Prof. Ricardo Luiz de Freitas ricardo@fumec.br
57
Exerccio 2
A Secretaria do Meio Ambiente mediu a quantidade de poluentes
atmosfricos emitidos por uma empresa. Dependendo do valor obtido,
a empresa foi multada conforme a tabela abaixo. Faa um algoritmo
que monte esta tabela, solicitando as informaes variveis (xxx) para
o usurio:
Quantidade de Poluente Emitido x Valor da Multa
At xxx
(1)
multa de R$ xxx
(3)

Entre xxx
(1)
e xxx
(2)
multa de R$ xxx
(4)

Acima de xxx
(2)
multa de R$ xxx
(5)
por poluente emitido
Prof. Ricardo Luiz de Freitas ricardo@fumec.br
58
Exerccio 2
Exemplo de sada de dados:
Quantidade de Poluente Emitido x Valor da Multa
At 1500 multa de R$ 1000.55
Entre 1500 e 3000 multa de R$ 3550.34
Acima de 3000 multa de R$ 1200.21 por poluente emitido

You might also like