From 60cf02ea4cc09d4cfa9b197fea5bb65331196985 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 23 May 2022 14:24:37 -0300 Subject: [PATCH 01/20] =?UTF-8?q?resolvido=20exercicio=2001=20da=20se?= =?UTF-8?q?=C3=A7=C3=A3o=2001?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- secao_01_estrutura_sequencial/ex_01_alo_mundo.py | 1 + 1 file changed, 1 insertion(+) diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py index b9b0821a6..ace70a5bc 100644 --- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py +++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py @@ -12,4 +12,5 @@ def ola_mundo(): """Escreva aqui em baixo a sua solução""" + print('Olá Mundo') From 8105c4818c39cb90eb5f2b9451388f9f0ebad980 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 23 May 2022 14:24:37 -0300 Subject: [PATCH 02/20] =?UTF-8?q?resolvido=20exercicio=2001=20da=20se?= =?UTF-8?q?=C3=A7=C3=A3o=2001?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- secao_01_estrutura_sequencial/ex_01_alo_mundo.py | 1 + 1 file changed, 1 insertion(+) diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py index b9b0821a6..ace70a5bc 100644 --- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py +++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py @@ -12,4 +12,5 @@ def ola_mundo(): """Escreva aqui em baixo a sua solução""" + print('Olá Mundo') From 04cbf07515c5728bdaf5d8c6c2cc1324128096b2 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 30 May 2022 09:20:33 -0300 Subject: [PATCH 03/20] =?UTF-8?q?fiz=20at=C3=A9=20o=2013=20do=2001?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ .../ex_02_escreva_um_numero.py | 2 ++ .../ex_03_imprima_soma_de_dois_numeros.py | 4 ++++ .../ex_04_notas_bimestrais.py | 5 +++++ .../ex_05_metros_para_centimetros.py | 3 +++ secao_01_estrutura_sequencial/ex_06_area_circulo.py | 12 ++++++++++++ secao_01_estrutura_sequencial/ex_07_area_quadrado.py | 6 ++++++ .../ex_08_horas_trabalhadas_mes.py | 4 ++++ .../ex_09_fahrenheit_para_celsius.py | 3 +++ .../ex_10_celsius_para_fahrenheit.py | 5 +++++ .../ex_11_contas_matematicas.py | 6 ++++++ secao_01_estrutura_sequencial/ex_12_peso_ideal.py | 5 +++++ .../ex_13_peso_ideal_mulher_e_homem.py | 3 +++ .../ex_09_numeros_impares_de_1_a_50.py | 1 + 14 files changed, 61 insertions(+) diff --git a/.gitignore b/.gitignore index b6e47617d..e72a38f08 100644 --- a/.gitignore +++ b/.gitignore @@ -127,3 +127,5 @@ dmypy.json # Pyre type checker .pyre/ + +.vscode/ diff --git a/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py b/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py index 8c3d45dd4..cd48c34ae 100644 --- a/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py +++ b/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py @@ -13,4 +13,6 @@ def escreva_um_numero(): """Escreva aqui em baixo a sua solução""" + número = int(input('escreva um numero: ')) + print(f'O número informado foi {número}') diff --git a/secao_01_estrutura_sequencial/ex_03_imprima_soma_de_dois_numeros.py b/secao_01_estrutura_sequencial/ex_03_imprima_soma_de_dois_numeros.py index b842fd8b7..c187c735d 100644 --- a/secao_01_estrutura_sequencial/ex_03_imprima_soma_de_dois_numeros.py +++ b/secao_01_estrutura_sequencial/ex_03_imprima_soma_de_dois_numeros.py @@ -15,3 +15,7 @@ def imprima_a_soma_de_dois_numeros(): """Escreva aqui em baixo a sua solução""" + número1 = int(input('escreva o primeiro numero: ')) + número2 = int(input('escreva o segundo numero: ')) + print(f'A soma dos dois números informados é {número1 + número2}') + diff --git a/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py b/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py index a1b189cd5..66871d9c7 100644 --- a/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py +++ b/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py @@ -15,4 +15,9 @@ def calcular_media(): """Escreva aqui em baixo a sua solução""" + nota1 = int(input('escreva a primeira nota: ')) + nota2 = int(input('escreva a segunda nota: ')) + nota3 = int(input('escreva a terceira nota: ')) + nota4 = int(input('escreva a quarta nota: ')) + print(f'A média anual é { (nota1 + nota2 + nota3 + nota4) / 4}') diff --git a/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py b/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py index 315e5392d..39479002b 100644 --- a/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py +++ b/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py @@ -17,3 +17,6 @@ def converter_metros_para_centimetros(): """Escreva aqui em baixo a sua solução""" + metro = float(input('converter metros em centimetros: ')) + centimetro = metro*100 + print(f'Transformando para centímetros dá { centimetro} cm') diff --git a/secao_01_estrutura_sequencial/ex_06_area_circulo.py b/secao_01_estrutura_sequencial/ex_06_area_circulo.py index 840559026..85cb158f8 100644 --- a/secao_01_estrutura_sequencial/ex_06_area_circulo.py +++ b/secao_01_estrutura_sequencial/ex_06_area_circulo.py @@ -16,5 +16,17 @@ """ +from cmath import pi +from xml.etree.ElementTree import PI + + def calcular_area_de_circulo(): """Escreva aqui em baixo a sua solução""" + PI = 3.1415 + raio = float(input('informe o tamanho do raio: ')) + área = PI*raio**2 + print(f'A área do círculo com esse raio é: {"%.4f" %área}') + + + + diff --git a/secao_01_estrutura_sequencial/ex_07_area_quadrado.py b/secao_01_estrutura_sequencial/ex_07_area_quadrado.py index 63b12a193..64b34b49c 100644 --- a/secao_01_estrutura_sequencial/ex_07_area_quadrado.py +++ b/secao_01_estrutura_sequencial/ex_07_area_quadrado.py @@ -20,3 +20,9 @@ def calcular_area_de_quadrado(): """Escreva aqui em baixo a sua solução""" + lado = float(input('Digite o lado do quadrado: ')) + area = lado**2 + print(f'A área do quadrado com esse lado é: {"%.2f" %area}') + print(f'O dobro da aŕea do quadrado é: {"%.2f" %(area*2)}') + + diff --git a/secao_01_estrutura_sequencial/ex_08_horas_trabalhadas_mes.py b/secao_01_estrutura_sequencial/ex_08_horas_trabalhadas_mes.py index 07ded093f..712106859 100644 --- a/secao_01_estrutura_sequencial/ex_08_horas_trabalhadas_mes.py +++ b/secao_01_estrutura_sequencial/ex_08_horas_trabalhadas_mes.py @@ -17,3 +17,7 @@ def calcular_salario(): """Escreva aqui em baixo a sua solução""" + valor_hora = 55.62 + horas_trabalhadas = 80 + salario = valor_hora*horas_trabalhadas + print(f'Seu salário desse mês é {"%.2f" %salario}') diff --git a/secao_01_estrutura_sequencial/ex_09_fahrenheit_para_celsius.py b/secao_01_estrutura_sequencial/ex_09_fahrenheit_para_celsius.py index a13351c7e..3c962a141 100644 --- a/secao_01_estrutura_sequencial/ex_09_fahrenheit_para_celsius.py +++ b/secao_01_estrutura_sequencial/ex_09_fahrenheit_para_celsius.py @@ -19,3 +19,6 @@ def transformar_para_celsius(): """Escreva aqui em baixo a sua solução""" + F = float(input('Digite a temperatura em fahrenheit: ')) + C = round(5 * ((F-32) / 9)) + print(f'Essa temperatura é de {C} Celsius') diff --git a/secao_01_estrutura_sequencial/ex_10_celsius_para_fahrenheit.py b/secao_01_estrutura_sequencial/ex_10_celsius_para_fahrenheit.py index 76d97aa8d..02a0b849f 100644 --- a/secao_01_estrutura_sequencial/ex_10_celsius_para_fahrenheit.py +++ b/secao_01_estrutura_sequencial/ex_10_celsius_para_fahrenheit.py @@ -18,3 +18,8 @@ def transformar_para_fahrenheit(): """Escreva aqui em baixo a sua solução""" + C = float(input('Digite a temperatura em Celsius: ')) + F = round(C * (9 / 5) + 32) + print(f'Essa temperatura é de {F} Fahrenheit') + + diff --git a/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py b/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py index 09bdbbffd..91c5e7a30 100644 --- a/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py +++ b/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py @@ -22,5 +22,11 @@ def calcular_formulas(): """Escreva aqui em baixo a sua solução""" + numero1 = int(input('Digite o primeiro número: ')) + numero2 = int(input('Digite o segundo número: ')) + numero3 = float(input('Digite o terceiro número: ')) + print(f'O produto do dobro do primeiro com metade do segundo é {"%.2f" %((2*numero1) * (numero2/2))}') + print(f'A soma do triplo do primeiro com o terceiro é {"%.2f" %(numero1*3 + numero3)}') + print(f'O terceiro elevado ao cubo é {"%.2f" %(numero3**3)}') diff --git a/secao_01_estrutura_sequencial/ex_12_peso_ideal.py b/secao_01_estrutura_sequencial/ex_12_peso_ideal.py index 1f8418fab..2f9c986f7 100644 --- a/secao_01_estrutura_sequencial/ex_12_peso_ideal.py +++ b/secao_01_estrutura_sequencial/ex_12_peso_ideal.py @@ -17,5 +17,10 @@ """ +import math + + def calcular_peso_ideal(): """Escreva aqui em baixo a sua solução""" + altura = float(input('Digite sua altura: ')) + print(f'Seu peso ideal é {"%.1f" %((72.7*altura) - 58)} kg') diff --git a/secao_01_estrutura_sequencial/ex_13_peso_ideal_mulher_e_homem.py b/secao_01_estrutura_sequencial/ex_13_peso_ideal_mulher_e_homem.py index fe27d6ff1..6f6ed5734 100644 --- a/secao_01_estrutura_sequencial/ex_13_peso_ideal_mulher_e_homem.py +++ b/secao_01_estrutura_sequencial/ex_13_peso_ideal_mulher_e_homem.py @@ -22,3 +22,6 @@ def calcular_peso_ideal(): """Escreva aqui em baixo a sua solução""" + h = float(input('Digite sua altura: ')) + print(f'Seu peso ideal é {"%.1f" %((62.1*h) - 44.7)} kg, se você for mulher') + print(f'Seu peso ideal é {"%.1f" %((72.7*h) - 58)} kg, se você for homem') diff --git a/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py b/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py index bdd9db777..984aa00fa 100644 --- a/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py +++ b/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py @@ -12,3 +12,4 @@ def calcular_numeros_impares_de_1_a_50() -> str: """Escreva aqui em baixo a sua solução""" + From 267e47a0e462d330e8f20a009711a2942557a628 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 30 May 2022 11:25:22 -0300 Subject: [PATCH 04/20] =?UTF-8?q?resolvi=20at=C3=A9=20o=2016=20da=20ex-1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_14_joao_papo_de_pescador.py | 7 +++++++ secao_01_estrutura_sequencial/ex_15_clt_onerosa.py | 13 +++++++++++++ .../ex_16_loja_de_tintas_simples.py | 5 +++++ 3 files changed, 25 insertions(+) diff --git a/secao_01_estrutura_sequencial/ex_14_joao_papo_de_pescador.py b/secao_01_estrutura_sequencial/ex_14_joao_papo_de_pescador.py index 16a2a211f..a2f8bed74 100644 --- a/secao_01_estrutura_sequencial/ex_14_joao_papo_de_pescador.py +++ b/secao_01_estrutura_sequencial/ex_14_joao_papo_de_pescador.py @@ -26,3 +26,10 @@ def calcular_peso_excedente_e_multa(): """Escreva aqui em baixo a sua solução""" + pesos = float(input('Digite o numero de quilos que você pegou: ')) + excedente = float((pesos-50)) + multa = float((excedente)*4) + print(f'O peso excedente de peixes é de {"%.2f"%(excedente)} kg') + print(f'Por isso, a multa é de R$ {"%.2f"%(multa)}') + + diff --git a/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py b/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py index 901de0409..af1c3fecb 100644 --- a/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py +++ b/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py @@ -27,3 +27,16 @@ def calcular_assalto_no_salario(): """Escreva aqui em baixo a sua solução""" + valor_hora = float(input('Digite quanto você recebe por hora trabalhada: ')) + horas_trabalhadas = int(input('Digite quantas horas você trabalha por mês: ')) + + salario = valor_hora*horas_trabalhadas + IR = float((salario/100)*11) + INSS = float((salario/100)*8) + SINDICATO = float((salario/100)*5) + SALARIO_LIQUIDO = float(salario-(IR + INSS + SINDICATO)) + print(f'+ Salário Bruto : {"%.2f"%(salario)}') + print(f'- IR (11%) : R$ {"%.2f"%(IR)}') + print(f'- INSS (8%) : R$ {"%.2f"%(INSS)}') + print(f'- Sindicato ( 5%) : R$ {"%.2f"%(SINDICATO)}') + print(f'= Salário Liquido : R$ {"%.2f"%(SALARIO_LIQUIDO)}') diff --git a/secao_01_estrutura_sequencial/ex_16_loja_de_tintas_simples.py b/secao_01_estrutura_sequencial/ex_16_loja_de_tintas_simples.py index 1a2d13529..cbe856399 100644 --- a/secao_01_estrutura_sequencial/ex_16_loja_de_tintas_simples.py +++ b/secao_01_estrutura_sequencial/ex_16_loja_de_tintas_simples.py @@ -21,3 +21,8 @@ def calcular_latas_e_preco_de_tinta(): """Escreva aqui em baixo a sua solução""" + metros_quadrados = float(input('Digite a quantidade em metros quadrados: ')) + quantidade_tinta_litros = float(metros_quadrados/3) + lata = int(round(quantidade_tinta_litros/18)) + preco = float(lata*80) + print(f'Você deve comprar {(lata)} lata(s) tinta ao custo de R$ {"%.2f"%(preco)}') From 8c413d5c21b8bd6f495b8944b4f7abb2bd8aadea Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Wed, 1 Jun 2022 15:45:37 -0300 Subject: [PATCH 05/20] =?UTF-8?q?fiz=20at=C3=A9=20o=20ex2-=209?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_17_loja_de_tintas_complexa.py | 12 ++++++++++++ .../ex_18_tempo_de_download.py | 3 +++ .../ex_01_imprimir_maior_numero.py | 4 ++++ .../ex_02_positivo_ou_negativo.py | 11 +++++++++++ secao_02_estrutura_de_decisao/ex_03_F_ou_M.py | 10 ++++++++++ .../ex_04_vogal_ou_consoante.py | 5 +++++ .../ex_05_notas_parciais.py | 7 +++++++ .../ex_06_maior_numero_de_3_numeros.py | 9 +++++++++ .../ex_07_maior_e_menor_numero_de_3_numeros.py | 14 ++++++++++++++ .../ex_08_escolha_de_produto.py | 7 +++++++ .../ex_09_numeros_decrescentes.py | 4 ++++ 11 files changed, 86 insertions(+) diff --git a/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py b/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py index 09b7e7ffc..f98b99156 100644 --- a/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py +++ b/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py @@ -30,3 +30,15 @@ def calcular_latas_e_preco_de_tinta(): """Escreva aqui em baixo a sua solução""" + import math + + metros_quadrados = float(input('Digite a quantidade em metros quadrados: ')) + quantidade_tinta_litros = float(math.ceil((metros_quadrados/6)/100)*110) + galao = int(math.ceil(quantidade_tinta_litros/18)) + lata = int(math.ceil(quantidade_tinta_litros/3.6)) + preco_lata = float(lata*25) + preco_galao = float (galao*80) + print(f'Você deve comprar {round(quantidade_tinta_litros)} litros de tinta.') + print(f'Você deve comprar {(round(galao)+0.5)} lata(s) de 18 litros a um custo de R$ {"%.2f"%(preco_galao)}') + + \ No newline at end of file diff --git a/secao_01_estrutura_sequencial/ex_18_tempo_de_download.py b/secao_01_estrutura_sequencial/ex_18_tempo_de_download.py index b24730f1a..6926221e4 100644 --- a/secao_01_estrutura_sequencial/ex_18_tempo_de_download.py +++ b/secao_01_estrutura_sequencial/ex_18_tempo_de_download.py @@ -21,3 +21,6 @@ def calcular_tempo_de_download(): """Escreva aqui em baixo a sua solução""" + tamanho_arquivo = int(input('Digite o tamanho do arquivo: ')) + velocidade_link = int(input('Digite a velocidade em Mbps: ')) + print(f'O tempo aproximado do Download é: {round((tamanho_arquivo*8)/(velocidade_link*60))} minuto(s)') diff --git a/secao_02_estrutura_de_decisao/ex_01_imprimir_maior_numero.py b/secao_02_estrutura_de_decisao/ex_01_imprimir_maior_numero.py index e1d40a714..2fc706ee9 100644 --- a/secao_02_estrutura_de_decisao/ex_01_imprimir_maior_numero.py +++ b/secao_02_estrutura_de_decisao/ex_01_imprimir_maior_numero.py @@ -17,3 +17,7 @@ def maior_de_dois_numeros(x, y): """Escreva aqui em baixo a sua solução""" + if x > y: + return x + else: + return y diff --git a/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py b/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py index bdb29efcf..31a183341 100644 --- a/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py +++ b/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py @@ -17,3 +17,14 @@ def positivo_ou_negativo(n): """Escreva aqui em baixo a sua solução""" + if n > 0: + print("'positivo'") + elif n == 0: + print("'não nem positivo nem negativo'") + else: + print("'negativo'") + + + + + diff --git a/secao_02_estrutura_de_decisao/ex_03_F_ou_M.py b/secao_02_estrutura_de_decisao/ex_03_F_ou_M.py index 466585cfb..85f0909e9 100644 --- a/secao_02_estrutura_de_decisao/ex_03_F_ou_M.py +++ b/secao_02_estrutura_de_decisao/ex_03_F_ou_M.py @@ -16,5 +16,15 @@ """ + def f_ou_m(sexo): """Escreva aqui em baixo a sua solução""" + if sexo == 'M': + print("'M - Masculino'") + elif sexo == 'F': + print("'F - Feminino'") + else: + print("'Sexo inválido'") + + + diff --git a/secao_02_estrutura_de_decisao/ex_04_vogal_ou_consoante.py b/secao_02_estrutura_de_decisao/ex_04_vogal_ou_consoante.py index acdc60f64..e493670c2 100644 --- a/secao_02_estrutura_de_decisao/ex_04_vogal_ou_consoante.py +++ b/secao_02_estrutura_de_decisao/ex_04_vogal_ou_consoante.py @@ -17,3 +17,8 @@ def vogal_ou_consoante(letra): """Escreva aqui em baixo a sua solução""" + lista = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'] + if letra in lista: + print("'vogal'") + else: + print("'consoante'") diff --git a/secao_02_estrutura_de_decisao/ex_05_notas_parciais.py b/secao_02_estrutura_de_decisao/ex_05_notas_parciais.py index 322a968e7..f8026ef16 100644 --- a/secao_02_estrutura_de_decisao/ex_05_notas_parciais.py +++ b/secao_02_estrutura_de_decisao/ex_05_notas_parciais.py @@ -21,3 +21,10 @@ def notas_parciais(nota_1, nota_2): """Escreva aqui em baixo a sua solução""" + media = ((nota_1 + nota_2)/2) + if 7 <= media <=9: + print("'Aprovado'") + elif media <7 : + print("'Reprovado'") + else: + print("'Aprovado com Distinção'") diff --git a/secao_02_estrutura_de_decisao/ex_06_maior_numero_de_3_numeros.py b/secao_02_estrutura_de_decisao/ex_06_maior_numero_de_3_numeros.py index 84e731053..3ba30fd2d 100644 --- a/secao_02_estrutura_de_decisao/ex_06_maior_numero_de_3_numeros.py +++ b/secao_02_estrutura_de_decisao/ex_06_maior_numero_de_3_numeros.py @@ -17,3 +17,12 @@ def calcular_maior_de_3_numeros(x, y, z): """Escreva aqui em baixo a sua solução""" + if (y) < x > (z): + print(x) + elif (x) < y >= (z): + print(y) + else: + print(z) + + + diff --git a/secao_02_estrutura_de_decisao/ex_07_maior_e_menor_numero_de_3_numeros.py b/secao_02_estrutura_de_decisao/ex_07_maior_e_menor_numero_de_3_numeros.py index b60bfe70f..54fcb839a 100644 --- a/secao_02_estrutura_de_decisao/ex_07_maior_e_menor_numero_de_3_numeros.py +++ b/secao_02_estrutura_de_decisao/ex_07_maior_e_menor_numero_de_3_numeros.py @@ -19,5 +19,19 @@ """ + def calcular_maior_de_3_numeros(x, y, z): """Escreva aqui em baixo a sua solução""" + if (y) < (z) <= x: + print(f'Maior: {x}') + print(f'Menor: {y}') + elif (x) < (z) <= (y): + print(f'Maior: {y}') + print(f'Menor: {x}') + elif (x) < (y) <= (z): + print(f'Maior: {z}') + print(f'Menor: {x}') + else: + print(f'Maior: {z}') + print(f'Menor: {y}') + diff --git a/secao_02_estrutura_de_decisao/ex_08_escolha_de_produto.py b/secao_02_estrutura_de_decisao/ex_08_escolha_de_produto.py index 92155628a..7e1f3e79f 100644 --- a/secao_02_estrutura_de_decisao/ex_08_escolha_de_produto.py +++ b/secao_02_estrutura_de_decisao/ex_08_escolha_de_produto.py @@ -20,3 +20,10 @@ def decidir_melhor_produto(x, y, z): """Escreva aqui em baixo a sua solução""" + if (y) > x < (z): + print(f'Melhor produto custa R$ {"%.2f" %(x)}') + elif (x) > y <= (z): + print(f'Melhor produto custa R$ {"%.2f" %(y)}') + else: + print(f'Melhor produto custa R$ {"%.2f" %(z)}') + diff --git a/secao_02_estrutura_de_decisao/ex_09_numeros_decrescentes.py b/secao_02_estrutura_de_decisao/ex_09_numeros_decrescentes.py index 547338521..7f472ec79 100644 --- a/secao_02_estrutura_de_decisao/ex_09_numeros_decrescentes.py +++ b/secao_02_estrutura_de_decisao/ex_09_numeros_decrescentes.py @@ -18,3 +18,7 @@ def ordenar_decrescente(x, y, z): """Escreva aqui em baixo a sua solução""" + lista = [x, y, z] + ordem_lista = sorted(lista, reverse=True) + print(*ordem_lista, sep=', ') + From 8e26438fdf00d8e36d547087508e36cc90bed533 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Thu, 2 Jun 2022 11:26:31 -0300 Subject: [PATCH 06/20] =?UTF-8?q?resolvi=20at=C3=A9=20o=20ex10=20-=20estru?= =?UTF-8?q?tura=20de=20decis=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_17_loja_de_tintas_complexa.py | 21 ++++++++++++------- .../ex_10_cumprimento_em_turno.py | 9 ++++++++ 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py b/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py index f98b99156..f9480430d 100644 --- a/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py +++ b/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py @@ -32,13 +32,18 @@ def calcular_latas_e_preco_de_tinta(): """Escreva aqui em baixo a sua solução""" import math - metros_quadrados = float(input('Digite a quantidade em metros quadrados: ')) - quantidade_tinta_litros = float(math.ceil((metros_quadrados/6)/100)*110) - galao = int(math.ceil(quantidade_tinta_litros/18)) - lata = int(math.ceil(quantidade_tinta_litros/3.6)) - preco_lata = float(lata*25) - preco_galao = float (galao*80) - print(f'Você deve comprar {round(quantidade_tinta_litros)} litros de tinta.') - print(f'Você deve comprar {(round(galao)+0.5)} lata(s) de 18 litros a um custo de R$ {"%.2f"%(preco_galao)}') + metros_quadrados = int(input('Digite a quantidade em metros quadrados: ')) + metros_com_sobra = metros_quadrados * 1.1 + quantidade_tinta_metro = 6 + litros_necessarios = metros_com_sobra / metros_quadrados + litros_lata = 18 + quantidade_latas = math.ceil(litros_necessarios / litros_lata) + valor_apenas_latas = quantidade_latas * 80 + print(f'Você deve comprar {quantidade_latas} lata(s) de 18 litros a um custo de R$ {valor_apenas_latas}') + + litros_galao = 3.6 + quantidade_galoes = math.ceil( litros_necessarios / litros_galao) + valor_apenas_galoes = quantidade_galoes * 25 + print(f'Você pode comprar {quantidade_galoes} lata(s) de 3.6 litros a um custo de R$ {valor_apenas_galoes}') \ No newline at end of file diff --git a/secao_02_estrutura_de_decisao/ex_10_cumprimento_em_turno.py b/secao_02_estrutura_de_decisao/ex_10_cumprimento_em_turno.py index d502e8de9..f9cbc2dfd 100644 --- a/secao_02_estrutura_de_decisao/ex_10_cumprimento_em_turno.py +++ b/secao_02_estrutura_de_decisao/ex_10_cumprimento_em_turno.py @@ -25,3 +25,12 @@ def cumprimentar(turno: str): """Escreva aqui em baixo a sua solução""" + if turno == 'M' or turno == 'm': + print(f"'Bom dia!'") + elif turno == 'V' or turno == 'v': + print(f"'Boa tarde!'") + elif turno == 'n' or turno == 'N': + print(f"'Boa noite!'") + else: + print(f"'Valor Inválido!'") + From d2bb5a30e73ac07a538fd444cc8e237521379f7a Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Fri, 3 Jun 2022 09:30:35 -0300 Subject: [PATCH 07/20] =?UTF-8?q?resolvi=20at=C3=A9=20o=20ex=2011=20da=20e?= =?UTF-8?q?strutura=20de=20decisao?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_17_loja_de_tintas_complexa.py | 42 ++++++++++++------- .../ex_11_salario_tabajara.py | 33 +++++++++++++++ 2 files changed, 60 insertions(+), 15 deletions(-) diff --git a/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py b/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py index f9480430d..7ab279900 100644 --- a/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py +++ b/secao_01_estrutura_sequencial/ex_17_loja_de_tintas_complexa.py @@ -30,20 +30,32 @@ def calcular_latas_e_preco_de_tinta(): """Escreva aqui em baixo a sua solução""" - import math - - metros_quadrados = int(input('Digite a quantidade em metros quadrados: ')) - metros_com_sobra = metros_quadrados * 1.1 - quantidade_tinta_metro = 6 - litros_necessarios = metros_com_sobra / metros_quadrados - litros_lata = 18 - quantidade_latas = math.ceil(litros_necessarios / litros_lata) - valor_apenas_latas = quantidade_latas * 80 - print(f'Você deve comprar {quantidade_latas} lata(s) de 18 litros a um custo de R$ {valor_apenas_latas}') - - litros_galao = 3.6 - quantidade_galoes = math.ceil( litros_necessarios / litros_galao) - valor_apenas_galoes = quantidade_galoes * 25 - print(f'Você pode comprar {quantidade_galoes} lata(s) de 3.6 litros a um custo de R$ {valor_apenas_galoes}') + area = float(input('Area')) + area_folga = area * 1.1 + litros_tinta = round((area_folga / 6) + 0.5) + + latas = round((area_folga / (18 * 6)) + 0.5) + custo_lata = latas * 80 + sobra_tinta_latas = (latas * 18) - litros_tinta + + galoes = round((area_folga / (3.6 * 6)) + 0.5) + custo_galao = galoes * 25 + sobra_tinta_galoes = (galoes * 3.6) - litros_tinta + + latas_vantagem = (area_folga // (18 * 6)) + resto_latas = (area_folga % 6) + galoes_vantagem = round((resto_latas / (3.6 * 6)) + 0.5) + sobra_vantagem = 3.6 - round((resto_latas / 6) + 0.5) + custo_vantagem = (latas_vantagem * 80) + (galoes_vantagem * 25) + + print(f'Você deve comprar {litros_tinta} litros de tinta.') + print( + f'Você pode comprar {latas} lata(s) de 18 litros a um custo de R$ {custo_lata}. Vão sobrar {sobra_tinta_latas:.1f} litro(s) de tinta.') + print( + f'Você pode comprar {galoes} lata(s) de 3.6 litros a um custo de R$ {custo_galao}. Vão sobrar {sobra_tinta_galoes:.1f} litro(s) de tinta.') + print( + f'Para menor custo, você pode comprar {latas_vantagem:.0f} lata(s) de 18 litros e {galoes_vantagem} galão(ões) de 3.6 litros a um custo de R$ {custo_vantagem:.0f}. Vão sobrar {sobra_vantagem} litro(s) de tinta.') + + \ No newline at end of file diff --git a/secao_02_estrutura_de_decisao/ex_11_salario_tabajara.py b/secao_02_estrutura_de_decisao/ex_11_salario_tabajara.py index f10641d83..7f44ebf9a 100644 --- a/secao_02_estrutura_de_decisao/ex_11_salario_tabajara.py +++ b/secao_02_estrutura_de_decisao/ex_11_salario_tabajara.py @@ -41,3 +41,36 @@ def calcular_aumento(salario: float): """Escreva aqui em baixo a sua solução""" + # aumento_percentual = float(input('Digite a porcentagem do aumento: ')) + + if salario <= 280.00: + aumento_percentual = 0.2 + valor_aumento = (salario * aumento_percentual) + print(f'Salário atual: R$ {"%.2f"%salario}') + print(f'Aumento porcentual: {round(aumento_percentual*100)}%') + print(f'Valor do aumento: R$ {"%.2f"%valor_aumento}') + print(f'Novo salário: R$ {"%.2f"%(salario + valor_aumento)}') + elif 280.00 < salario <= 700.00: + aumento_percentual = 0.15 + valor_aumento = (salario * aumento_percentual) + print(f'Salário atual: R$ {"%.2f"%salario}') + print(f'Aumento porcentual: {round(aumento_percentual*100)}%') + print(f'Valor do aumento: R$ {"%.2f"%valor_aumento}') + print(f'Novo salário: R$ {"%.2f"%(salario + valor_aumento)}') + elif 700.00 < salario <= 1500.00: + aumento_percentual = 0.1 + valor_aumento = (salario * aumento_percentual) + print(f'Salário atual: R$ {"%.2f"%salario}') + print(f'Aumento porcentual: {round(aumento_percentual*100)}%') + print(f'Valor do aumento: R$ {"%.2f"%valor_aumento}') + print(f'Novo salário: R$ {"%.2f"%(salario + valor_aumento)}') + else: + aumento_percentual = 0.05 + valor_aumento = (salario * aumento_percentual) + print(f'Salário atual: R$ {"%.2f"%salario}') + print(f'Aumento porcentual: {round(aumento_percentual*100)}%') + print(f'Valor do aumento: R$ {"%.2f"%valor_aumento}') + print(f'Novo salário: R$ {"%.2f"%(salario + valor_aumento)}') + + + From 2a0776f29116d5dd24fbbfba4661b420cec7d956 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Fri, 3 Jun 2022 13:45:15 -0300 Subject: [PATCH 08/20] =?UTF-8?q?resolvi=20at=C3=A9=20o=20ex=2013=20da=200?= =?UTF-8?q?2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_12_clt_assalto.py | 61 +++++++++++++++++++ .../ex_13_dia_da_semana.py | 16 +++++ 2 files changed, 77 insertions(+) diff --git a/secao_02_estrutura_de_decisao/ex_12_clt_assalto.py b/secao_02_estrutura_de_decisao/ex_12_clt_assalto.py index 117e67bab..4dfa3cb22 100644 --- a/secao_02_estrutura_de_decisao/ex_12_clt_assalto.py +++ b/secao_02_estrutura_de_decisao/ex_12_clt_assalto.py @@ -53,3 +53,64 @@ def calcular_salario_liquido(valor_hora: float, horas_trabalhadas: int): """Escreva aqui em baixo a sua solução""" + salario_bruto = valor_hora * horas_trabalhadas + imposto_renda = 0 + calculo_imposto_renda = (salario_bruto / 100) * imposto_renda + sindicato = 3 + inss = 10 + calculo_inss = (salario_bruto / 100) * inss + calculo_sindicato = (salario_bruto / 100) * sindicato + fgts = 11 + calculo_fgts = (salario_bruto / 100) * fgts + total_descontos = calculo_imposto_renda + calculo_inss + calculo_sindicato + salario_liquido = salario_bruto - total_descontos + if salario_bruto <= 900: + imposto_renda = 0 + calculo_imposto_renda = (salario_bruto / 100) * imposto_renda + total_descontos = calculo_imposto_renda + calculo_inss + calculo_sindicato + salario_liquido = salario_bruto - total_descontos + print(f'Salário Bruto: (R$ {"%.2f"%valor_hora} * {horas_trabalhadas}) : R$ {"%.2f"%salario_bruto}') + print(f'(-) IR ({imposto_renda}%) : R$ {"%.2f"%calculo_imposto_renda}') + print(f'(-) INSS ({inss}%) : R$ {"%.2f"%calculo_inss}') + print(f'(-) Sindicato ({sindicato}%) : R$ {"%.2f"%calculo_sindicato}') + print(f'FGTS ({fgts}%) : R$ {"%.2f"%calculo_fgts}') + print(f'Total de descontos : R$ {"%.2f"%total_descontos}') + print(f'Salário Liquido : R$ {"%.2f"%salario_liquido}') + elif 900< salario_bruto <= 1500.00: + imposto_renda = 5 + calculo_imposto_renda = (salario_bruto / 100) * imposto_renda + total_descontos = calculo_imposto_renda + calculo_inss + calculo_sindicato + salario_liquido = salario_bruto - total_descontos + print(f'Salário Bruto: (R$ {"%.2f"%valor_hora} * {horas_trabalhadas}) : R$ {"%.2f"%salario_bruto}') + print(f'(-) IR ({imposto_renda}%) : R$ {"%.2f"%calculo_imposto_renda}') + print(f'(-) INSS ({inss}%) : R$ {"%.2f"%calculo_inss}') + print(f'(-) Sindicato ({sindicato}%) : R$ {"%.2f"%calculo_sindicato}') + print(f'FGTS ({fgts}%) : R$ {"%.2f"%calculo_fgts}') + print(f'Total de descontos : R$ {"%.2f"%total_descontos}') + print(f'Salário Liquido : R$ {"%.2f"%salario_liquido}') + elif 1500.00 < salario_bruto <= 2000.00: + imposto_renda = 10 + calculo_imposto_renda = (salario_bruto / 100) * imposto_renda + total_descontos = calculo_imposto_renda + calculo_inss + calculo_sindicato + salario_liquido = salario_bruto - total_descontos + print(f'Salário Bruto: (R$ {"%.2f"%valor_hora} * {horas_trabalhadas}) : R$ {"%.2f"%salario_bruto}') + print(f'(-) IR ({imposto_renda}%) : R$ {"%.2f"%calculo_imposto_renda}') + print(f'(-) INSS ({inss}%) : R$ {"%.2f"%calculo_inss}') + print(f'(-) Sindicato ({sindicato}%) : R$ {"%.2f"%calculo_sindicato}') + print(f'FGTS ({fgts}%) : R$ {"%.2f"%calculo_fgts}') + print(f'Total de descontos : R$ {"%.2f"%total_descontos}') + print(f'Salário Liquido : R$ {"%.2f"%salario_liquido}') + else: + imposto_renda = 20 + calculo_imposto_renda = (salario_bruto / 100) * imposto_renda + total_descontos = calculo_imposto_renda + calculo_inss + calculo_sindicato + salario_liquido = salario_bruto - total_descontos + print(f'Salário Bruto: (R$ {"%.2f"%valor_hora} * {horas_trabalhadas}) : R$ {"%.2f"%salario_bruto}') + print(f'(-) IR ({imposto_renda}%) : R$ {"%.2f"%calculo_imposto_renda}') + print(f'(-) INSS ({inss}%) : R$ {"%.2f"%calculo_inss}') + print(f'(-) Sindicato ({sindicato}%) : R$ {"%.2f"%calculo_sindicato}') + print(f'FGTS ({fgts}%) : R$ {"%.2f"%calculo_fgts}') + print(f'Total de descontos : R$ {"%.2f"%total_descontos}') + print(f'Salário Liquido : R$ {"%.2f"%salario_liquido}') + + diff --git a/secao_02_estrutura_de_decisao/ex_13_dia_da_semana.py b/secao_02_estrutura_de_decisao/ex_13_dia_da_semana.py index 6edeb2c7d..4589cdf15 100644 --- a/secao_02_estrutura_de_decisao/ex_13_dia_da_semana.py +++ b/secao_02_estrutura_de_decisao/ex_13_dia_da_semana.py @@ -29,3 +29,19 @@ def calcular_dia_da_semana(numero: int): """Escreva aqui em baixo a sua solução""" + if numero == 1: + print(f"'Domingo'") + elif numero == 2: + print(f"'Segunda'") + elif numero == 3: + print(f"'Terça'") + elif numero == 4: + print(f"'Quarta'") + elif numero == 5: + print(f"'Quinta'") + elif numero == 6: + print(f"'Sexta'") + elif numero == 7: + print(f"'Sábado'") + else: + print(f"'Dia Inválido'") From bd1c278ea21bc4babf00b5c0c1905835c0fff1a7 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Fri, 3 Jun 2022 15:07:50 -0300 Subject: [PATCH 09/20] =?UTF-8?q?resolvi=20at=C3=A9=20a=2015=20da=202=20li?= =?UTF-8?q?sta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_14_atribuicoes_de_conceitos.py | 27 +++++++++++++++++++ .../ex_15_triangulo.py | 13 +++++++++ 2 files changed, 40 insertions(+) diff --git a/secao_02_estrutura_de_decisao/ex_14_atribuicoes_de_conceitos.py b/secao_02_estrutura_de_decisao/ex_14_atribuicoes_de_conceitos.py index ca01c9495..ef44ce33e 100644 --- a/secao_02_estrutura_de_decisao/ex_14_atribuicoes_de_conceitos.py +++ b/secao_02_estrutura_de_decisao/ex_14_atribuicoes_de_conceitos.py @@ -46,3 +46,30 @@ def calcular_conceito(nota_1: float, nota_2: float): """Escreva aqui em baixo a sua solução""" + + nota1 = nota_1 + nota2 = nota_2 + media = (nota1+nota2)/2 + + if media >= 9 and media <= 10: + c = 'A' + elif media >= 7.5 and media < 9: + c = 'B' + elif media >= 6 and media < 7.5: + c = 'C' + elif media >= 4 and media < 6: + c = 'D' + else: + c = 'E' + + if c in ['A', 'B', 'C']: + status = 'APROVADO' + else: + status = 'REPROVADO' + + print(f'Notas: {nota1:.1f} e {nota2:.1f}.') + print(f'Média: {media:.1f}') + print(f'Conceito: {c}') + print(f'Status: {status}') + + diff --git a/secao_02_estrutura_de_decisao/ex_15_triangulo.py b/secao_02_estrutura_de_decisao/ex_15_triangulo.py index 7da3edebb..39820256d 100644 --- a/secao_02_estrutura_de_decisao/ex_15_triangulo.py +++ b/secao_02_estrutura_de_decisao/ex_15_triangulo.py @@ -27,3 +27,16 @@ def classificar_triangulo(lado_a: float, lado_b: float, lado_c: float): """Escreva aqui em baixo a sua solução""" + lado1 = lado_a + lado2 = lado_b + lado3 = lado_c + + if lado1 + lado2 < lado3 or lado1 + lado3 < lado2 or lado2 + lado3 < lado1: + print(f"'Não é um triângulo'") + else: + if lado1 == lado2 and lado2 == lado3: + print(f"'Triângulo Equilátero'") + elif lado1 == lado2 or lado2 == lado3 or lado1 == lado3: + print(f"'Triângulo Isósceles'") + else: + print(f"'Triângulo Escaleno'") From 71536f4fd58de14b1f7dde05a342d9c90915cd2d Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Sat, 4 Jun 2022 21:36:25 -0300 Subject: [PATCH 10/20] =?UTF-8?q?resolvi=20at=C3=A9=20a=2016=20da=2002?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_16_equacao_segundo_grau.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/secao_02_estrutura_de_decisao/ex_16_equacao_segundo_grau.py b/secao_02_estrutura_de_decisao/ex_16_equacao_segundo_grau.py index f3ae3dcde..f28962b31 100644 --- a/secao_02_estrutura_de_decisao/ex_16_equacao_segundo_grau.py +++ b/secao_02_estrutura_de_decisao/ex_16_equacao_segundo_grau.py @@ -26,3 +26,17 @@ def resolver_equacao_do_segundo_grau(a: float, b: float, c: float): """Escreva aqui em baixo a sua solução""" + delta = (b ** 2) - 4 * (a * c) + x1 = ( - b + delta ** 0.5) / 2 * a + x2 = ( - b - delta ** 0.5) / 2 * a + + if a == 0: + print(f"'Valor do coeficiente a deve ser diferente de 0'") + else: + if delta < 0: + print(f"""'Delta negativo ({delta}), por isso não existem raízes reais'""") + elif delta == 0: + print(f"'Delta é 0, raíz única no valor de {x1:.1f}'") + else: + print(f"'Delta é {delta}, raízes são {x1:.1f} e {x2:.1f}'") + From eb879dacb120e0a221fa584cb8d78d3f47ae4506 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Sat, 4 Jun 2022 22:09:27 -0300 Subject: [PATCH 11/20] =?UTF-8?q?fiz=20at=C3=A9=20o=2022?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- secao_02_estrutura_de_decisao/ex_18_validador_de_data.py | 9 +++++++++ secao_02_estrutura_de_decisao/ex_20_3_notas_parciais.py | 8 ++++++++ secao_02_estrutura_de_decisao/ex_21_troco.py | 7 +++++++ secao_02_estrutura_de_decisao/ex_22_par_ou_impar.py | 7 +++++++ 4 files changed, 31 insertions(+) diff --git a/secao_02_estrutura_de_decisao/ex_18_validador_de_data.py b/secao_02_estrutura_de_decisao/ex_18_validador_de_data.py index 470fbd63d..42f013517 100644 --- a/secao_02_estrutura_de_decisao/ex_18_validador_de_data.py +++ b/secao_02_estrutura_de_decisao/ex_18_validador_de_data.py @@ -24,3 +24,12 @@ def validar_data(data: str): """Escreva aqui em baixo a sua solução""" + if len(data) < 7: + print("'Data inválida'") + elif data[1] and data[3] or data[3] or data [5] == "/": + if int (data[0]) >= 3 and int(data[4]) == 2: + print("'Data inválida'") + elif data[2] == "/" and int(data[4]) >= 3: + print("'Data inválida'") + else: + print("'Data válida'") diff --git a/secao_02_estrutura_de_decisao/ex_20_3_notas_parciais.py b/secao_02_estrutura_de_decisao/ex_20_3_notas_parciais.py index c064ce5fd..736c480bc 100644 --- a/secao_02_estrutura_de_decisao/ex_20_3_notas_parciais.py +++ b/secao_02_estrutura_de_decisao/ex_20_3_notas_parciais.py @@ -21,3 +21,11 @@ def calcular_status(nota_1, nota_2, nota_3): """Escreva aqui em baixo a sua solução""" + media = (nota_1 + nota_2 + nota_3) / 3 + + if media >= 7 and media < 10: + print("'Aprovado'") + elif media < 7: + print("'Reprovado'") + else: + print("'Aprovado com Distinção'") diff --git a/secao_02_estrutura_de_decisao/ex_21_troco.py b/secao_02_estrutura_de_decisao/ex_21_troco.py index 7edac85b2..7a4b530b5 100644 --- a/secao_02_estrutura_de_decisao/ex_21_troco.py +++ b/secao_02_estrutura_de_decisao/ex_21_troco.py @@ -27,3 +27,10 @@ def calcular_troco(valor: int) -> str: """Escreva aqui em baixo a sua solução""" + + x = list(str(valor)) + + if (x[-1]) in ['0', '2', '4', '6', '8']: + print("'Par'") + else: + print("'Impar'") diff --git a/secao_02_estrutura_de_decisao/ex_22_par_ou_impar.py b/secao_02_estrutura_de_decisao/ex_22_par_ou_impar.py index a836f1758..42b292334 100644 --- a/secao_02_estrutura_de_decisao/ex_22_par_ou_impar.py +++ b/secao_02_estrutura_de_decisao/ex_22_par_ou_impar.py @@ -22,3 +22,10 @@ def decidir_se_eh_par_ou_impar(valor: int) -> str: """Escreva aqui em baixo a sua solução""" + + x = list(str(valor)) + + if (x[-1]) in ['0', '2', '4', '6', '8']: + print("'Par'") + else: + print("'Impar'") From 1474200d15814001978487d9340d63f59cbbcb25 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 6 Jun 2022 11:16:56 -0300 Subject: [PATCH 12/20] resolvi a 21 da 02 --- secao_02_estrutura_de_decisao/ex_21_troco.py | 36 ++++++++++++++++--- .../ex_23_inteiro_ou_decimal.py | 4 +++ .../ex_25_sherlock.py | 4 +++ 3 files changed, 40 insertions(+), 4 deletions(-) diff --git a/secao_02_estrutura_de_decisao/ex_21_troco.py b/secao_02_estrutura_de_decisao/ex_21_troco.py index 7a4b530b5..f70be7fd2 100644 --- a/secao_02_estrutura_de_decisao/ex_21_troco.py +++ b/secao_02_estrutura_de_decisao/ex_21_troco.py @@ -27,10 +27,38 @@ def calcular_troco(valor: int) -> str: """Escreva aqui em baixo a sua solução""" + + numero = valor + centena = int(numero / 100) + dezena = int((numero - (centena * 100)) / 10) + unidade = numero - (centena * 100 + (dezena * 10)) - x = list(str(valor)) + nota_100 = centena - if (x[-1]) in ['0', '2', '4', '6', '8']: - print("'Par'") + if dezena >= 5: + nota_50 = 1 + nota_10 = dezena - 5 + elif dezena < 5: + nota_10 = dezena + + if unidade >=5: + nota_5 = 1 + nota_1 = unidade - 5 else: - print("'Impar'") + nota_1 = unidade + + if centena == 0 and dezena == 0 and unidade == 1: + print(f"'{unidade} nota de R$ 1'") + if centena == 0 and dezena == 0 and unidade >= 5: + print(f"'{nota_5} nota de R$ 5'") + + if centena == 0 and dezena == 1 and unidade == 0: + print(f"'{dezena} nota de R$ 10'") + if centena == 0 and dezena == 1 and unidade == 1: + print(f"'{dezena} nota de R$ 10 e {unidade} nota de R$ 1'") + + if centena > 1 and dezena >5 and unidade >= 5: + print(f"'{centena} notas de R$ 100, {nota_50} nota de R$ 50, {nota_10} notas de R$ 10, {nota_5} nota de R$ 5 e {nota_1} notas de R$ 1'") + + if centena > 1 and dezena == 5 and unidade > 1: + print(f"'{centena} notas de R$ 100, {nota_50} nota de R$ 50, {nota_5} nota de R$ 5 e {nota_1} nota de R$ 1'") \ No newline at end of file diff --git a/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py b/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py index 9f2d9da04..33f53a11c 100644 --- a/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py +++ b/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py @@ -22,3 +22,7 @@ def decidir_se_eh_inteiro_ou_decimal(valor: str) -> str: """Escreva aqui em baixo a sua solução""" + if valor % 1 == 0: + print("'Inteiro'") + else: + print("'Decimal'") diff --git a/secao_02_estrutura_de_decisao/ex_25_sherlock.py b/secao_02_estrutura_de_decisao/ex_25_sherlock.py index 6fccc6995..dd7d87242 100644 --- a/secao_02_estrutura_de_decisao/ex_25_sherlock.py +++ b/secao_02_estrutura_de_decisao/ex_25_sherlock.py @@ -33,3 +33,7 @@ def investivar(telefonou: str, estava_no_local: str, mora_perto: str, devia: str, trabalhou: str, ): """Escreva aqui em baixo a sua solução""" + if telefonou == 'Sim' and estava_no_local == 'Sim' and mora_perto == 'Sim' and devia == 'Sim' and trabalhou == 'Sim': + print:("'Assassino'") + elif telefonou == 'Sim' and estava_no_local == 'Sim' and mora_perto == 'Sim' and devia == 'Sim' and trabalhou == 'Não': + print:("'Inocente'") From e5563c7776bd50e823f5490a1a5892cc38de1282 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 6 Jun 2022 14:56:29 -0300 Subject: [PATCH 13/20] fiz o ex25 da 02 --- .../ex_25_sherlock.py | 32 ++++++++++++++++--- .../ex_26_posto_de_gasolina.py | 8 +++++ 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/secao_02_estrutura_de_decisao/ex_25_sherlock.py b/secao_02_estrutura_de_decisao/ex_25_sherlock.py index dd7d87242..edb9ef2e0 100644 --- a/secao_02_estrutura_de_decisao/ex_25_sherlock.py +++ b/secao_02_estrutura_de_decisao/ex_25_sherlock.py @@ -31,9 +31,33 @@ """ +from itertools import count + + def investivar(telefonou: str, estava_no_local: str, mora_perto: str, devia: str, trabalhou: str, ): """Escreva aqui em baixo a sua solução""" - if telefonou == 'Sim' and estava_no_local == 'Sim' and mora_perto == 'Sim' and devia == 'Sim' and trabalhou == 'Sim': - print:("'Assassino'") - elif telefonou == 'Sim' and estava_no_local == 'Sim' and mora_perto == 'Sim' and devia == 'Sim' and trabalhou == 'Não': - print:("'Inocente'") + count = 0 + if telefonou == 'Sim': + count += 1 + if estava_no_local == 'Sim': + count += 1 + if mora_perto == 'Sim': + count += 1 + if devia == 'Sim': + count += 1 + if trabalhou == 'Sim': + count += 1 + + + if count == 2: + print(f"'Suspeito'") + elif count == 3: + print(f"'Cúmplice'") + elif count == 4: + print(f"'Cúmplice'") + elif count == 5: + print(f"'Assassino'") + else: + print(f"'Inocente'") + + \ No newline at end of file diff --git a/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py b/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py index a308c0640..102f4548c 100644 --- a/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py +++ b/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py @@ -35,3 +35,11 @@ def calcular_abastecimento(litros_de_combustivel: float, tipo_de_combustivel: str) -> str: """Escreva aqui em baixo a sua solução""" + quantidade_gasolina = float + porcentagem_desconto = float + preco = float + desconto_gasolina_litros = quantidade_gasolina * (({preco} /100) * {porcentagem_desconto}) + quantidade_alcool = float + desconto_alcool_litros = quantidade_alcool * (({preco} /100) * {porcentagem_desconto}) + + if From 36c39b4b0e6e9b647a0501640e0006f454a0d085 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 6 Jun 2022 22:43:02 -0300 Subject: [PATCH 14/20] resolvi o do ano bissexto --- .../ex_02_positivo_ou_negativo.py | 2 +- .../ex_17_ano_bissexto.py | 4 ++++ secao_02_estrutura_de_decisao/ex_24_operacao.py | 14 ++++++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py b/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py index 520b97e8d..74ce581a5 100644 --- a/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py +++ b/secao_02_estrutura_de_decisao/ex_02_positivo_ou_negativo.py @@ -20,7 +20,7 @@ def positivo_ou_negativo(n): if n > 0: print("'positivo'") elif n == 0: - print("'não nem positivo nem negativo'") + print("'não tem positivo nem negativo'") else: print("'negativo'") diff --git a/secao_02_estrutura_de_decisao/ex_17_ano_bissexto.py b/secao_02_estrutura_de_decisao/ex_17_ano_bissexto.py index cf1b9b11b..e40d02d70 100644 --- a/secao_02_estrutura_de_decisao/ex_17_ano_bissexto.py +++ b/secao_02_estrutura_de_decisao/ex_17_ano_bissexto.py @@ -20,3 +20,7 @@ def eh_ano_bissexto(ano: int): """Escreva aqui em baixo a sua solução""" + if ano % 4 == 0 and ano % 100 != 0 or ano % 400 == 0: + print('True') + else: + print('False') diff --git a/secao_02_estrutura_de_decisao/ex_24_operacao.py b/secao_02_estrutura_de_decisao/ex_24_operacao.py index 73fd5778f..ce432687c 100644 --- a/secao_02_estrutura_de_decisao/ex_24_operacao.py +++ b/secao_02_estrutura_de_decisao/ex_24_operacao.py @@ -31,3 +31,17 @@ def fazer_operacao_e_classificar(n_1: float, n_2: float, operacao: str): """Escreva aqui em baixo a sua solução""" + soma = n_1 + n_2 + divisao = n_1 / n_2 + subtracao = n_1 - n_2 + multiplicacao = n_1 * n_2 + if operacao == '+': + print(f'Resultado: {"%.2f"%soma}') + if operacao == '-': + print(f'Resultado: {"%.2f"%subtracao}') + if operacao == '*': + print(f'Resultado: {"%.2f"%multiplicacao}') + if operacao == '/': + print(f'Resultado: {"%.2f"%divisao}') + + From deaca3b740801ec0f2655a2619ba3e1ad4598b01 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 6 Jun 2022 23:25:09 -0300 Subject: [PATCH 15/20] fiz alguns --- .../ex_23_inteiro_ou_decimal.py | 3 +- .../ex_24_operacao.py | 48 +++++++++++++++---- .../ex_26_posto_de_gasolina.py | 28 +++++++---- 3 files changed, 61 insertions(+), 18 deletions(-) diff --git a/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py b/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py index 33f53a11c..0d4ea7177 100644 --- a/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py +++ b/secao_02_estrutura_de_decisao/ex_23_inteiro_ou_decimal.py @@ -22,7 +22,8 @@ def decidir_se_eh_inteiro_ou_decimal(valor: str) -> str: """Escreva aqui em baixo a sua solução""" - if valor % 1 == 0: + numero = float(valor) + if numero // 1 == numero: print("'Inteiro'") else: print("'Decimal'") diff --git a/secao_02_estrutura_de_decisao/ex_24_operacao.py b/secao_02_estrutura_de_decisao/ex_24_operacao.py index ce432687c..7a8a5db26 100644 --- a/secao_02_estrutura_de_decisao/ex_24_operacao.py +++ b/secao_02_estrutura_de_decisao/ex_24_operacao.py @@ -32,16 +32,46 @@ def fazer_operacao_e_classificar(n_1: float, n_2: float, operacao: str): """Escreva aqui em baixo a sua solução""" soma = n_1 + n_2 - divisao = n_1 / n_2 - subtracao = n_1 - n_2 - multiplicacao = n_1 * n_2 + sub = n_1 - n_2 + mul = n_1 * n_2 + div = n_1 / n_2 + if operacao == '+': - print(f'Resultado: {"%.2f"%soma}') - if operacao == '-': - print(f'Resultado: {"%.2f"%subtracao}') + resultado = soma + elif operacao == '-': + resultado = sub if operacao == '*': - print(f'Resultado: {"%.2f"%multiplicacao}') - if operacao == '/': - print(f'Resultado: {"%.2f"%divisao}') + resultado = mul + elif operacao == '/': + resultado = div + + if resultado // 1 == resultado: + tipo = 'inteiro' + else: + tipo = "decimal" + + if resultado == 0: + p_n = 'neutro' + elif resultado >= 0: + p_n = 'positivo' + elif resultado <= 0: + p_n = 'negativo' + + # a = list(str(resultado)) + + if resultado % 2 == 0 and tipo != 'decimal': + p_i = 'par' + elif resultado % 2 != 0 and tipo != 'decimal': + p_i = 'impar' + else: + p_i ='' + + print(f'Resultado: {resultado:.2f}') + + if tipo == 'decimal': + print(f'Número é {p_n} e {tipo}.') + else: + print(f'Número é {p_i}, {p_n} e {tipo}.') + diff --git a/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py b/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py index 102f4548c..5810ee3ac 100644 --- a/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py +++ b/secao_02_estrutura_de_decisao/ex_26_posto_de_gasolina.py @@ -35,11 +35,23 @@ def calcular_abastecimento(litros_de_combustivel: float, tipo_de_combustivel: str) -> str: """Escreva aqui em baixo a sua solução""" - quantidade_gasolina = float - porcentagem_desconto = float - preco = float - desconto_gasolina_litros = quantidade_gasolina * (({preco} /100) * {porcentagem_desconto}) - quantidade_alcool = float - desconto_alcool_litros = quantidade_alcool * (({preco} /100) * {porcentagem_desconto}) - - if + preco_do_alcool = 1.90 + + total_a_1 = preco_do_alcool * (1 - 0.03) * litros_de_combustivel + total_a_2 = preco_do_alcool * (1 - 0.05) * litros_de_combustivel + + preco_da_gasolina = 2.5 + + total_g_1 = preco_da_gasolina * (1 - 0.04) * litros_de_combustivel + total_g_2 = preco_da_gasolina * (1 - 0.06) * litros_de_combustivel + + + if tipo_de_combustivel == "A" and litros_de_combustivel <= 20: + print(f"'{litros_de_combustivel} litro(s) de álcool custa(m): R$ {preco_do_alcool * litros_de_combustivel:.2f}. Com 3% de desconto, fica R$ {total_a_1:.2f}'") + elif tipo_de_combustivel == "A" and litros_de_combustivel > 20: + print(f"'{litros_de_combustivel} litro(s) de álcool custa(m): R$ {preco_do_alcool * litros_de_combustivel:.2f}. Com 5% de desconto, fica R$ {total_a_2:.2f}'") + elif tipo_de_combustivel == 'G' and litros_de_combustivel <=20: + print(f"'{litros_de_combustivel} litro(s) de gasolina custa(m): R$ {preco_da_gasolina * litros_de_combustivel:.2f}. Com 4% de desconto, fica R$ {total_g_1:.2f}'") + else: + print(f"'{litros_de_combustivel} litro(s) de gasolina custa(m): R$ {preco_da_gasolina * litros_de_combustivel:.2f}. Com 6% de desconto, fica R$ {total_g_2:.2f}'") + From d74dd2ed896c3464489f45d884e847fc48834fc5 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Mon, 6 Jun 2022 23:55:58 -0300 Subject: [PATCH 16/20] =?UTF-8?q?finaliza=C3=A7=C3=A3o=20da=20lista=2002?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ex_19_decomposicao_de_numero.py | 47 +++++++++++++++ .../ex_27_hortifruti.py | 57 +++++++++++++++++++ .../ex_28_mercado_tabajara.py | 23 ++++++++ 3 files changed, 127 insertions(+) diff --git a/secao_02_estrutura_de_decisao/ex_19_decomposicao_de_numero.py b/secao_02_estrutura_de_decisao/ex_19_decomposicao_de_numero.py index a66653980..82ced6b8f 100644 --- a/secao_02_estrutura_de_decisao/ex_19_decomposicao_de_numero.py +++ b/secao_02_estrutura_de_decisao/ex_19_decomposicao_de_numero.py @@ -52,3 +52,50 @@ def decompor_numero(numero: int): """Escreva aqui em baixo a sua solução""" + numero_final = numero + centenas_str = dezenas_str = unidade_str = '' + centenas_int, numero = divmod(numero, 100) + partes_numeros = 0 + + if centenas_int == 1: + centenas_str = '1 centena' + partes_numeros += 1 + elif centenas_int > 1: + centenas_str = f'{centenas_int} centenas' + partes_numeros += 1 + + dezenas_int, numero = divmod(numero, 10) + + if dezenas_int == 1: + dezenas_str = '1 dezena' + partes_numeros += 1 + elif dezenas_int > 1: + dezenas_str = f'{dezenas_int} dezenas' + partes_numeros += 1 + + if numero == 1: + unidade_str = '1 unidade' + partes_numeros += 1 + elif numero > 1: + unidade_str = f'{numero} unidades' + partes_numeros += 1 + + if numero_final <= 0: + print("""'O número precisa ser positivo'""") + elif numero_final >= 1000: + print("""'O número precisa ser menor que 1000'""") + elif partes_numeros == 1: + if centenas_str != '': + print(f"""'{numero_final} = {centenas_str}'""") + elif dezenas_str != '': + print(f"""'{numero_final} = {dezenas_str}'""") + elif unidade_str != '': + print(f"""'{numero_final} = {unidade_str}'""") + elif partes_numeros == 3: + print(f"""'{numero_final} = {centenas_str}, {dezenas_str} e {unidade_str}'""") + elif partes_numeros == 2: + if centenas_str != '': + segunda_parte = dezenas_str + unidade_str + print(f"""'{numero_final} = {centenas_str} e {segunda_parte}'""") + else: + print(f"""'{numero_final} = {dezenas_str} e {unidade_str}'""") diff --git a/secao_02_estrutura_de_decisao/ex_27_hortifruti.py b/secao_02_estrutura_de_decisao/ex_27_hortifruti.py index 2e468a508..b9cb728f4 100644 --- a/secao_02_estrutura_de_decisao/ex_27_hortifruti.py +++ b/secao_02_estrutura_de_decisao/ex_27_hortifruti.py @@ -59,3 +59,60 @@ def calcular_preco_da_compra(kilos_de_morango: int, kilos_de_maca: int): """Escreva aqui em baixo a sua solução""" + frutas_peso = kilos_de_maca + kilos_de_morango + + + if kilos_de_maca <= 5: + preco_maca = 1.8 + else: preco_maca = 1.5 + + total_maca = preco_maca * kilos_de_maca + + if kilos_de_morango <= 5: + preco_morango= 2.5 + else: preco_morango = 2.2 + + total_morango = preco_morango * kilos_de_morango + + total = total_morango + total_maca + + if frutas_peso > 8 or total > 25: + desconto = total * 0.1 + valor_total = total - desconto + else: + desconto = 0 + valor_total = total - desconto + + if kilos_de_morango > 0 and kilos_de_maca > 0: + morango_str = '(+) Morango ' + total_morango_str = str(round((kilos_de_morango * preco_morango), 2)) + print(f'{morango_str} {" " * (13 - len(morango_str))}- valor:{" " * 2}R${kilos_de_morango * preco_morango:>6.2f} - quantidade: {kilos_de_morango} kg - preço: R$ {preco_morango:.2f}/kg') + maca_str = '(+) Maça ' + total_maca_str = str(round((kilos_de_maca * preco_maca), 2)) + print(f'{maca_str} {" " * (13 - len(maca_str))}- valor:{" " * 2}R${kilos_de_maca * preco_maca:>6.2f} - quantidade: {kilos_de_maca} kg - preço: R$ {preco_maca:.2f}/kg') + desconto_str = str(round((desconto), 2)) + print(f'(-) Desconto - valor:{" " * 2}R${desconto:>6.2f}') + valor_total_nome_str = 'Valor Total:' + valor_total_str = str(round((valor_total), 2)) + print(f'{" " * 10}{valor_total_nome_str}{" " * 2}R${valor_total:>6.2f}') + + elif kilos_de_morango > 0 and kilos_de_maca == 0: + morango_str = '(+) Morango ' + total_morango_str = str(round((kilos_de_morango * preco_morango), 2)) + print(f'{morango_str} {" " * (13 - len(morango_str))}- valor:{" " * 2}R${kilos_de_morango * preco_morango:>6.2f} - quantidade: {kilos_de_morango} kg - preço: R$ {preco_morango:.2f}/kg') + desconto_str = str(round((desconto), 2)) + print(f'(-) Desconto - valor:{" " * 2}R${desconto:>6.2f}') + valor_total_nome_str = 'Valor Total:' + valor_total_str = str(round((valor_total), 2)) + print(f'{" " * 10}{valor_total_nome_str}{" " * 2}R${valor_total:>6.2f}') + + elif kilos_de_morango == 0 and kilos_de_maca > 0: + maca_str = '(+) Maça ' + total_maca_str = str(round((kilos_de_maca * preco_maca), 2)) + print(f'{maca_str} {" " * (13 - len(maca_str))}- valor:{" " * 2}R${kilos_de_maca * preco_maca:>6.2f} - quantidade: {kilos_de_maca} kg - preço: R$ {preco_maca:.2f}/kg') + desconto_str = str(round((desconto), 2)) + print(f'(-) Desconto - valor:{" " * 2}R${desconto:>6.2f}') + valor_total_nome_str = 'Valor Total:' + valor_total_str = str(round((valor_total), 2)) + print(f'{" " * 10}{valor_total_nome_str}{" " * 2}R${valor_total:>6.2f}') + diff --git a/secao_02_estrutura_de_decisao/ex_28_mercado_tabajara.py b/secao_02_estrutura_de_decisao/ex_28_mercado_tabajara.py index fa2daf360..9e73f2fde 100644 --- a/secao_02_estrutura_de_decisao/ex_28_mercado_tabajara.py +++ b/secao_02_estrutura_de_decisao/ex_28_mercado_tabajara.py @@ -47,3 +47,26 @@ def calcular_preco_da_carne(tipo_de_carne: str, kilos_de_carne: int, forma_de_pagamento: str) -> str: """Escreva aqui em baixo a sua solução""" + if tipo_de_carne == 'Filé Duplo' and kilos_de_carne <= 5: + preco_kg = 4.90 + elif tipo_de_carne == 'Filé Duplo' and kilos_de_carne > 5: + preco_kg = 5.80 + elif tipo_de_carne == 'Alcatra' and kilos_de_carne <= 5: + preco_kg = 5.90 + elif tipo_de_carne == 'Alcatra' and kilos_de_carne > 5: + preco_kg = 6.80 + elif tipo_de_carne == 'Picanha' and kilos_de_carne <= 5: + preco_kg = 6.90 + elif tipo_de_carne == 'Picanha' and kilos_de_carne > 5: + preco_kg = 7.80 + + if forma_de_pagamento == 'cartão tabajara': + total = preco_kg * 0.95 * kilos_de_carne + desconto = "Com desconto de 5% pelo pagamento feito com cartão tabajara, fica R$ " + print(f"'{kilos_de_carne} kg de {tipo_de_carne} a R$ {preco_kg:.2f}/kg saem a R$ {preco_kg * kilos_de_carne:.2f}. {desconto}{total:.2f}'") + elif forma_de_pagamento == 'pix': + desconto = 'Não há desconto, pagamento feito com pix' + print(f"'{kilos_de_carne} kg de {tipo_de_carne} a R$ {preco_kg:.2f}/kg saem a R$ {preco_kg * kilos_de_carne:.2f}. {desconto}'") + else: + desconto = 'Não há desconto, pagamento feito com dinheiro' + print(f"'{kilos_de_carne} kg de {tipo_de_carne} a R$ {preco_kg:.2f}/kg saem a R$ {preco_kg * kilos_de_carne:.2f}. {desconto}'") From 9144cb7818b8013718ebaf73a2fde743c2873bc0 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Tue, 14 Jun 2022 13:48:56 -0300 Subject: [PATCH 17/20] fiz algumas da lista 3 --- .../ex_01_numero_valido.py | 7 ++++ .../ex_02_validador_de_senha.py | 10 ++++++ .../ex_03_validador_de_cadastro.py | 36 +++++++++++++++++++ .../ex_04_crescimento_populacional.py | 13 +++++++ ...crescimento_populacional_parametrizavel.py | 12 +++++++ 5 files changed, 78 insertions(+) diff --git a/secao_03_estrutura_de_repeticao/ex_01_numero_valido.py b/secao_03_estrutura_de_repeticao/ex_01_numero_valido.py index 168481e57..3fa0c322b 100644 --- a/secao_03_estrutura_de_repeticao/ex_01_numero_valido.py +++ b/secao_03_estrutura_de_repeticao/ex_01_numero_valido.py @@ -34,3 +34,10 @@ def obter_numero_valido(): """Escreva aqui em baixo a sua solução""" + n = input('Escolha um número entre 0 e 10: ') + + while n.isnumeric() == False or n not in str(range(0, 10)): + print(f'Número inválido: {n}') + n = input('Escolha um número entre 0 e 10: ') + print(n) + diff --git a/secao_03_estrutura_de_repeticao/ex_02_validador_de_senha.py b/secao_03_estrutura_de_repeticao/ex_02_validador_de_senha.py index b863e1a11..2ec1e770e 100644 --- a/secao_03_estrutura_de_repeticao/ex_02_validador_de_senha.py +++ b/secao_03_estrutura_de_repeticao/ex_02_validador_de_senha.py @@ -21,3 +21,13 @@ def validar_senha(): """Escreva aqui em baixo a sua solução""" + usuario = input("Usuario: ") + senha = input("Senha: ") + + while senha == usuario: + print("Senha deve ser diferente do login") + usuario = input("Usuario: ") + senha = input("Senha: ") + + + print(f"'Cadastro realizado com suceso, seu login é {usuario}'") diff --git a/secao_03_estrutura_de_repeticao/ex_03_validador_de_cadastro.py b/secao_03_estrutura_de_repeticao/ex_03_validador_de_cadastro.py index 35d52987e..59513e824 100644 --- a/secao_03_estrutura_de_repeticao/ex_03_validador_de_cadastro.py +++ b/secao_03_estrutura_de_repeticao/ex_03_validador_de_cadastro.py @@ -40,3 +40,39 @@ def cadastrar_usuario(nome: str, idade: int, salario: float, sexo: str, estado_civil: str): """Escreva aqui em baixo a sua solução""" + ok = 0 + + str_ok = 'Cadastro realizado com sucesso' + str_usuario = 'Erro: o nome precisa ter 3 letras ou mais, não pode ser ' + str_idade = 'Erro: a idade precisa estar entre 0 e 150, não pode ser ' + str_salario = 'Erro: o salário precisa ser positivo, não pode ser ' + str_sexo = 'Erro: o sexo precisa ser "m" ou "f", não pode ser ' + str_estado = 'Erro: o estado civil precisa ser "s", "c", "v" ou "d", não pode ser ' + + if len(nome) >= 3: + ok +=1 + else: + print(f"{str_usuario}{nome}") + + if idade in range(0, 151): + ok +=1 + else: + print(f"{str_idade}{idade}") + + if salario > 0: + ok += 1 + else: + print(f"{str_salario}{salario}") + + if sexo.lower() in ('f', 'm'): + ok += 1 + else: + print(f'{str_sexo}"{sexo}"') + + if estado_civil.lower() in ('s', 'c', 'v', 'd'): + ok += 1 + else: + print(f'{str_estado}"{estado_civil}"') + + if ok == 5: + print(str_ok) diff --git a/secao_03_estrutura_de_repeticao/ex_04_crescimento_populacional.py b/secao_03_estrutura_de_repeticao/ex_04_crescimento_populacional.py index a2109cfb5..9028259c7 100644 --- a/secao_03_estrutura_de_repeticao/ex_04_crescimento_populacional.py +++ b/secao_03_estrutura_de_repeticao/ex_04_crescimento_populacional.py @@ -16,3 +16,16 @@ def calcular_ano_ultrapassagem_populacional() -> str: """Escreva aqui em baixo a sua solução""" + populacao_a = 80000 + populacao_b = 200000 + taxa_a = 0.03 + taxa_b = 0.015 + ano = 0 + + + while populacao_a < populacao_b: + populacao_a = populacao_a * (1 + taxa_a) + populacao_b = populacao_b * (1 + taxa_b) + ano += 1 + + print(f"'População de A, depois de {ano} ano(s) será de {populacao_a:.0f} pessoas, superando a de B, que será de {populacao_b:.0f} pessoas'") diff --git a/secao_03_estrutura_de_repeticao/ex_05_crescimento_populacional_parametrizavel.py b/secao_03_estrutura_de_repeticao/ex_05_crescimento_populacional_parametrizavel.py index 827d5d190..7bdb51e5c 100644 --- a/secao_03_estrutura_de_repeticao/ex_05_crescimento_populacional_parametrizavel.py +++ b/secao_03_estrutura_de_repeticao/ex_05_crescimento_populacional_parametrizavel.py @@ -23,3 +23,15 @@ def calcular_ano_ultrapassagem_populacional( populacao_menor: int, taxa_crescimento_populacao_menor: float, populacao_maior, taxa_crescimento_populacao_maior:float ) -> str: """Escreva aqui em baixo a sua solução""" + ano = 0 + + if taxa_crescimento_populacao_maior > taxa_crescimento_populacao_menor: + print(f"'A taxa de crescimento do país B ({taxa_crescimento_populacao_maior * 100}%) deve ser menor do que a do país A ({taxa_crescimento_populacao_menor * 100}%)'") + else: + while populacao_menor < populacao_maior: + populacao_menor = populacao_menor * (1 + taxa_crescimento_populacao_menor) + populacao_maior = populacao_maior * (1 + taxa_crescimento_populacao_maior) + ano += 1 + + print(f"'População de A, depois de {ano} ano(s) será de {populacao_menor:.0f} pessoas, superando a de B, que será de {populacao_maior:.0f} pessoas'") + From 3fce7cdd368bea86620931c17779622932539537 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Tue, 14 Jun 2022 13:54:07 -0300 Subject: [PATCH 18/20] resolvi algumas --- .vscode/launch.json | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .vscode/launch.json diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 000000000..cdbde749b --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,16 @@ +{ + // Use o IntelliSense para saber mais sobre os atributos possíveis. + // Focalizar para exibir as descrições dos atributos existentes. + // Para obter mais informações, acesse: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Python: Arquivo Atual", + "type": "python", + "request": "launch", + "program": "${file}", + "console": "integratedTerminal", + "justMyCode": true + } + ] +} From b29fa5b087f989bd0b23c58711bf4dab3d3d04d7 Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Sun, 19 Jun 2022 23:38:59 -0300 Subject: [PATCH 19/20] resolvi alguns da lista 3 --- .../ex_06_numeros_1_a_20.py | 13 +++++++++++++ .../ex_08_soma_e_media_de_5_numeros.py | 8 ++++++++ .../ex_09_numeros_impares_de_1_a_50.py | 9 +++++++++ .../ex_10_gerar_numeros_de_intervalo.py | 9 +++++++++ 4 files changed, 39 insertions(+) diff --git a/secao_03_estrutura_de_repeticao/ex_06_numeros_1_a_20.py b/secao_03_estrutura_de_repeticao/ex_06_numeros_1_a_20.py index a72fb1d95..30dbd2814 100644 --- a/secao_03_estrutura_de_repeticao/ex_06_numeros_1_a_20.py +++ b/secao_03_estrutura_de_repeticao/ex_06_numeros_1_a_20.py @@ -33,3 +33,16 @@ def escrever_numeros_de_1_a_20(formato:str) -> str: """Escreva aqui em baixo a sua solução""" + numeros = range(1, 21) + + if formato == 'um_abaixo_do_outro': + for i in numeros: + print(i) + + else: + if formato != 'um_abaixo_do_outro': + for i in numeros: + if i == numeros[-1]: + print(f'{i}') + else: + print(f'{i}', end=" ") diff --git a/secao_03_estrutura_de_repeticao/ex_08_soma_e_media_de_5_numeros.py b/secao_03_estrutura_de_repeticao/ex_08_soma_e_media_de_5_numeros.py index 86b169bb6..4182c4db5 100644 --- a/secao_03_estrutura_de_repeticao/ex_08_soma_e_media_de_5_numeros.py +++ b/secao_03_estrutura_de_repeticao/ex_08_soma_e_media_de_5_numeros.py @@ -16,3 +16,11 @@ def calcular_soma_e_media(n1: int, n2: int, n3: int, n4: int, n5: int) -> str: """Escreva aqui em baixo a sua solução""" + numeros = [n1, n2, n3, n4, n5] + + soma = 0 + + for x in numeros: + soma += x + + print(f"'Soma: {soma}, Média: {soma/len(numeros):.2f}'") diff --git a/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py b/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py index 588447486..0d18377fc 100644 --- a/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py +++ b/secao_03_estrutura_de_repeticao/ex_09_numeros_impares_de_1_a_50.py @@ -12,4 +12,13 @@ def calcular_numeros_impares_de_1_a_50() -> str: """Escreva aqui em baixo a sua solução""" + print("'", end='') + + for x in range(1, 50, 2): + if x == 49: + print(f"{x}", end='') + else: + print(f"{x}", end=', ') + + print("'", end='') diff --git a/secao_03_estrutura_de_repeticao/ex_10_gerar_numeros_de_intervalo.py b/secao_03_estrutura_de_repeticao/ex_10_gerar_numeros_de_intervalo.py index 09838c651..10fd7ae22 100644 --- a/secao_03_estrutura_de_repeticao/ex_10_gerar_numeros_de_intervalo.py +++ b/secao_03_estrutura_de_repeticao/ex_10_gerar_numeros_de_intervalo.py @@ -16,3 +16,12 @@ def calcular_numeros_no_intervalo(inicio: int, fim: int) -> str: """Escreva aqui em baixo a sua solução""" + print("'", end='') + + for x in range(inicio, fim): + if x == (fim - 1): + print(f"{x}", end='') + else: + print(f"{x}", end=', ') + + print("'", end='') From e411ceb075fbd4b78648d05122219915291bc28e Mon Sep 17 00:00:00 2001 From: Edinaildo Costa Date: Thu, 23 Jun 2022 20:12:34 -0300 Subject: [PATCH 20/20] feito o teste do ex 07 da lista de String #82 --- .../corretor_de_exercicios_secao_06.yml | 4 ++++ .gitignore | 1 + .../ex_07_maior_de_5_numeros.py | 8 +++++++ .../ex_07_conta _espacos _e _vogais.py | 23 +++++++++++++++++++ 4 files changed, 36 insertions(+) create mode 100644 secao_06_exercicios_strings/ex_07_conta _espacos _e _vogais.py diff --git a/.github/workflows/corretor_de_exercicios_secao_06.yml b/.github/workflows/corretor_de_exercicios_secao_06.yml index 38572f5b8..5a478fb0b 100644 --- a/.github/workflows/corretor_de_exercicios_secao_06.yml +++ b/.github/workflows/corretor_de_exercicios_secao_06.yml @@ -27,3 +27,7 @@ jobs: if: always() run: | python -m doctest -f secao_06_exercicios_strings/ex_05_nome_vertical_escada_invertida.py + - name: Correção do Exercício 07 da seção de Strings + if: always() + run: | + python -m doctest -f secao_06_exercicios_strings/ex_07_conta_espacos_e_vogais.py diff --git a/.gitignore b/.gitignore index e72a38f08..d2aee6206 100644 --- a/.gitignore +++ b/.gitignore @@ -129,3 +129,4 @@ dmypy.json .pyre/ .vscode/ +.idea/ diff --git a/secao_03_estrutura_de_repeticao/ex_07_maior_de_5_numeros.py b/secao_03_estrutura_de_repeticao/ex_07_maior_de_5_numeros.py index 3fc410ab3..e7ff1187e 100644 --- a/secao_03_estrutura_de_repeticao/ex_07_maior_de_5_numeros.py +++ b/secao_03_estrutura_de_repeticao/ex_07_maior_de_5_numeros.py @@ -13,3 +13,11 @@ def calcular_maior_numero(n1: int, n2: int, n3: int, n4: int, n5: int, ) -> int: """Escreva aqui em baixo a sua solução""" + numeros = [n1, n2, n3, n4, n5] + + y = n1 + + for x in numeros[1:]: + if y < x: + y = x + print(y) diff --git a/secao_06_exercicios_strings/ex_07_conta _espacos _e _vogais.py b/secao_06_exercicios_strings/ex_07_conta _espacos _e _vogais.py new file mode 100644 index 000000000..4936a77c1 --- /dev/null +++ b/secao_06_exercicios_strings/ex_07_conta _espacos _e _vogais.py @@ -0,0 +1,23 @@ +""" +Exercício 07 da seção de strings da Python Brasil: +https://wiki.python.org.br/ExerciciosComStrings + +Dado a string abaixo (incluindo espaços em branco), conte: + +a) Quantos espaços em branco existem na frase. + +b) Quantas vezes aparecem as vogais a, e, i, o, u. + + >>> contar_espacos_e_vogais("Enzo Pascal é o maior Buserteco") + A frase tem 11 vogais e 5 espaços em branco. + >>> contar_espacos_e_vogais("Somos todos Buserlovers") + A frase tem 8 vogais e 2 espaços em branco. +""" + + +def contar_espacos_e_vogais(nome): + """Escreva aqui em baixo a sua solução""" + + + +