3267
Comentário:
|
6986
|
Deleções são marcadas assim. | Adições são marcadas assim. |
Linha 97: | Linha 97: |
* Exercício 6. {{{#!python def hora(h, m): b = h / 12 if b <= 1: hh = str(h) print('Sua hora: '+ hh + ':', end='') elif b > 1 and b < 2: hhh = str(h - 12) print('Sua hora: '+ hhh + ':', end='') else: print('Formato de hora invalido') if b <= 1 and m <= 60: print(m, 'a.m') elif b > 1 and m <= 60: print(m, 'p.m') else: print('Formato de minutos invalidos') while True: print('digite 666 para sair') h = int(input('Informe a hora:')) if h == 666: break m = int(input('Informe os minutos: ')) hora(h, m) }}} Proposta por Leo Araujo * Exercício 7 {{{#!python qtPrest = [] listaVc = [] ct = 0 def funcVP(VP, NumDias): Vpm = VP * 1.03 valorC = round(Vpm *((1 + 0.001) ** NumDias), 2) listaVc.append(valorC) print('Valor corrigido:', valorC) global ct ct += 1 qtPrest.append(ct) while True: VP = float(input('Digitr o valor da prestação: (0 para sair) ')) if VP == 0: break NumDias = int(input('Quantos dias que está em atraso: ')) funcVP(VP, NumDias) print('Quantidade de prestações pagas: ', ct) print('Valor total de prestações pagas no dia: R$', round(sum(listaVc)), 2) }}} Proposta por Leo Araujo * Exercício 7. Faça um programa que use a função valorPagamento para determinar o valor a ser pago por uma prestação de uma conta. O programa deverá solicitar ao usuário o valor da prestação e o número de dias em atraso e passar estes valores para a função valorPagamento, que calculará o valor a ser pago e devolverá este valor ao programa que a chamou. O programa deverá então exibir o valor a ser pago na tela. Após a execução o programa deverá voltar a pedir outro valor de prestação e assim continuar até que seja informado um valor igual a zero para a prestação. Neste momento o programa deverá ser encerrado, exibindo o relatório do dia, que conterá a quantidade e o valor total de prestações pagas no dia. O cálculo do valor a ser pago é feito da seguinte forma. Para pagamentos sem atraso, cobrar o valor da prestação. Quando houver atraso, cobrar 3% de multa, mais 0,1% de juros por dia de atraso. {{{#!python __author__ = 'JonasAlves' def valorPagamento(vp, da): if da < 1: valor = vp print(valor) return valor else: valor = (vp + vp * 0.03 + 0.01 * da) print(valor) return valor valor = [] vp = 0 da = 0 qp = 0 valortotal = 0 while True: qp += 1 vp = float(input('Qual o valor da prestacao? ')) da = int(input('Quantos dias esta em atraso? ')) if vp == 0: break valor.append(valorPagamento(vp, da)) qp -= 1 for i in range(qp): valortotal += valor[i] print('Relatorio do dia, foram pagas %d prestacoes no valor: ' %qp, valor) print('Valor total de prestacoes pagas: ', valortotal) }}} |
|
Linha 103: | Linha 196: |
* Exercício 9:Faça uma função que retorne o reverso de um número inteiro informado. Por exemplo: 127 -> 721. {{{#!python def exercicio_9(n): inverte=str(n) print inverte[::-1] }}} Proposta por ThiagoSeixas |
|
Linha 114: | Linha 215: |
Proposta por HenriqueBaggio {{{#!python def reverso(n): str(n)[::-1] }}} Proposta por IuriSilvio |
* Exercício 12: Construa uma função que receba uma string como parâmetro e devolva outra string com os carateres embaralhados. Por exemplo: se função receber a palavra python, pode retornar npthyo, ophtyn ou qualquer outra combinação possível, de forma aleatória. Padronize em sua função que todos os caracteres serão devolvidos em caixa alta ou caixa baixa, independentemente de como foram digitados. {{{#!python import random def exercicio_12(s): embaralha = random.sample(s, len(s)) # String vira lista a = ''.join(embaralha) # lista vira string print (a) }}} Proposta por ThiagoSeixas |
Exercícios com Funções: Proposta de Soluções
Esta página contém algumas propostas de soluções para os exercícios da Lista 6: Funções.
- Exercício 1
Proposta por ThiagoSeixas
- Exercício 1
Proposta por HenriqueBaggio
- Exercício 1
Proposta por Lhzefe
- Exercício 1
Proposta por RogerioDuarte
- Exercício 2
Proposta por HenriqueBaggio
- Exercício 3
Proposta por IuriSilvio
- Exercício 4 by Jorge
- Exercício 5 by Jorge
- Exercício 6.
1 def hora(h, m):
2 b = h / 12
3 if b <= 1:
4 hh = str(h)
5 print('Sua hora: '+ hh + ':', end='')
6 elif b > 1 and b < 2:
7 hhh = str(h - 12)
8 print('Sua hora: '+ hhh + ':', end='')
9 else:
10 print('Formato de hora invalido')
11 if b <= 1 and m <= 60:
12 print(m, 'a.m')
13 elif b > 1 and m <= 60:
14 print(m, 'p.m')
15 else:
16 print('Formato de minutos invalidos')
17
18 while True:
19 print('digite 666 para sair')
20 h = int(input('Informe a hora:'))
21 if h == 666:
22 break
23 m = int(input('Informe os minutos: '))
24 hora(h, m)
Proposta por Leo Araujo
- Exercício 7
1 qtPrest = []
2 listaVc = []
3 ct = 0
4 def funcVP(VP, NumDias):
5 Vpm = VP * 1.03
6 valorC = round(Vpm *((1 + 0.001) ** NumDias), 2)
7 listaVc.append(valorC)
8 print('Valor corrigido:', valorC)
9 global ct
10 ct += 1
11 qtPrest.append(ct)
12
13 while True:
14 VP = float(input('Digitr o valor da prestação: (0 para sair) '))
15 if VP == 0:
16 break
17 NumDias = int(input('Quantos dias que está em atraso: '))
18 funcVP(VP, NumDias)
19 print('Quantidade de prestações pagas: ', ct)
20 print('Valor total de prestações pagas no dia: R$', round(sum(listaVc)), 2)
Proposta por Leo Araujo
- Exercício 7. Faça um programa que use a função valorPagamento para determinar o valor a ser pago por uma prestação de uma conta. O programa deverá solicitar ao usuário o valor da prestação e o número de dias em atraso e passar estes valores para a função valorPagamento, que calculará o valor a ser pago e devolverá este valor ao programa que a chamou. O programa deverá então exibir o valor a ser pago na tela. Após a execução o programa deverá voltar a pedir outro valor de prestação e assim continuar até que seja informado um valor igual a zero para a prestação. Neste momento o programa deverá ser encerrado, exibindo o relatório do dia, que conterá a quantidade e o valor total de prestações pagas no dia. O cálculo do valor a ser pago é feito da seguinte forma. Para pagamentos sem atraso, cobrar o valor da prestação. Quando houver atraso, cobrar 3% de multa, mais 0,1% de juros por dia de atraso.
1 __author__ = 'JonasAlves' 2 3 def valorPagamento(vp, da): 4 if da < 1: 5 valor = vp 6 print(valor) 7 return valor 8 else: 9 valor = (vp + vp * 0.03 + 0.01 * da) 10 print(valor) 11 return valor 12 13 valor = [] 14 vp = 0 15 da = 0 16 qp = 0 17 valortotal = 0 18 19 while True: 20 qp += 1 21 vp = float(input('Qual o valor da prestacao? ')) 22 da = int(input('Quantos dias esta em atraso? ')) 23 if vp == 0: 24 break 25 valor.append(valorPagamento(vp, da)) 26 27 qp -= 1 28 for i in range(qp): 29 valortotal += valor[i] 30 31 print('Relatorio do dia, foram pagas %d prestacoes no valor: ' %qp, valor) 32 print('Valor total de prestacoes pagas: ', valortotal)
- Exercício 8
Exercício 9:Faça uma função que retorne o reverso de um número inteiro informado. Por exemplo: 127 -> 721.
Proposta por ThiagoSeixas
- Exercício 9: A ideia nesse exercicio é que, para um dado digito numa posição i do número de entrada, ele terá o seu valor multiplicado por 10**i no número de saída.
- Exercício 12: Construa uma função que receba uma string como parâmetro e devolva outra string com os carateres embaralhados. Por exemplo: se função receber a palavra python, pode retornar npthyo, ophtyn ou qualquer outra combinação possível, de forma aleatória. Padronize em sua função que todos os caracteres serão devolvidos em caixa alta ou caixa baixa, independentemente de como foram digitados.
Proposta por ThiagoSeixas
- Exercício 13
1 def valor_por_omissao(valor): 2 if valor=='': 3 return int(1) 4 else: 5 return faixa_minima_maxima(int(valor)) 6 7 def faixa_minima_maxima(valor): 8 if valor<1: 9 return 1 10 elif valor>20: 11 return 20 12 else: 13 return valor 14 15 def cria_linha(linha): 16 l='+' 17 for x in range(linha): 18 l+='-' 19 l+='+' 20 print l 21 22 def cria_coluna(linha, coluna): 23 for y in range(coluna): 24 c='|' 25 c+= ' '*linha 26 c+='|' 27 print c 28 29 def desenha_moldura(linha, coluna): 30 cria_linha(linha) 31 cria_coluna(linha, coluna) 32 cria_linha(linha) 33 34 linha=raw_input('Diga quantos +----+, entre 1 e 20: ') 35 coluna=raw_input('Diga quantos | |, entre 1 e 20: ') 36 desenha_moldura(valor_por_omissao(linha), valor_por_omissao(coluna))
Proposta por Lhzefe