Você está na página 1de 25

[13] - Faa um programa para uma loja de tintas.

O programa dever pedir o tamanho em metros quadrados da rea a ser pintada. Considere que a cobertura da tinta de 1 litro para cada 3 metros quadrados e que a tinta vendida em latas de 18 litros, que custam R$ 80,00. Informe ao usurio a quantidades de latas de tinta a serem compradas e o preo total import math area = float ( raw_input("Metros Quadrados de Area? ")) # 1 - lata tem 18l # 1 - litro pinta 3 metros quadrados # 1 - lata pinta 18 * 3 metros quadrados # 1 - lata custa R$ 80,00 if area < 54: latas = 1 preco = 80 else: latas = int ( math.ceil(area / 54)) preco = latas * 80 if latas == 1: print "%d lata \t preco R$ %.2f " % (latas, preco) elif latas > 1: print "%d latas \t preco R$ %.2f" % (latas, preco) [17] - Faa um Programa que verifique se uma letra digitada vogal ou consoante. letra = raw_input("Letra? ") #transforme em minusculo... letra = letra.lower() if letra >= "a" and letra <= "z": # eh uma letra? if letra=="a" or letra=="e" or letra=="i" or letra=="o" or letra=="u": print letra, "eh uma vogal." else: print letra, "eh uma consoante." else: print "isso nao eh letra!" Faa um programa que pergunte o preo de trs produtos e informe qual produto voc deve comprar, sabendo que a deciso sempre pelo mais barato. preco1 = float ( raw_input("Preco do Produto 1? ")) preco2 = float (raw_input("Preco do Produto 2? ")) preco3 = float (raw_input("Preco do Produto 3? ")) #colocar um linha em branco print if preco1 < 0 or preco2 < 0 or preco3 < 0: print "Um ou mais Valores invalido foi informado!" #caso 1: o preco 1 eh o menor... elif preco1 < preco2 < preco3 or preco1 < preco3 < preco2: print "Compre o produto 1!" #caso 2: o preco 2 eh o menor... elif preco2 < preco1 < preco3 or preco2 < preco3 < preco1:

print "Compre o produto 2!" #caso 3: o preco 3 eh o menor... elif preco3 < preco1 < preco2 or preco3 < preco2 < preco1: print "Compre o produto 3!" elif preco1 == preco2 and preco2 == preco3: print "compre qualquer um dos produtos: mesmo preco!" [12] - Faa um Programa que pea 2 nmeros inteiros e um nmero real. Calcule e mostre: (a) o produto do dobro do primeiro com metade do segundo . (b) a soma do triplo do primeiro com o terceiro. (c) o terceiro elevado ao cubo. numero1 = int (raw_input("Inteiro n1? ")) numero2 = int (raw_input("Inteiro n2? ")) numero3 = float (raw_input("Float n3? ")) print " 2*n1*(n2/2) = ", 2*numero1 * (numero2/2) print " 3*n1 + n3 = ", 3*numero1 + numero3 print " n3 ao cubo = ", numero3*numero3*numero3

[13] Faa um programa que recebe o salrio de um colaborador e o reajuste segundo o seguinte critrio, baseado no salrio atual: salrios at R$ 280,00 (incluindo) : aumento de 20% salrios entre R$ 280,00 e R$ 700,00 : aumento de 15% salrios entre R$ 700,00 e R$ 1500,00 : aumento de 10% salrios de R$ 1500,00 em diante : aumento de 5% Aps o aumento ser realizado, informe na tela: o salrio antes do reajuste; o percentual de aumento aplicado; o valor do aumento; o novo salrio, aps o aumento. salario = float ( raw_input("Salario? ")) if salario < 0: print "salario Invalido!" else: if 0 < salario <= 280: reajuste = salario * 0.20 #0.20 = 20/100 = 20% percentual = 20 elif 280 < salario < 700: reajuste = salario * 0.15 #0.15 = 15/100 = 15% percentual = 15 elif 700 <= salario < 1500: reajuste = salario * 0.10 # 0.10 = 10/100 = 10% percentual = 10 elif salario >= 1500: reajuste = salario * 0.05 # 0.05 = 5/100 = 5% percentual = 5 print "Salario: \t\t R$ %.2f" % salario print "percentual: \t\t (%d)%%" % percentual print "Aumento: \t\t R$ %.2f" % reajuste print "Novo Salario:\t\t R$ %.2f" % (salario + reajuste)

Faca um programa para o calculo de uma folha de pagamento, # sabendo que os descontos dependem do salario bruto. Desconto do IR: Salrio Bruto at 900 (inclusive) - isento Salrio Bruto at 1500 (inclusive) - desconto de 5% Salrio Bruto at 2500 (inclusive) - desconto de 10% Salrio Bruto acima de 2500 - desconto de 20% Imprima na tela as informaes, dispostas conforme o exemplo abaixo. No exemplo o valor da hora 5 e a quantidade de hora 220.

Salario Bruto (5 * 220) : R$ 1100.00 (-) Sindicato (3%) : R$ 33.00 (-) IR (5%) : R$ 55.00 (-) INSS(10%) : R$ 110.00 FGTS(11%) : R$ 121.00 Total de Descontos : R$ 198.00 Salario Liquido : R$ 902.00

ora_trabalhadas = int ( raw_input ("Horas trabalhadas no mes? ")) salario_bruto = valor_hora * hora_trabalhadas if salario_bruto < 0: print "Salario Invalido!" else: if salario_bruto <= 900: imposto_renda = 0.0 elif 900 < salario_bruto <= 1500: imposto_renda = salario_bruto * 0.05 elif 1500 < salario_bruto <= 2500: imposto_renda = salario_bruto * 0.10 elif salario_bruto > 2500: imposto_renda = salario_bruto * 0.20 sindicato = salario_bruto * 0.03 inss = salario_bruto * 0.10 fgts = salario_bruto * 0.11 # Apenas por questoes de espaco para o post do codigo # aqui no blog vou fazer com as variaveis, para reduzir # os nomes, porem isso nao eh necessario. vh = valor_hora ht = hora_trabalhadas sb = salario_bruto # podem usar = (valor_hora, ..., salario_bruto) descontos = imposto_renda + inss + sindicato liquido = salario_bruto - descontos print "Salario Bruto (%d * %d) \t\t: R$ %.2f" % (vh, ht,sb) print "(-) Sindicato (3%%)\t\t\t: R$ %.2f" % (sindicato) print "(-) IR (5%%) \t\t\t: R$ %.2f" % ( imposto_renda ) print "(-) INSS(10%%) \t\t\t: R$ %.2f" % ( inss ) print "FGTS(11%%) \t\t\t: R$ %.2f" % ( fgts)

print "Total de Descontos \t\t: R$ %.2f" % (descontos) print "Salario Liquido \t\t: R$ %.2f" % (liquido)

Faa um programa que l as duas notas parciais obtidas por um aluno numa disciplina ao longo de um semestre, e calcule a sua mdia. A atribuio de conceitos obedece tabela abaixo: Mdia de Aproveitamento Conceito Entre 9.0 e 10.0 A Entre 7.5 e 9.0 B Entre 6.0 e 7.5 C Entre 4.0 e 6.0 D Entre 4.0 e zero E nota1 = float ( raw_input("Nota01? ")) nota2 = float ( raw_input("Nota02? ")) media = (nota1 + nota2 ) / 2.0 if 9.0 < media <= 10.0: conceito = "A" elif 7.5 < media <= 9.0: conceito = "B" elif 6.0 < media <= 7.5: conceito = "C" elif 4.0 < media <= 6.0: conceito = "D" elif 0.0 < media <= 4.0: conceito = "E"

print "Nota1 = %.2f , Nota2 = %.2f" % (nota1, nota2) print "Media = %.2f" % (media), print " Conceito: ", conceito if conceito == "A" or conceito =="B" or conceito == "C": print "Aprovado!" else: print "Reprovado!" Verificar se tringulo isosceles, equilteros, escaleno a = float (raw_input("Lado A? ")) b = float (raw_input("Lado B? ")) c = float (raw_input("Lado C? ")) if a <= 0 or b <= 0 or c <= 0: print "Valor invalido em um dos lados!" elif a+b > c and a+c > b and b+c > a: if a==b and b==c: #transitividade a==c print "Triangulo Equilatero" elif a != b and b != c and a != c: print "Triangulo Escaleno" elif a==b or a==c or b==c: print "Triangulo Isosceles" if a**2 == b**2+c**2 or b**2 == a**2 + c**2 or c**2 == a**2 + b**2:

print "Triangulo Retangulo" else: print "Nao forma um Triangulo!"

Faa um programa que calcule as razes de uma equao do segundo grau, na forma ax2 + bx + c. O programa dever pedir os valores de a, b e c e fazer as consistncias, informando ao usurio nas seguintes situaes: a. Se o usurio informar o valor de A igual a zero, a equao no do segundo grau e o programa no deve fazer pedir os demais valores, sendo encerrado; b. Se o delta calculado for negativo, a equao no possui razes reais. Informe ao usurio e encerre o programa; c. Se o delta calculado for igual a zero a equao possui apenas uma raiz real; informe-a ao usurio; d. Se o delta for positivo, a equao possui duas raiz reais; informe-as ao usurio; import math a = float (raw_input("coeficiente A? ")) if a==0: print "Nao eh uma equacao do segundo Grau!" else: b = float (raw_input("coeficiente B? ")) c = float (raw_input("coeficiente C? ")) delta = b**2 - 4*a*c if delta < 0: print "Nao h Raizes Reais!" else: x1 = ( - b + math.sqrt(delta) ) / 2*a x2 = ( - b - math.sqrt(delta) ) / 2*a print "x' = %.2f ou x'' = %.2f " % (x1, x2)

Faa um Programa que pea uma data no formato dd/mm/aaaa e determine se a mesma uma data vlida. def isBissexto(ano): return ano%4== 0 and ano%100 != 0 or ano % 400==0 data = raw_input("Data dd/MM/yyyy? ") try: array_data = data.split("/"); dia = int (array_data[0]) mes = int (array_data[1]) ano = int (array_data[2])

mesDe31 = [1,3,5,7,8,10,12] mesDe30 = [2,4,6,9,11]

if dia in range(1,32) and mes in range(1,13) and ano >0: if dia==31 and mes in mesDe31 or dia==30 and mes in mesDe30 or dia==28 and mes==2 or dia==29 and isBissexto(ano): print "Data Valida!" else: print "Data invalida!" else: print "Data invalida!" except: print "Formato de data informado foi incoreto!" Faa um Programa para um caixa eletrnico. O programa dever perguntar ao usurio a valor do saque e depois informar quantas notas de cada valor sero fornecidas. As notas disponveis sero as de 1, 5, 10, 50 e 100 reais. O valor mnimo de 10 reais e o mximo de 600 reais. O programa no deve se preocupar com a quantidade de notas existentes na mquina. a. Exemplo 1: Para sacar a quantia de 256 reais, o programa fornece duas notas de 100, uma nota de 50, uma nota de 5 e uma nota de 1; b. Exemplo 2: Para sacar a quantia de 399 reais, o programa fornece trs notas de 100, uma nota de 50, quatro notas de 10, uma nota de 5 e quatro notas de 1. valor = int ( raw_input("Valor do Saque? ")) if valor < 10 or valor > 600: print "Quantia nao permitida para saques!" else: notas_100=valor/100 notas_50=( valor-(notas_100*100))/50 notas_10=(valor-(notas_100*100+notas_50*50))/10 notas_5=(valor-(notas_100*100+notas_50*50+notas_10*10))/5 notas_1=(valor-(notas_100*100+notas_50*50+notas_10*10+notas_5*5)) print "%d de 100, %d de 50, %d de 10, %d de 5 e %d de 1" % (notas_100, notas_50, notas_10, notas_5, notas_1 ) Faa um Programa que pea um nmero e informe se o nmero inteiro ou decimal. Dica: utilize uma funo de arredondamento. numero = float ( raw_input("Numero? ")) aux = numero - int( numero) if aux == 0: print numero, "eh um inteiro!" else: print numero, "eh um float!" Faa um programa que faa 5 perguntas para uma pessoa sobre um crime. As perguntas so: 1. "Telefonou para a vtima?" 2. "Esteve no local do crime?" 3. "Mora perto da vtima?"

4. "Devia para a vtima?" 5. "J trabalhou com a vtima?" O programa deve no final emitir uma classificao sobre a participao da pessoa no crime. Se a pessoa responder positivamente a 2 questes ela deve ser classificada como "Suspeita", entre 3 e 4 como "Cmplice" e 5 como "Assassino". Caso contrrio, ele ser classificado como "Inocente". def ehVerdade( resposta ): #verifique se o valor eh valido if resposta.lower() != 's' and resposta.lower() != 'n': print "Valor invalido foi informado!" return False return resposta.lower() == 's' #classifica a participacao da pessoa no crime # return uma string informando a participacao. def classifica( OquantoParticipouNoCrime ): if OquantoParticipouNoCrime == 2: return "Suspeita" if OquantoParticipouNoCrime == 3 or OquantoParticipouNoCrime ==4: return "Cumplice" if OquantoParticipouNoCrime == 5: return "Assassino" else: return "Inocente"

participacaoNoCrime = 0 resposta = raw_input("Telefonou para a vitima <S/N>? ") if ehVerdade(resposta): participacaoNoCrime +=1 resposta = raw_input("Esteve no Local do Crime <S/N>? ") if ehVerdade(resposta): participacaoNoCrime +=1 resposta = raw_input("Mora perto da vitima <S/N>? ") if ehVerdade(resposta): participacaoNoCrime +=1 resposta = raw_input("Devia para a vitima <S/N>? ") if ehVerdade(resposta): participacaoNoCrime +=1 resposta = raw_input("Ja trabalhou com a vitima <S/N>? ") if ehVerdade(resposta): participacaoNoCrime +=1 print "\n Voce eh %s " % classifica( participacaoNoCrime ) Uma fruteira est vendendo frutas com a seguinte tabela de preos:

At 5 Kg Morango Ma

Acima de 5 Kg R$ 2,50 por Kg R$ 1,80 por Kg

R$ 2,20 por Kg R$ 1,50 por Kg

Se o cliente comprar mais de 8 Kg em frutas ou o valor total da compra ultrapassar R$ 25,00, receber ainda um desconto de 10% sobre este total. Escreva um algoritmo para ler a quantidade (em Kg) de morangos e a quantidade (em Kg) de maas adquiridas e escreva o valor a ser pago pelo cliente. MORANGOS = 2.5 MACAS = 1.8 kilos_morangos = float ( raw_input("Quantidade de Morangos em Kg? ")) kilos_macas = float ( raw_input ("Quantidade de Macas em Kg? ")) if kilos_morangos < 0 or kilos_macas < 0: print "Quantidade em Kg invalida!" else: if kilos_morangos > 5: MORANGOS = 2.2 preco_morangos = MORANGOS * kilos_morangos if kilos_macas > 5: MACAS = 1.5 preco_macas = MACAS * kilos_macas precoTotal = preco_morangos + preco_macas kilosTotal = kilos_morangos + kilos_macas if precoTotal > 25 or kilosTotal > 8: precoTotal -= precoTotal * 0.10 print "Preco da Compra R$ = %.2f" % precoTotal CUPOM FISCAL O Hipermercado Tabajara est com uma promoo de carnes que imperdvel. Confira: ... At 5 Kg Acima de 5 Kg File Duplo R$ 4,90 por Kg R$ 5,80 por Kg Alcatra R$ 5,90 por Kg R$ 6,80 por Kg Picanha R$ 6,90 por Kg R$ 7,80 por Kg Para atender a todos os clientes, cada cliente poder levar apenas um dos tipos de carne da promoo, porm no h limites para a quantidade de carne por cliente. Se compra for feita no carto Tabajara o cliente receber ainda um desconto de 5% sobre o total a compra. Escreva um programa que pea o tipo e a quantidade de carne comprada pelo usurio e gere um cupom fiscal, contendo as informaes da compra: Tipo e quantidade de carne, Preo total, Tipo de pagamento, Valor do desconto e valor a pagar.

global FILEDUPLO global ALCATRA global PICANHA FILEDUPLO = 4.9

ALCATRA = 5.9 PICANHA = 6.9

#verificar se foi informado um tipo valido # parametro: o tipo de carne # return: True caso seja valido , ou False caso invalido def ehUmTipoDeCarne( tipo ): #converta em minusculo tipo = tipo.lower() return tipo == 'f' or tipo =='a' or tipo =='p' #valida a quantidade de kilos informada. # parametros: a quantidade de kilos # return : um True ou False def quantidadeValida( kilos ): return kilos > 0 #verifica se a forma de pagamento eh valida. # parametros: a forma de pagamento # return: um True ou False def ehUmaFormaDePagamento( forma ): forma = forma.lower() return forma == 'd' or forma == 'c' #Calcular o preco da compra # Parametros: o tipo da carne e a quantidade de carne # Return: O preco da compra def calculaPreco( tipo, kilos ): global FILEDUPLO global ALCATRA global PICANHA tipo = tipo.lower() if kilos > 5: FILEDUPLO = 5.8 ALCATRA = 6.8 PICANHA = 7.8 if tipo == 'f': preco = FILEDUPLO * kilos if tipo == 'a': preco = ALCATRA * kilos if tipo == 'p': preco = PICANHA * kilos return preco # Dar um desconto de 5% na compra, caso seja feita # como o cartao Tabajara # Parametros: o valor da compra e a forma de pagamento # Return: o valor do desconto def darDesconto( valorDaCompra , forma ): forma = forma.lower() if forma == 'c': return valorDaCompra * 0.05 else: return 0.0

# Exibir uma string com o nome do tipo de carne # Parametro: o tipo de carne # Return: o nome desse tipo def mostraTipo( tipo ): tipo = tipo.lower() if tipo == 'f': return "FILE DUPLO" elif tipo == 'a': return "ALCATRA" elif tipo == 'p': return "PICANHA" def mostraFormaDePagamento( forma ): forma = forma.lower() if forma == 'd': return "DINHEIRO" elif forma == 'c': return "CARTAO TABAJARA" # Imprimir o Cupom Fiscal da nota. def gereCupomFiscal( tipo, kilos, forma): valor = calculaPreco(tipo, kilos) valorDaNota = valor - darDesconto(valor, forma) print "======= CUPOM FISCAL TABAJARA =======" print "Tipo de Carne: \t %s" % mostraTipo(tipo) print "Quantidade: \t %d kg" % kilos print "Forma de Pag.: \t %s " % mostraFormaDePagamento( forma ) print "Valor Total: \t R$ %.2f" % calculaPreco(tipo , kilos) print "Valor Desconto: \t R$ %.2f" % darDesconto(valor, forma) print "Valor a Pagar: \t R$ %.2f" % valorDaNota print print "======= Programado em python ========" #leitura de dados tipo_de_carne = raw_input("F-File Duplo, A-Alcatra ou P-Picanha? ") if not ehUmTipoDeCarne( tipo_de_carne ): print "Tipo de Carne Invalido!" else: kilos_de_carne = float (raw_input("Quantidade de carne[Kg]? ")) if not quantidadeValida( kilos_de_carne ): print "Quantidade de Kilos invalida!" else: forma_de_pagamento = raw_input("D-Dinheiro ou C-Cartao Tabajara? ") if not ehUmaFormaDePagamento( forma_de_pagamento ): print "Forma de Pagamento Invalida!" else: gereCupomFiscal( tipo_de_carne,kilos_de_carne,forma_de_pagamento)

Faa um programa que leia e valide as seguintes informaes: Nome: maior que 3 caracteres; Idade: entre 0 e 150; Salrio: maior que zero;

Sexo: 'f' ou 'm'; Estado Civil: 's', 'c', 'v', 'd'; nome = "" while len(nome) <= 3: nome = raw_input("Nome? ") idade = -1 while idade < 0 or idade > 150: idade = int (raw_input("Idade? ")) salario = -1.0 while salario <= 0: salario = float ( raw_input("Salario? ")) sexo = "" while sexo.lower() != 'f' and sexo.lower() != 'm': sexo = raw_input("Sexo [m/f]? ") estadoCivil = "" while estadoCivil!='s' and estadoCivil!='c' and estadoCivil!='v' and estadoCivil!='d': estadoCivil = raw_input("Estado Civil [s/c/v/d]? ")

CRESCIMENTO POPULACIONAL. Supondo que a populao de um pas A seja da ordem de 80000 habitantes com uma taxa anual de crescimento de 3% e que a populao de B seja 200000 habitantes com uma taxa de crescimento de 1.5%. Faa um programa que calcule e escreva o nmero de anos necessrios para que a populao do pas A ultrapasse ou iguale a populao do pas B, mantidas as taxas de crescimento. Altere o programa permitindo ao usurio informar as populaes e as taxas de crescimento iniciais. Permita repetir a operao. populacao_A = 0 TAXA_CRESC_A = 0 populacao_B = 1 TAXA_CRESC_B = 0 resposta = 's' while resposta.lower() == 's': populacao_A = int ( raw_input("Populacao de A? ")) TAXA_CRESC_A = float (raw_input("Taxa de Crescimento de A? ")) populacao_B = int ( raw_input("Populacao de B? ")) TAXA_CRESC_B = float (raw_input("Taxa de Crescimento de B? ")) ano = 0

while populacao_A < populacao_B: populacao_A += populacao_A * TAXA_CRESC_A populacao_B += populacao_B * TAXA_CRESC_B ano +=1 print "Ano: %02d \tA:%7d \tB:%7d " %(ano, populacao_A, populacao_B) resposta = raw_input("Deseja continuar[S/N]? ") Faa um programa que imprima na tela os nmeros de 1 a 20, um abaixo do outro. Depois modifique o programa para que ele mostre os nmeros um ao lado do outro. numero = 1 while numero <= 20: print numero numero +=1 numero = 1 while numero <= 20: print numero, numero +=1 Faa um programa que leia 5 nmeros e informe o maior nmero. contador = 1 maior = None while contador <= 5: numero = int (raw_input("Numero? ")) if maior == None or numero > maior: maior = numero contador += 1

print "O maior eh %d" % maior Faa um programa que imprima na tela apenas os nmeros mpares entre 1 e 50. i=1 while i <= 50: if i % 2 != 0: print i, i += 1 Faa um programa que receba dois nmeros inteiros e gere os nmeros inteiros que esto no intervalo compreendido por eles. inicio = int (raw_input("Inicio? ")) fim = int (raw_input("Fim? ")) if fim < inicio: for i in range(inicio-1, fim,-1): print i, else: for i in range(inicio+1, fim): print i, Faa um programa que receba dois nmeros inteiros e gere os nmeros inteiros que esto no intervalo compreendido por eles inicio = int (raw_input("Inicio? ")) fim = int (raw_input("Fim? "))

soma = 0 if fim < inicio: for i in range(inicio-1, fim,-1): print i, soma += i else: for i in range(inicio+1, fim): print i, soma += i print "\nA soma eh: ", soma Desenvolva um gerador de tabuada, capaz de gerar a tabuada de qualquer nmero inteiro entre 1 a 10. O usurio deve informar de qual numero ele deseja ver a tabuada. A sada deve ser conforme o exemplo abaixo numero = int (raw_input("Numero? ")) print "Tabuada de Numero: " , numero for i in range(1,11): print ("%3d X %3d = %6d") % (numero, i, i * numero) Faa um programa que pea dois nmeros, base e expoente, calcule e mostre o primeiro nmero elevado ao segundo nmero. No utilize a funo de potncia da linguagem. ux = 0 # auxiliar para tratar potencias negativas base = float ( raw_input("Base? ")) expoente = int ( raw_input("Expoente? ")) #2^3 = 2*2*2 #2^ -1 = 1/2 #2^ -2 = 1 / 2^2 if expoente < 0: expoente *= -1 aux = - expoente exponencial = 1 i=1 while i <= expoente: exponencial *= base i +=1 if aux <0: exponencial = 1 /exponencial print "%d elevado a - %d = %.5f" %(base,expoente,exponencial) else: print "%d elevado a %d = %.5f" %(base,expoente,exponencial) A srie de Fibonacci formada pela seqncia 1,1,2,3,5,8,13,21,34,55,... Faa um programa capaz de gerar a srie at o nsimo termo. termo = int (raw_input("N-esimo termo? ")) a=1 b=0 for i in range(termo): a, b = b, a + b print b,

A srie de Fibonacci formada pela seqncia 0,1,1,2,3,5,8,13,21,34,55,... Faa um programa que gere a srie at que o valor seja maior que 500 a=1 b=0 while b < 500: a, b = b , a+b print b Faa um programa que, dado um conjunto de N nmeros, determine o menor valor, o maior valor e a soma dos valores. Altere o programa para que ele aceite apenas nmeros entre 0 e 1000. n = int (raw_input("Quantidade de Numero? ")) maior = None menor = None soma = 0 for i in range(n): numero = int (raw_input("Numero? ")) if 0 < numero < 1000: if maior== None and menor == None: maior, menor = numero, numero if numero > maior: maior = numero if numero < menor: menor = numero soma+= numero else: print "Apenas valores entre ]0,1000[ sao aceitos" print "Maior: %d, Menor: %d e Soma: %d" % (maior, menor, soma)

Faa um programa que calcule o fatorial de um nmero inteiro fornecido pelo usurio. Ex.: 5!=5.4.3.2.1=120 numero = int (raw_input("Numero? ")) fatorial = 1 if numero < 0: print "Valor invalido!" else: for i in range(1,numero+1): fatorial *= i print "Fatorial %d eh %d" % (numero, fatorial)

Numa eleio existem trs candidatos. Faa um programa que pea o nmero total de eleitores. Pea para cada eleitor votar e ao final mostrar o nmero de votos de cada candidato. candidato_A = 0 candidato_B = 0 candidato_C = 0 n_eleitores = int (raw_input("Quantidade de eleitores? ")) if n_eleitores > 0: for i in range (n_eleitores): voto = raw_input("Candidato A, B ou C? ").lower() if voto == 'a': candidato_A +=1 elif voto == 'b': candidato_B +=1 elif voto == 'c': candidato_C +=1 else: print "Voto Invalido!" print "Candidato A: %d votos" % candidato_A print "Candidato B: %d votos" % candidato_B print "Candidato C: %d votos" % candidato_C else: print "Quantidade de eleitores invalida!" Faa um programa que calcule o nmero mdio de alunos por turma. Para isto, pea a quantidade de turmas e a quantidade de alunos para cada turma. As turmas no podem ter mais de 40 alunos. def lerTurma(): MAX = 40 alunos = int (raw_input("Numero de Alunos? ")) while alunos > MAX or alunos < 0: alunos = int ( raw_input("Numero de Alunos? ")) return alunos numero_turmas = int (raw_input("Quantidade de Turmas? ")) soma_alunos = 0 if numero_turmas > 0: for i in range(numero_turmas): soma_alunos += lerTurma() media = soma_alunos / numero_turmas print "Media de alunos/turma eh %d alunos" % media else: print "Quantidade de sala invalida!"

Faa um programa que calcule o valor total investido por um colecionador em sua coleo de CDs e o valor mdio gasto em cada um deles. O usurio dever informar a quantidade de CDs e o valor para em cada um. def lerPrecoDoCd(): preco = float (raw_input("Preco do CD? ")) while preco <= 0: preco = float (raw_input("Preco do CD? ")) return preco numero_de_cds = int ( raw_input("Quantidade de CDs? ")) soma_precos = 0 for i in range(numero_de_cds): soma_precos += lerPrecoDoCd() media = soma_precos / numero_de_cds print "Total R$: %.2f , Media/CD R$: %.2f" % (soma_precos, media)

O Sr. Manoel Joaquim acaba de adquirir uma panificadora e pretende implantar a metodologia da tabelinha, que j um sucesso na sua loja de 1,99. Voc foi contratado para desenvolver o programa que monta a tabela de preos de pes, de 1 at 50 pes, a partir do preo do po informado pelo usurio, conforme o exemplo abaixo: try: preco = float (raw_input("Preco do pao: R$ ")) print "Panificado Pao de Ontem - Tabela de precos" for i in range(1, 51): print "%02d - R$ %.2f" %( i , preco*i) except: print "Erro ao tentar ler o preco." O Departamento Estadual de Meteorologia lhe contratou para desenvolver um programa que leia as um conjunto indeterminado de temperaturas, e informe ao final a menor e a maior temperaturas informadas, bem como a mdia das temperaturas.

enor = None maior = None soma_temperatura = 0 quantidade_temperaturas = 0 try: while True: temperatura = raw_input("Temperatura ou (T)-Termina? ") if temperatura.lower() =='t': break elif temperatura.isalpha(): print "Valor invalido!" else:

temperatura = float(temperatura) soma_temperatura += temperatura quantidade_temperaturas +=1 if maior == None and menor == None: maior, menor = temperatura, temperatura if temperatura > maior: maior = temperatura if temperatura < menor: menor = temperatura media = soma_temperatura / quantidade_temperaturas print "Maior: %.2f , Menor: %.2f, Media: %.2f"%(maior, menor, media) except: print "Erro ao tentar ler a temperatura."

Foi feita uma estatstica em cinco cidades brasileiras para coletar dados sobre acidentes de trnsito. Foram obtidos os seguintes dados: Cdigo da cidade; Nmero de veculos de passeio (em 1999); Nmero de acidentes de trnsito com vtimas (em 1999). Deseja-se saber: - Qual o maior e menor ndice de acidentes de transito e a que cidade pertence; - Qual a mdia de veculos nas cinco cidades juntas; - Qual a mdia de acidentes de trnsito nas cidades com menos de 2.000 veculos de passeio. def coletarDados(): try: lista_dados = [] for i in range(5): codigo = int (raw_input("codigo? ")) n_veiculos = int (raw_input("Numero de veiculos em (1999)? ")) n_acidentes = int (raw_input("Numero de acidentes com vitima? ")) lista_dados.append( ( codigo, n_veiculos, n_acidentes) ) except: print "Erro na leitura dos Dados." return lista_dados # Calcula o indice de acidentes de uma determinada cidade # Paramentros: uma Tupla (codigo, numeroDeVeiculo, NumeroDeAcidentes) # Retorno: o indice def calculaIndice ( dados ): # indiceDeAcidente = numero veiculos / numero de Acidentes * 0.01 return float ( dados[1]) / float ( dados[2] )*0.01 # Obeter o menor e o maior indice de acidente # entre os dados coletados # Parametros: Uma lista de dados # Retorno: um tupla com os indices solicitados def obterIndicesDeAcidentes( dadosColetados ): maiorIndice = dadosColetados[0] menorIndice = dadosColetados[0]

for dado in dadosColetados: if calculaIndice(dado) > calculaIndice(maiorIndice): maiorIndice = dado if calculaIndice (dado) < calculaIndice(menorIndice): menorIndice = dado return (menorIndice, maiorIndice) # Mostrar os Indices obtidos def mostraIndices( indices ): menorIndice, maiorIndice = indices[0] , indices[1] print "Maior:%.2f%% Cidade:%d"%(calculaIndice(maiorIndice),maiorIndice[0]) print "Menor:%.2f%% Cidade:%d"%(calculaIndice(menorIndice),menorIndice[0])

# calcula a media de veiculos na 5 cidades def mediaDeVeiculos (listaDeDados): soma_veiculos = 0 quantidade_de_dados = len (listaDeDados) for dados in listaDeDados: soma_veiculos += dados[1] return float(soma_veiculos)/float(quantidade_de_dados)

# calcula a media de acidentes na cidades com menos de 2000 # veiculos de passeio. def mediaDeAcidentes( listaDeDados ): soma_acidentes = 0 quantidade_de_dados = 0 #soma os acidente nas cidades com menos de 2000 veiculos. for dados in listaDeDados: if dados[1] < 2000: soma_acidentes += dados[2] quantidade_de_dados +=1 return float (soma_acidentes) / float (quantidade_de_dados)

#Funcao principal def main(): listaDeDados = coletarDados() mostraIndices ( obterIndicesDeAcidentes( listaDeDados ) ) print "Media de Veiculos: %.2f" % mediaDeVeiculos (listaDeDados ) print "Media de Acidentes: %.2f " % mediaDeAcidentes(listaDeDados)

if __name__ == "__main__": main() Faa um programa que receba o valor de uma dvida e mostre uma tabela com os seguintes dados: valor da dvida, valor dos juros, quantidade de parcelas e valor da parcela. Os juros e a quantidade de parcelas seguem a tabela abaixo:

def calculaJuros( valor, parcela):

juros = 0 if parcela == 3: juros = valor * 0.10 elif parcela == 6: juros = valor * 0.15 elif parcela == 9: juros = valor * 0.20 elif parcela == 12: juros = valor * 0.25 return juros def calculaParcela( valor, parcela): valor_parcela = valor if parcela == 3: valor_parcela = ( valor + calculaJuros(valor,parcela)) / 3 elif parcela == 6: valor_parcela = ( valor + calculaJuros(valor,parcela) ) / 6 elif parcela == 9: valor_parcela = ( valor + calculaJuros(valor, parcela) ) / 9 elif parcela == 12: valor_parcela = ( valor + calculaJuros(valor,parcela) ) / 12 return valor_parcela

def mostraLinha(i): global valor juros = calculaJuros(valor,3*i) parcela = calculaParcela(valor,3*i) linha = "Divida:R$ %.2f Juros:R$ %.2f Parcelas:%2d Valor Parcela:R$ %.2f" if i == 0: print linha % (valor+juros ,juros,1,parcela) else: print linha % (valor+juros,juros,3*i, parcela)

def main(): try: global valor valor = float (raw_input("Valor da Divida? ")) for i in range(0,5): mostraLinha(i) except: print "Erro ao ler o valor informado!"

if __name__== "__main__": main()

Faa um Programa que leia um vetor de 5 nmeros inteiros e mostre-os. Voc ver como criar uma lista (vetor, ou array) vazia e em seguida aprender a inserir elementos dentro de uma lista, s lembrando que uma lista uma estrutura de dados do

tipo lista = ['a','b','c' ], onde cada elemento est associado a um ndice, e pode ser recuperado, exemplo lista[0] = 'a', lista[1] = 'b', lista[2] = 'c'. lista_numeros = [] for i in range(5): numero = int (raw_input("numero %d? " %(i+1) )) lista_numeros.append(numero) print "lista =", lista_numeros Faa um Programa que leia um vetor de 10 caracteres, e diga quantas consoantes foram lidas. Imprima as consoantes. def ehConsoante(letra): return letra not in ['a', 'e', 'i', 'o', 'u']

consoantes = [] for i in range(10): letra = raw_input("Letra? ") if ehConsoante(letra): consoantes.append(letra) print "foram lidas", len(consoantes) print consoantes Faa um Programa que leia um vetor de 10 nmeros reais e mostre-os na ordem inversa. Vamos resolver essa questo de duas maneira a primeira usando um for e a seguinda usando a prprio funo do python que inverte o conteudo da lista. Veja que usamos o seguinte, se tivermos uma lista L = [ a , b, c ], o ndice L[0] = a , porm se fizermos L[-1] = c, basta observar este detalhe da linguagem para inverter o conteudo da lista como mostramos logo abaixo no cdigo: lista_numeros = [] for i in range(10): numero = float (raw_input("numero %d? "%(i+1))) lista_numeros.append(numero) for i in range(1,11): print lista_numeros[-i], print Faa um Programa que pea as quatro notas de 10 alunos, calcule e armazene num vetor a mdia de cada aluno, imprima o nmero de alunos com mdia maior ou igual a 7.0. medias = [] contador = 0 # contar as medias maiores ou igual a 7 for i in range(10): notas = [] for j in range(4): nota = float( input("nota %d do aluno %d? "%(j+1, i+1)))

notas.append(nota) media = sum(notas) / 4 if media >= 7: contador += 1 #armazenar as media no vetor medias.append(media) print ("Mdias maiores que 7:", contador) Faa um Programa que pea a idade e a altura de 5 pessoas, armazene cada informao no seu respectivo vetor. Imprima a idade e a altura na ordem inversa a ordem lida.

Usamos a funo reverse() para inverte a lista. voc pode tambm inverte usando um for, mas ter bem mais trabalho. idades = [] alturas = [] for i in range(5): idade = int (input("Idade? ")) idades.append(idade) altura = float (input("Altura? ")) alturas.append(altura) #invertendo as listas alturas.reverse() idades.reverse() print ("alturas:", alturas) print ("idades:", idades) Faa um Programa que leia dois vetores com 10 elementos cada. Gere um terceiro vetor de 20 elementos, cujos valores devero ser compostos pelos elementos intercalados dos dois outros vetores. a = [] # vetor 1 b = [] # vetor 2 c = [] # vetor 3 for i in range(10): numero = int (input("Numero vetor A? ")) a.append(numero) numero = int (input("Numero vetor B? ")) b.append(numero) # intercalando... for i in range(10): c.append(a[i]) c.append(b[i]) print ("vetor a:", a) print ("vetor b:", b) print ("vetor c:", c) Faa um programa que receba a temperatura mdia de cada ms do ano e armazene-as em uma lista. Aps isto, calcule a mdia anual das temperaturas e mostre todas as

temperaturas acima da mdia anual, e em que ms elas ocorreram (mostrar o ms por extenso: 1 Janeiro, 2 Fevereiro, . . . ). temperaturas = [] #cria um lista com os meses do ano meses = ['Janeiro', 'Fevereiro', 'Maro', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro' ] for i in range (12): temperatura = float (input("Temperatura? ")) temperaturas.append(temperatura) #calcula a media media = sum(temperaturas) / 12 for i in range (12): if temperaturas[i] > media: print("%d - %s: %.1f"%(i+1,meses[i],temperaturas[i]))

Utilizando listas faa um programa que faa 5 perguntas para uma pessoa sobre um crime. As perguntas so: 1 - "Telefonou para a vtima?" 2 - "Esteve no local do crime?" 3 - "Mora perto da vtima?" 4 - "Devia para a vtima?" 5 - "J trabalhou com a vtima?" O programa deve no final emitir uma classificao sobre a participao da pessoa no crime. Se a pessoa responder positivamente a 2 questes ela deve ser classificada como "Suspeita", entre 3 e 4 como "Cmplice" e 5 como "Assassino". Caso contrrio, ele ser classificado como "Inocente". ''' respostas = [] resposta = input("Telefonou para vitima S/N? ").lower() if resposta == 's': respostas.append(1) else: respostas.append(0) resposta = input("Esteve no local do crime S/N? ").lower() if resposta == 's': respostas.append(1) else: respostas.append(0)

resposta = input ("Mora perto da Vtima? S/N? ").lower() if resposta == 's': respostas.append(1) else: respostas.append(0) resposta = input("Devia para a vtima S/N? ").lower() if resposta == 's': respostas.append(1) else: respostas.append(0) resposta = input("J trabalhou com a vtima S/N? ") if resposta == 's': respostas.append(1) else: respostas.append(0) #classificando... resultado = sum(respostas) if resultado <=2 : print ("Supeita!") elif 2 < resultado <= 4: print ("Cmplice!") else: print ("Assassino!") Em uma competio de salto em distncia cada atleta tem direito a cinco saltos. O resultado do atleta ser determinado pela mdia dos cinco valores restantes. Voc deve fazer um programa que receba o nome e as cinco distncias alcanadas pelo atleta em seus saltos e depois informe o nome, os saltos e a mdia dos saltos. O programa deve ser encerrado quando no for informado o nome do atleta. A sada do programa deve ser conforme o exemplo abaixo:

Atleta: Rodrigo Curvllo Primeiro Salto: 6.5 Segundo Salto: 6.1 Terceiro Salto: 6.2 Quarto Salto: 5.4 Quinto Salto: 5.3 Resultado final: Atleta: Rodrigo Curvllo Saltos: 6.5 - 6.1 - 6.2 - 5.4 - 5.3 Mdia dos saltos: 5.9 m altos = [] ordem = ['Primeiro','Segundo','Terceiro','Quarto','Quinto'] nome = input("Atleta? ") print() for i in range(len(ordem)):

salto = float(input("%s Saltos: " %ordem[i])) saltos.append(salto) media = sum(saltos) / len(saltos) print() print ("Resultado final: ") print ("Atleta:", nome) print("Saltos: ", end=" ") for i in range(len(saltos) - 1): print("%.1f -" % saltos[i], end=" ") print("%.1f " % saltos[len(saltos) - 1]) print("Media dos saltos: %.1f" % media, "m")

Enquete qual o melhor jogador? a. b. c. d. O total de votos computados; Os nmeos e respectivos votos de todos os jogadores que receberam votos; O percentual de votos de cada um destes jogadores; O nmero do jogador escolhido como o melhor jogador da partida, juntamente com o nmero de votos e o percentual de votos dados a ele. e. Enquete: Quem foi o melhor jogador? Nmero do jogador (0=fim): 9 Nmero do jogador (0=fim): 10 Nmero do jogador (0=fim): 9 Nmero do jogador (0=fim): 10 Nmero do jogador (0=fim): 11 Nmero do jogador (0=fim): 10 Nmero do jogador (0=fim): 50 Informe um valor entre 1 e 23 ou 0 para sair! Nmero do jogador (0=fim): 9 Nmero do jogador (0=fim): 9 Nmero do jogador (0=fim): 0 Resultado da votao: Foram computados 8 votos. Jogador Votos (%)Percentual 9 4 50,0% 10 3 37,5% 11 1 12,5% O melhor jogador foi o nmero 9, com 4 votos, correspondendo a 50% do total de votos. jogadores = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] votos = 0 #funcao para calcular o percentual de votos # regrinha de 3 bsica

# # total_de_votos ---------- 100% # votos ---------- x # x = votos*100 / total # def percentual(votos, total_de_votos ): return votos*100 /total_de_votos print ("Enquete: Quem foi o melhor jogador? ") print() while True: jogador = int (input("Nmero do jogador (0=fim): ")) if jogador == 0: break if jogador >= 1 and jogador <= 23: jogadores[ jogador -1] += 1 votos +=1 else: print ("Informe um valor entre 1 e 23 ou 0 para sair!")

print() print("Resulado da Votao:") print() print ("Jogador \t Votos \t (%)Percentual") for i in range(len(jogadores)): if jogadores[i] != 0: print ("%d \t\t %d \t\t %.1f%%" %(i+1,jogadores[i],percentual(jogadores[i],votos))) indice_maior = 0 for i in range(1,len(jogadores)): if jogadores[i] > jogadores[indice_maior]: indice_maior = i print() print("Foram computadores %d votos" % votos) print ("O melhor jogador foi %d , com %d votos, " %(indice_maior+1,jogadores[indice_maior])) print ("correspondendo a %.1f%% do total de votos." %(percentual(jogadores[indice_maior],votos)))

Você também pode gostar