From ac8a58e19a965050c470b14ba68d85b303b43b1c Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Mon, 23 May 2022 14:24:46 -0300
Subject: [PATCH 01/47] =?UTF-8?q?Resolvido=20ex.=2001=20da=20se=C3=A7?=
=?UTF-8?q?=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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
index b9b0821a6..b3ca2734e 100644
--- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
+++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
@@ -12,4 +12,4 @@
def ola_mundo():
"""Escreva aqui em baixo a sua solução"""
-
+ print ('Olá Mund')
From c8757e1f61b6295f1ff1f56086c4b37f94637a93 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Mon, 23 May 2022 14:30:59 -0300
Subject: [PATCH 02/47] =?UTF-8?q?=20Resolvido=20(mesmo)=20=20ex.=2001=20da?=
=?UTF-8?q?=20se=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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
index b3ca2734e..a8254430a 100644
--- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
+++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
@@ -12,4 +12,4 @@
def ola_mundo():
"""Escreva aqui em baixo a sua solução"""
- print ('Olá Mund')
+ print ('Olá Mundo')
From c4bd523efb2a3698fbe0c18211c2f0c6aa89f56a Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Mon, 23 May 2022 14:24:46 -0300
Subject: [PATCH 03/47] =?UTF-8?q?Resolvido=20ex.=2001=20da=20se=C3=A7?=
=?UTF-8?q?=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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
index b9b0821a6..b3ca2734e 100644
--- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
+++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
@@ -12,4 +12,4 @@
def ola_mundo():
"""Escreva aqui em baixo a sua solução"""
-
+ print ('Olá Mund')
From 2d882f313356477764087646f4560e33aa8b850e Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Mon, 23 May 2022 14:30:59 -0300
Subject: [PATCH 04/47] =?UTF-8?q?=20Resolvido=20(mesmo)=20=20ex.=2001=20da?=
=?UTF-8?q?=20se=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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
index b3ca2734e..a8254430a 100644
--- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
+++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
@@ -12,4 +12,4 @@
def ola_mundo():
"""Escreva aqui em baixo a sua solução"""
- print ('Olá Mund')
+ print ('Olá Mundo')
From 54e182a5aaf88be811741878677dad72884c568e Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 14:02:52 -0300
Subject: [PATCH 05/47] resolvendo ex 2
---
secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
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..b535aeac4 100644
--- a/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
+++ b/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
@@ -12,5 +12,7 @@
"""
def escreva_um_numero():
- """Escreva aqui em baixo a sua solução"""
+ # """Escreva aqui em baixo a sua solução"""
+ x = input('Digite um número:')
+
From 45797ccfbbd580e20041f8bdc777d592a77b2ad5 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 16:08:37 -0300
Subject: [PATCH 06/47] =?UTF-8?q?Exerc=C3=ADcio=202=20-=20Se=C3=A7=C3=A3o?=
=?UTF-8?q?=201=20Completo?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/.gitignore | 3 +++
.idea/inspectionProfiles/profiles_settings.xml | 6 ++++++
.idea/lista-de-exercicios-python-busertec.iml | 12 ++++++++++++
.idea/modules.xml | 8 ++++++++
.idea/vcs.xml | 6 ++++++
.vscode/launch.json | 16 ++++++++++++++++
secao_01_estrutura_sequencial/ex_01_alo_mundo.py | 2 +-
.../ex_02_escreva_um_numero.py | 7 +++++--
8 files changed, 57 insertions(+), 3 deletions(-)
create mode 100644 .idea/.gitignore
create mode 100644 .idea/inspectionProfiles/profiles_settings.xml
create mode 100644 .idea/lista-de-exercicios-python-busertec.iml
create mode 100644 .idea/modules.xml
create mode 100644 .idea/vcs.xml
create mode 100644 .vscode/launch.json
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 000000000..26d33521a
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
new file mode 100644
index 000000000..105ce2da2
--- /dev/null
+++ b/.idea/inspectionProfiles/profiles_settings.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/lista-de-exercicios-python-busertec.iml b/.idea/lista-de-exercicios-python-busertec.iml
new file mode 100644
index 000000000..8b8c39547
--- /dev/null
+++ b/.idea/lista-de-exercicios-python-busertec.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 000000000..553f848ab
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 000000000..94a25f7f4
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 000000000..dbcb261c9
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,16 @@
+{
+ // Use IntelliSense to learn about possible attributes.
+ // Hover to view descriptions of existing attributes.
+ // For more information, visit: 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
+ }
+ ]
+}
\ No newline at end of file
diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
index a8254430a..4f6c941e7 100644
--- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
+++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
@@ -12,4 +12,4 @@
def ola_mundo():
"""Escreva aqui em baixo a sua solução"""
- print ('Olá Mundo')
+ print('Olá Mundo')
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 b535aeac4..82b8edb5a 100644
--- a/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
+++ b/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
@@ -11,8 +11,11 @@
"""
+from ast import Num
+
+
def escreva_um_numero():
# """Escreva aqui em baixo a sua solução"""
- x = input('Digite um número:')
-
+ num=int(input("Digite um número:"))
+ print(f'O número informado foi {num}')
\ No newline at end of file
From 09e64cfb52f98932648cd5dc090c215097569e48 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 17:02:15 -0300
Subject: [PATCH 07/47] =?UTF-8?q?Resolu=C3=A7=C3=A3o=20ex-03?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/misc.xml | 4 ++++
.../ex_03_imprima_soma_de_dois_numeros.py | 3 +++
2 files changed, 7 insertions(+)
create mode 100644 .idea/misc.xml
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 000000000..d1e22ecb8
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
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..295811a27 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,6 @@
def imprima_a_soma_de_dois_numeros():
"""Escreva aqui em baixo a sua solução"""
+ numero1 = int(input('Digite um número: '))
+ numero2 = int(input('Digite o segundo número: '))
+ print (f'a soma dos números é {numero1 + numero2}')
\ No newline at end of file
From 9d7ff812acb6db7d628f72eb73132c47758f6e07 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 17:03:02 -0300
Subject: [PATCH 08/47] =?UTF-8?q?Resolu=C3=A7=C3=A3o=20ex-03=20mesmo?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_03_imprima_soma_de_dois_numeros.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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 295811a27..ec0ac3142 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
@@ -17,4 +17,4 @@ def imprima_a_soma_de_dois_numeros():
"""Escreva aqui em baixo a sua solução"""
numero1 = int(input('Digite um número: '))
numero2 = int(input('Digite o segundo número: '))
- print (f'a soma dos números é {numero1 + numero2}')
\ No newline at end of file
+ print (f'A soma dos números é: {numero1 + numero2}')
\ No newline at end of file
From 7ccccd5edf54866451619a026a01dd0d0a1282cf Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 17:15:32 -0300
Subject: [PATCH 09/47] =?UTF-8?q?Resolu=C3=A7=C3=A3o=20do=20Ex-04?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py b/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py
index a1b189cd5..6a246f283 100644
--- a/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py
+++ b/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py
@@ -15,4 +15,8 @@
def calcular_media():
"""Escreva aqui em baixo a sua solução"""
-
+ media1 = float(input('Digite a media do 1 bimestre '))
+ media2 = float(input('Digite a media do 2 bimestre '))
+ media3 = float(input('Digite a media do 3 bimestre '))
+ media4 = float(input('Digite a media do 4 bimestre '))
+ print (f'A média anual é {(media1 + media2 + media3 + media4) / 4}')
From b489f04aafdb89f1435481a399ade8656fc0f660 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 09:40:15 -0300
Subject: [PATCH 10/47] ex 5,6 e 7 realizados
---
.../ex_05_metros_para_centimetros.py | 12 ++++++++++++
secao_01_estrutura_sequencial/ex_06_area_circulo.py | 6 ++++++
secao_01_estrutura_sequencial/ex_07_area_quadrado.py | 9 +++++++++
3 files changed, 27 insertions(+)
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 b790f2ecd..9e08b6343 100644
--- a/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py
+++ b/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py
@@ -13,7 +13,19 @@
Transformando para centímetros dá 362.1 cm
"""
+# conversão feita do m vezes 100
+def conversao (m):
+ return 100* m
+
+ # imput pedindo a quantidade de metros
+ print ('Transformando para centímetros dá: {(conversao (m))}cm')
+ # o 'f' do inicio garante a formatação usada, a conversao 'def' precisa
+ # estar entre chaves e o : .1f limita as casas decimais para apenas uma, arredondando as que sobram.
def converter_metros_para_centrimetros():
"""Escreva aqui em baixo a sua solução"""
+ m = float(input('Digite a quantidade de metros para conversão:'))
+ print(f'Transformando para centímetros dá{(conversao (m)): .1f} 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..a6a10c0e0 100644
--- a/secao_01_estrutura_sequencial/ex_06_area_circulo.py
+++ b/secao_01_estrutura_sequencial/ex_06_area_circulo.py
@@ -18,3 +18,9 @@
def calcular_area_de_circulo():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite o raio do círculo: '))
+
+ c = 3.1415* (m**2)
+
+ print(f'A área do círculo com esse raio é: {c:.4f}')
diff --git a/secao_01_estrutura_sequencial/ex_07_area_quadrado.py b/secao_01_estrutura_sequencial/ex_07_area_quadrado.py
index 63b12a193..e2bf6c9bf 100644
--- a/secao_01_estrutura_sequencial/ex_07_area_quadrado.py
+++ b/secao_01_estrutura_sequencial/ex_07_area_quadrado.py
@@ -20,3 +20,12 @@
def calcular_area_de_quadrado():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite o lado do quadrado: ')) **2
+
+ c = m * 2
+
+ print(f'A área do quadrado com esse lado é: {m:.2f}')
+
+ print(f'O dobro da aŕea do quadrado é: {c:.2f}')
+
From 8c88cb5890443a1d71022737ccba020d1298ec53 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 10:25:19 -0300
Subject: [PATCH 11/47] =?UTF-8?q?ex=2008,09=20e=2010=20conclu=C3=ADdos?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_08_horas_trabalhadas_mes.py | 9 +++++++++
.../ex_09_fahrenheit_para_celsius.py | 3 +++
.../ex_10_celsius_para_fahrenheit.py | 3 +++
3 files changed, 15 insertions(+)
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..51e0b70ce 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,12 @@
def calcular_salario():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite quanto você ganha por hora trabalhada: '))
+ n = float(input('Digite quantas horas você trabalha por mês: '))
+
+ print(f'Seu salário desse mês é {m * n:.2f}')
+
+
+
+
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..0db00ed7f 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"""
+
+ m = float(input('Digite quantos graus Fahrenheit você quer converter para Celsius: '))
+ print(f'Essa temperatura é de {(m-32)/1.8:.0f} Celsius')
\ No newline at end of file
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..9b94d4230 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,6 @@
def transformar_para_fahrenheit():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite quantos graus Celsius você quer converter para Fahrenheit: '))
+ print(f'Essa temperatura é de {m*1.8+32:.0f} Fahrenheit')
\ No newline at end of file
From 83d187d7748aaed612b64b7436121497b4be79ca Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 11:18:19 -0300
Subject: [PATCH 12/47] ex 11,12 e 13 completos
---
secao_01_estrutura_sequencial/ex_11_contas_matematicas.py | 7 ++++++-
secao_01_estrutura_sequencial/ex_12_peso_ideal.py | 2 ++
.../ex_13_peso_ideal_mulher_e_homem.py | 3 +++
3 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py b/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py
index 09bdbbffd..d4b935224 100644
--- a/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py
+++ b/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py
@@ -23,4 +23,9 @@
def calcular_formulas():
"""Escreva aqui em baixo a sua solução"""
-
+ n1 = int(input('Digite o primeiro número inteiro '))
+ n2 = int(input('Digite o segundo número inteiro '))
+ nr = float(input('Digite o número real '))
+ print(f'O produto do dobro do primeiro com metade do segundo é {(n1*2)*(n2/2):.2f}')
+ print(f'A soma do triplo do primeiro com o terceiro é {(n1*3)+nr:.2f}')
+ print(f'O terceiro elevado ao cubo é {nr**3:.2f}')
diff --git a/secao_01_estrutura_sequencial/ex_12_peso_ideal.py b/secao_01_estrutura_sequencial/ex_12_peso_ideal.py
index 1f8418fab..fca50c7d8 100644
--- a/secao_01_estrutura_sequencial/ex_12_peso_ideal.py
+++ b/secao_01_estrutura_sequencial/ex_12_peso_ideal.py
@@ -19,3 +19,5 @@
def calcular_peso_ideal():
"""Escreva aqui em baixo a sua solução"""
+ a = float(input('Digite sua altura: '))
+ print(f'Seu peso ideal é {(72.7 * a)-58:.1f} kg')
\ No newline at end of file
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..e586d43c5 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"""
+ a = float(input('Digite sua altura: '))
+ print(f'Seu peso ideal é {(62.1 * a)-44.7:.1f} kg, se você for mulher')
+ print(f'Seu peso ideal é {(72.7 * a)-58:.1f} kg, se você for homem')
\ No newline at end of file
From 30d06df1c1cfa6af91a3c74197a199b6a342a34c Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 15:21:36 -0300
Subject: [PATCH 13/47] ex 14 e 15 feitos
---
.../ex_14_joao_papo_de_pescador.py | 10 ++++++++++
secao_01_estrutura_sequencial/ex_15_clt_onerosa.py | 13 +++++++++++++
2 files changed, 23 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..bc3c22d4f 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,13 @@
def calcular_peso_excedente_e_multa():
"""Escreva aqui em baixo a sua solução"""
+
+ p = float(input('Seu Jão, digite quantos kgs você pescou hoje: '))
+ if p <= 50:
+
+ print(f'O peso excedente de peixes é de {0:.2f} kg')
+ print(f'Por isso, a multa é de R$ {0:.2f}')
+
+ else:
+ print(f'O peso excedente de peixes é de {p-50:.2f} kg')
+ print(f'Por isso, a multa é de R$ {(p-50)*4:.2f}')
diff --git a/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py b/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py
index 901de0409..856ba8a52 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"""
+
+ g = float(input('Digite quanto você ganha por hora trabalhada : '))
+ h = float(input('Digite quantas horas você trabalha por mês: '))
+
+ print(f'+ Salário Bruto : {g*h:.2f}')
+
+ print(f'- IR (11%) : R$ {(g*h) * 0.11 :.2f}')
+
+ print(f'- INSS (8%) : R$ {(g*h) * 0.08 :.2f}')
+
+ print(f'- Sindicato ( 5%) : R$ {(g*h) * 0.05 :.2f}')
+
+ print(f'= Salário Liquido : R$ {(g*h)-(((g*h) * 0.11) + ((g*h) * 0.08) + ((g*h) * 0.05)):.2f}')
\ No newline at end of file
From b20a1941afec01848a5f324f4f5556499771615e Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 1 Jun 2022 14:02:37 -0300
Subject: [PATCH 14/47] ex 16 feito
---
.vscode/launch.json | 31 ++++++++++---------
.../ex_16_loja_de_tintas_simples.py | 6 ++++
2 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/.vscode/launch.json b/.vscode/launch.json
index dbcb261c9..e6c436a5e 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -1,16 +1,17 @@
{
- // Use IntelliSense to learn about possible attributes.
- // Hover to view descriptions of existing attributes.
- // For more information, visit: 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
- }
- ]
-}
\ No newline at end of file
+ // 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": "Rodar Doctest",
+ "type": "python",
+ "request": "launch",
+ "module": "doctest",
+ "args": ["${file}", "-v"],
+ "cwd": "${workspaceRoot}",
+ "justMyCode": true
+ }
+ ]
+}
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..1be1ee213 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,9 @@
def calcular_latas_e_preco_de_tinta():
"""Escreva aqui em baixo a sua solução"""
+
+ from math import ceil
+ a_p = float(input('Digite a área a ser pintada em m2: '))
+ l_p_m = ceil (a_p / 3)
+ n_d_l = ceil(l_p_m / 18)
+ print (f'Você deve comprar {n_d_l:.0f} lata(s) tinta ao custo de R$ {n_d_l * 80:.2f}')
From ebf2ece7c2e65927c3d55b6ef9d95c170e819ee6 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 14:02:52 -0300
Subject: [PATCH 15/47] resolvendo ex 2
---
secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
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..b535aeac4 100644
--- a/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
+++ b/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
@@ -12,5 +12,7 @@
"""
def escreva_um_numero():
- """Escreva aqui em baixo a sua solução"""
+ # """Escreva aqui em baixo a sua solução"""
+ x = input('Digite um número:')
+
From 11bc92e59250e6fe89a92a10899b0a4e82667178 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 16:08:37 -0300
Subject: [PATCH 16/47] =?UTF-8?q?Exerc=C3=ADcio=202=20-=20Se=C3=A7=C3=A3o?=
=?UTF-8?q?=201=20Completo?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/.gitignore | 3 +++
.idea/inspectionProfiles/profiles_settings.xml | 6 ++++++
.idea/lista-de-exercicios-python-busertec.iml | 12 ++++++++++++
.idea/modules.xml | 8 ++++++++
.idea/vcs.xml | 6 ++++++
.vscode/launch.json | 16 ++++++++++++++++
secao_01_estrutura_sequencial/ex_01_alo_mundo.py | 2 +-
.../ex_02_escreva_um_numero.py | 7 +++++--
8 files changed, 57 insertions(+), 3 deletions(-)
create mode 100644 .idea/.gitignore
create mode 100644 .idea/inspectionProfiles/profiles_settings.xml
create mode 100644 .idea/lista-de-exercicios-python-busertec.iml
create mode 100644 .idea/modules.xml
create mode 100644 .idea/vcs.xml
create mode 100644 .vscode/launch.json
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 000000000..26d33521a
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
new file mode 100644
index 000000000..105ce2da2
--- /dev/null
+++ b/.idea/inspectionProfiles/profiles_settings.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/lista-de-exercicios-python-busertec.iml b/.idea/lista-de-exercicios-python-busertec.iml
new file mode 100644
index 000000000..8b8c39547
--- /dev/null
+++ b/.idea/lista-de-exercicios-python-busertec.iml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 000000000..553f848ab
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 000000000..94a25f7f4
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 000000000..dbcb261c9
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,16 @@
+{
+ // Use IntelliSense to learn about possible attributes.
+ // Hover to view descriptions of existing attributes.
+ // For more information, visit: 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
+ }
+ ]
+}
\ No newline at end of file
diff --git a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
index a8254430a..4f6c941e7 100644
--- a/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
+++ b/secao_01_estrutura_sequencial/ex_01_alo_mundo.py
@@ -12,4 +12,4 @@
def ola_mundo():
"""Escreva aqui em baixo a sua solução"""
- print ('Olá Mundo')
+ print('Olá Mundo')
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 b535aeac4..82b8edb5a 100644
--- a/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
+++ b/secao_01_estrutura_sequencial/ex_02_escreva_um_numero.py
@@ -11,8 +11,11 @@
"""
+from ast import Num
+
+
def escreva_um_numero():
# """Escreva aqui em baixo a sua solução"""
- x = input('Digite um número:')
-
+ num=int(input("Digite um número:"))
+ print(f'O número informado foi {num}')
\ No newline at end of file
From 986ac5ab546cf21e3ccb60e5cb60c88c2b088e0a Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 17:02:15 -0300
Subject: [PATCH 17/47] =?UTF-8?q?Resolu=C3=A7=C3=A3o=20ex-03?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.idea/misc.xml | 4 ++++
.../ex_03_imprima_soma_de_dois_numeros.py | 3 +++
2 files changed, 7 insertions(+)
create mode 100644 .idea/misc.xml
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 000000000..d1e22ecb8
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
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..295811a27 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,6 @@
def imprima_a_soma_de_dois_numeros():
"""Escreva aqui em baixo a sua solução"""
+ numero1 = int(input('Digite um número: '))
+ numero2 = int(input('Digite o segundo número: '))
+ print (f'a soma dos números é {numero1 + numero2}')
\ No newline at end of file
From d9a9c64ce2aa21f293f6fbe677d285ad6672afbd Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 17:03:02 -0300
Subject: [PATCH 18/47] =?UTF-8?q?Resolu=C3=A7=C3=A3o=20ex-03=20mesmo?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_03_imprima_soma_de_dois_numeros.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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 295811a27..ec0ac3142 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
@@ -17,4 +17,4 @@ def imprima_a_soma_de_dois_numeros():
"""Escreva aqui em baixo a sua solução"""
numero1 = int(input('Digite um número: '))
numero2 = int(input('Digite o segundo número: '))
- print (f'a soma dos números é {numero1 + numero2}')
\ No newline at end of file
+ print (f'A soma dos números é: {numero1 + numero2}')
\ No newline at end of file
From 772aa0cab9738dd5ecb2c49f94a199011db8eb14 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 25 May 2022 17:15:32 -0300
Subject: [PATCH 19/47] =?UTF-8?q?Resolu=C3=A7=C3=A3o=20do=20Ex-04?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py b/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py
index a1b189cd5..6a246f283 100644
--- a/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py
+++ b/secao_01_estrutura_sequencial/ex_04_notas_bimestrais.py
@@ -15,4 +15,8 @@
def calcular_media():
"""Escreva aqui em baixo a sua solução"""
-
+ media1 = float(input('Digite a media do 1 bimestre '))
+ media2 = float(input('Digite a media do 2 bimestre '))
+ media3 = float(input('Digite a media do 3 bimestre '))
+ media4 = float(input('Digite a media do 4 bimestre '))
+ print (f'A média anual é {(media1 + media2 + media3 + media4) / 4}')
From 99b36bf34a8745febd5147af92725b15cda89ef8 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 09:40:15 -0300
Subject: [PATCH 20/47] ex 5,6 e 7 realizados
---
.../ex_05_metros_para_centimetros.py | 12 ++++++++++++
secao_01_estrutura_sequencial/ex_06_area_circulo.py | 6 ++++++
secao_01_estrutura_sequencial/ex_07_area_quadrado.py | 9 +++++++++
3 files changed, 27 insertions(+)
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..3ed8886b9 100644
--- a/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py
+++ b/secao_01_estrutura_sequencial/ex_05_metros_para_centimetros.py
@@ -13,7 +13,19 @@
Transformando para centímetros dá 362.1 cm
"""
+# conversão feita do m vezes 100
+def conversao (m):
+ return 100* m
+
+ # imput pedindo a quantidade de metros
+ print ('Transformando para centímetros dá: {(conversao (m))}cm')
+ # o 'f' do inicio garante a formatação usada, a conversao 'def' precisa
+ # estar entre chaves e o : .1f limita as casas decimais para apenas uma, arredondando as que sobram.
def converter_metros_para_centimetros():
"""Escreva aqui em baixo a sua solução"""
+ m = float(input('Digite a quantidade de metros para conversão:'))
+ print(f'Transformando para centímetros dá{(conversao (m)): .1f} 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..a6a10c0e0 100644
--- a/secao_01_estrutura_sequencial/ex_06_area_circulo.py
+++ b/secao_01_estrutura_sequencial/ex_06_area_circulo.py
@@ -18,3 +18,9 @@
def calcular_area_de_circulo():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite o raio do círculo: '))
+
+ c = 3.1415* (m**2)
+
+ print(f'A área do círculo com esse raio é: {c:.4f}')
diff --git a/secao_01_estrutura_sequencial/ex_07_area_quadrado.py b/secao_01_estrutura_sequencial/ex_07_area_quadrado.py
index 63b12a193..e2bf6c9bf 100644
--- a/secao_01_estrutura_sequencial/ex_07_area_quadrado.py
+++ b/secao_01_estrutura_sequencial/ex_07_area_quadrado.py
@@ -20,3 +20,12 @@
def calcular_area_de_quadrado():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite o lado do quadrado: ')) **2
+
+ c = m * 2
+
+ print(f'A área do quadrado com esse lado é: {m:.2f}')
+
+ print(f'O dobro da aŕea do quadrado é: {c:.2f}')
+
From fe534ae518dee3484e3511bf8c28fd3769561daa Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 10:25:19 -0300
Subject: [PATCH 21/47] =?UTF-8?q?ex=2008,09=20e=2010=20conclu=C3=ADdos?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_08_horas_trabalhadas_mes.py | 9 +++++++++
.../ex_09_fahrenheit_para_celsius.py | 3 +++
.../ex_10_celsius_para_fahrenheit.py | 3 +++
3 files changed, 15 insertions(+)
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..51e0b70ce 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,12 @@
def calcular_salario():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite quanto você ganha por hora trabalhada: '))
+ n = float(input('Digite quantas horas você trabalha por mês: '))
+
+ print(f'Seu salário desse mês é {m * n:.2f}')
+
+
+
+
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..0db00ed7f 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"""
+
+ m = float(input('Digite quantos graus Fahrenheit você quer converter para Celsius: '))
+ print(f'Essa temperatura é de {(m-32)/1.8:.0f} Celsius')
\ No newline at end of file
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..9b94d4230 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,6 @@
def transformar_para_fahrenheit():
"""Escreva aqui em baixo a sua solução"""
+
+ m = float(input('Digite quantos graus Celsius você quer converter para Fahrenheit: '))
+ print(f'Essa temperatura é de {m*1.8+32:.0f} Fahrenheit')
\ No newline at end of file
From 43c879b3a4a9ff5dcf0d0b9ef18955d02bf23695 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 11:18:19 -0300
Subject: [PATCH 22/47] ex 11,12 e 13 completos
---
secao_01_estrutura_sequencial/ex_11_contas_matematicas.py | 7 ++++++-
secao_01_estrutura_sequencial/ex_12_peso_ideal.py | 2 ++
.../ex_13_peso_ideal_mulher_e_homem.py | 3 +++
3 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py b/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py
index 09bdbbffd..d4b935224 100644
--- a/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py
+++ b/secao_01_estrutura_sequencial/ex_11_contas_matematicas.py
@@ -23,4 +23,9 @@
def calcular_formulas():
"""Escreva aqui em baixo a sua solução"""
-
+ n1 = int(input('Digite o primeiro número inteiro '))
+ n2 = int(input('Digite o segundo número inteiro '))
+ nr = float(input('Digite o número real '))
+ print(f'O produto do dobro do primeiro com metade do segundo é {(n1*2)*(n2/2):.2f}')
+ print(f'A soma do triplo do primeiro com o terceiro é {(n1*3)+nr:.2f}')
+ print(f'O terceiro elevado ao cubo é {nr**3:.2f}')
diff --git a/secao_01_estrutura_sequencial/ex_12_peso_ideal.py b/secao_01_estrutura_sequencial/ex_12_peso_ideal.py
index 1f8418fab..fca50c7d8 100644
--- a/secao_01_estrutura_sequencial/ex_12_peso_ideal.py
+++ b/secao_01_estrutura_sequencial/ex_12_peso_ideal.py
@@ -19,3 +19,5 @@
def calcular_peso_ideal():
"""Escreva aqui em baixo a sua solução"""
+ a = float(input('Digite sua altura: '))
+ print(f'Seu peso ideal é {(72.7 * a)-58:.1f} kg')
\ No newline at end of file
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..e586d43c5 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"""
+ a = float(input('Digite sua altura: '))
+ print(f'Seu peso ideal é {(62.1 * a)-44.7:.1f} kg, se você for mulher')
+ print(f'Seu peso ideal é {(72.7 * a)-58:.1f} kg, se você for homem')
\ No newline at end of file
From bc9f31a17b19e86a486138917d9770cd82fafe24 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 31 May 2022 15:21:36 -0300
Subject: [PATCH 23/47] ex 14 e 15 feitos
---
.../ex_14_joao_papo_de_pescador.py | 10 ++++++++++
secao_01_estrutura_sequencial/ex_15_clt_onerosa.py | 13 +++++++++++++
2 files changed, 23 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..bc3c22d4f 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,13 @@
def calcular_peso_excedente_e_multa():
"""Escreva aqui em baixo a sua solução"""
+
+ p = float(input('Seu Jão, digite quantos kgs você pescou hoje: '))
+ if p <= 50:
+
+ print(f'O peso excedente de peixes é de {0:.2f} kg')
+ print(f'Por isso, a multa é de R$ {0:.2f}')
+
+ else:
+ print(f'O peso excedente de peixes é de {p-50:.2f} kg')
+ print(f'Por isso, a multa é de R$ {(p-50)*4:.2f}')
diff --git a/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py b/secao_01_estrutura_sequencial/ex_15_clt_onerosa.py
index 901de0409..856ba8a52 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"""
+
+ g = float(input('Digite quanto você ganha por hora trabalhada : '))
+ h = float(input('Digite quantas horas você trabalha por mês: '))
+
+ print(f'+ Salário Bruto : {g*h:.2f}')
+
+ print(f'- IR (11%) : R$ {(g*h) * 0.11 :.2f}')
+
+ print(f'- INSS (8%) : R$ {(g*h) * 0.08 :.2f}')
+
+ print(f'- Sindicato ( 5%) : R$ {(g*h) * 0.05 :.2f}')
+
+ print(f'= Salário Liquido : R$ {(g*h)-(((g*h) * 0.11) + ((g*h) * 0.08) + ((g*h) * 0.05)):.2f}')
\ No newline at end of file
From c8328c155d86dc3b5a06dca666863b9a64aff914 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 1 Jun 2022 14:02:37 -0300
Subject: [PATCH 24/47] ex 16 feito
---
.vscode/launch.json | 31 ++++++++++---------
.../ex_16_loja_de_tintas_simples.py | 6 ++++
2 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/.vscode/launch.json b/.vscode/launch.json
index dbcb261c9..e6c436a5e 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -1,16 +1,17 @@
{
- // Use IntelliSense to learn about possible attributes.
- // Hover to view descriptions of existing attributes.
- // For more information, visit: 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
- }
- ]
-}
\ No newline at end of file
+ // 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": "Rodar Doctest",
+ "type": "python",
+ "request": "launch",
+ "module": "doctest",
+ "args": ["${file}", "-v"],
+ "cwd": "${workspaceRoot}",
+ "justMyCode": true
+ }
+ ]
+}
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..1be1ee213 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,9 @@
def calcular_latas_e_preco_de_tinta():
"""Escreva aqui em baixo a sua solução"""
+
+ from math import ceil
+ a_p = float(input('Digite a área a ser pintada em m2: '))
+ l_p_m = ceil (a_p / 3)
+ n_d_l = ceil(l_p_m / 18)
+ print (f'Você deve comprar {n_d_l:.0f} lata(s) tinta ao custo de R$ {n_d_l * 80:.2f}')
From 10c31094d64c4ad9d24071dd6bd82b04de22727e Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 1 Jun 2022 14:10:24 -0300
Subject: [PATCH 25/47] ex 17 - bot corrigido manualmente
---
.../ex_17_loja_de_tintas_complexa.py | 14 +++++++-------
1 file changed, 7 insertions(+), 7 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 09b7e7ffc..5e451cbf3 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
@@ -14,16 +14,16 @@
>>> from secao_01_estrutura_sequencial import ex_17_loja_de_tintas_complexa
>>> ex_17_loja_de_tintas_complexa.input = lambda k: '100'
>>> ex_17_loja_de_tintas_complexa.calcular_latas_e_preco_de_tinta()
- Você deve comprar 19 litros de tinta.
- Você pode comprar 2 lata(s) de 18 litros a um custo de R$ 160. Vão sobrar 17.0 litro(s) de tinta.
- Você pode comprar 6 lata(s) de 3.6 litros a um custo de R$ 150. Vão sobrar 2.6 litro(s) de tinta.
- Para menor custo, você pode comprar 1 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 105. Vão sobrar 2.6 litro(s) de tinta.
+ Você deve comprar 18 litros de tinta.
+ Você pode comprar 2 lata(s) de 18 litros a um custo de R$ 160. Vão sobrar 17.7 litro(s) de tinta.
+ Você pode comprar 6 lata(s) de 3.6 litros a um custo de R$ 150. Vão sobrar 3.3 litro(s) de tinta.
+ Para menor custo, você pode comprar 1 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 105. Vão sobrar 3.3 litro(s) de tinta.
>>> ex_17_loja_de_tintas_complexa.input = lambda k: '200'
>>> ex_17_loja_de_tintas_complexa.calcular_latas_e_preco_de_tinta()
Você deve comprar 37 litros de tinta.
- Você pode comprar 3 lata(s) de 18 litros a um custo de R$ 240. Vão sobrar 17.0 litro(s) de tinta.
- Você pode comprar 11 lata(s) de 3.6 litros a um custo de R$ 275. Vão sobrar 2.6 litro(s) de tinta.
- Para menor custo, você pode comprar 2 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 185. Vão sobrar 2.6 litro(s) de tinta.
+ Você pode comprar 3 lata(s) de 18 litros a um custo de R$ 240. Vão sobrar 17.3 litro(s) de tinta.
+ Você pode comprar 11 lata(s) de 3.6 litros a um custo de R$ 275. Vão sobrar 2.9 litro(s) de tinta.
+ Para menor custo, você pode comprar 2 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 185. Vão sobrar 2.9 litro(s) de tinta.
"""
From 25fb7f4ff9fc16492d7fc0d5662a1f0a9df7ff4c Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 1 Jun 2022 14:12:06 -0300
Subject: [PATCH 26/47] ex 17 - bot corrigido manualmente
---
.../ex_17_loja_de_tintas_complexa.py | 19 ++++++++-----------
1 file changed, 8 insertions(+), 11 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 5e451cbf3..bba4f3734 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
@@ -1,7 +1,6 @@
"""
Exercício 17 da seção de estrutura sequencial da Python Brasil:
https://wiki.python.org.br/EstruturaSequencial
-
Faça 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 6 metros quadrados e
que a tinta é vendida em latas de 18 litros, que custam R$ 80,00 ou em galões de 3,6 litros, que custam R$ 25,00.
@@ -10,23 +9,21 @@
comprar apenas galões de 3,6 litros;
misturar latas e galões, de forma que o custo seja menor.
Acrescente 10% de folga e sempre arredonde os valores para cima, isto é, considere latas cheias.
-
>>> from secao_01_estrutura_sequencial import ex_17_loja_de_tintas_complexa
>>> ex_17_loja_de_tintas_complexa.input = lambda k: '100'
>>> ex_17_loja_de_tintas_complexa.calcular_latas_e_preco_de_tinta()
- Você deve comprar 18 litros de tinta.
- Você pode comprar 2 lata(s) de 18 litros a um custo de R$ 160. Vão sobrar 17.7 litro(s) de tinta.
- Você pode comprar 6 lata(s) de 3.6 litros a um custo de R$ 150. Vão sobrar 3.3 litro(s) de tinta.
- Para menor custo, você pode comprar 1 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 105. Vão sobrar 3.3 litro(s) de tinta.
+ Você deve comprar 19 litros de tinta.
+ Você pode comprar 2 lata(s) de 18 litros a um custo de R$ 160. Vão sobrar 17.0 litro(s) de tinta.
+ Você pode comprar 6 lata(s) de 3.6 litros a um custo de R$ 150. Vão sobrar 2.6 litro(s) de tinta.
+ Para menor custo, você pode comprar 1 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 105. Vão sobrar 2.6 litro(s) de tinta.
>>> ex_17_loja_de_tintas_complexa.input = lambda k: '200'
>>> ex_17_loja_de_tintas_complexa.calcular_latas_e_preco_de_tinta()
Você deve comprar 37 litros de tinta.
- Você pode comprar 3 lata(s) de 18 litros a um custo de R$ 240. Vão sobrar 17.3 litro(s) de tinta.
- Você pode comprar 11 lata(s) de 3.6 litros a um custo de R$ 275. Vão sobrar 2.9 litro(s) de tinta.
- Para menor custo, você pode comprar 2 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 185. Vão sobrar 2.9 litro(s) de tinta.
-
+ Você pode comprar 3 lata(s) de 18 litros a um custo de R$ 240. Vão sobrar 17.0 litro(s) de tinta.
+ Você pode comprar 11 lata(s) de 3.6 litros a um custo de R$ 275. Vão sobrar 2.6 litro(s) de tinta.
+ Para menor custo, você pode comprar 2 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 185. Vão sobrar 2.6 litro(s) de tinta.
"""
def calcular_latas_e_preco_de_tinta():
- """Escreva aqui em baixo a sua solução"""
+ """Escreva aqui em baixo a sua solução"""
\ No newline at end of file
From ad7cd46af1a973864a044e5dde4fb22fecf356cb Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Thu, 2 Jun 2022 15:05:42 -0300
Subject: [PATCH 27/47] Ex 18 feito e 17 quase pronto
---
.../ex_17_loja_de_tintas_complexa.py | 39 ++++++++++++++++++-
.../ex_18_tempo_de_download.py | 10 +++--
2 files changed, 44 insertions(+), 5 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 bba4f3734..a90b1e162 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
@@ -24,6 +24,41 @@
Para menor custo, você pode comprar 2 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 185. Vão sobrar 2.6 litro(s) de tinta.
"""
+from math import ceil, floor
-def calcular_latas_e_preco_de_tinta():
- """Escreva aqui em baixo a sua solução"""
\ No newline at end of file
+
+# lata
+ area_a_ser_pintada = int(input('Digite a área a ser pintada em m2: '))
+ area_com_folga = float(area_a_ser_pintada *1.1)
+ litros_por_metro = 6
+ litros_a_serem_usados = ceil(area_com_folga / litros_por_metro)
+ litros_por_lata = 18
+ numero_de_latas = ceil(litros_a_serem_usados /litros_por_lata)
+ valor_com_apenas_latas = numero_de_latas * 80
+ sobra_da_tinta = (numero_de_latas * litros_por_lata) - litros_a_serem_usados
+ print(f'Você pode comprar {numero_de_latas} lata(s) de 18 litros a um custo de R$ {valor_com_apenas_latas}. Vão sobrar {sobra_da_tinta:.1f} litro(s) de tinta.')
+
+# galao
+ litros_por_galao = 3.6
+ numero_de_galoes = ceil(litros_a_serem_usados / litros_por_galao)
+ valor_com_apenas_galoes = numero_de_galoes * 25
+ sobra_do_galao = (numero_de_galoes * litros_por_galao) - litros_a_serem_usados
+ print(f'Você pode comprar {numero_de_galoes} lata(s) de 3.6 litros a um custo de R$ {valor_com_apenas_galoes}. Vão sobrar {sobra_do_galao:.1f} litro(s) de tinta.')
+
+# lata e galao juntos
+ numero_de_latas_baixo = floor(litros_a_serem_usados - litros_por_lata)
+ valor_de_latas = numero_de_latas * 80
+
+
+
+ litros_faltantes = litros_a_serem_usados % litros_por_lata
+ numero_de_galoes_baixo = ceil(litros_faltantes / litros_por_galao)
+ valor_com_galoes = numero_de_galoes * 25
+
+
+
+ valor_total = numero_de_latas_baixo *80 + numero_de_galoes_baixo * 25
+
+ sobra = (numero_de_latas_baixo + numero_de_galoes_baixo)
+
+ print(f'Para menor custo, você pode comprar {numero_de_latas_baixo} lata(s) de 18 litros e {numero_de_galoes_baixo} galão(ões) de 3.6 litros a um custo de R$ {valor_total}. Vão sobrar {sobra:.1f} litro(s) de tinta.')
\ 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..e54d8ea65 100644
--- a/secao_01_estrutura_sequencial/ex_18_tempo_de_download.py
+++ b/secao_01_estrutura_sequencial/ex_18_tempo_de_download.py
@@ -3,11 +3,10 @@
https://wiki.python.org.br/EstruturaSequencial
Faça um programa que peça o tamanho de um arquivo para download (em MB) e a velocidade de um link de Internet (em Mbps),
-calcule e informe o tempo aproximado de download do arquivo usando este link (em minutos).
-Arredonde o tempo em minutos
+calcule e o tempo em minutos
>>> from secao_01_estrutura_sequencial import ex_18_tempo_de_download
- >>> numeros =['50', '2500']
+ >>> numeros = ['50', '2500']
>>> ex_18_tempo_de_download.input = lambda k: numeros.pop()
>>> ex_18_tempo_de_download.calcular_tempo_de_download()
O tempo aproximado do Download é: 7 minuto(s)
@@ -21,3 +20,8 @@
def calcular_tempo_de_download():
"""Escreva aqui em baixo a sua solução"""
+
+ mb = float(input('Digite quantos MB tem o arquivo que você irá baixar: '))
+ mbps = float(input('Digite qual é a velocidade da sua internet: '))
+ tempo = (mb/(mbps / 8))/60
+ print(f'O tempo aproximado do Download é: {tempo:.0f} minuto(s)')
From d589b94167bd310eea1eb48754f47fc235107101 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Thu, 2 Jun 2022 16:43:14 -0300
Subject: [PATCH 28/47] =?UTF-8?q?SE=C3=87=C3=83O=201=20TERMINADA.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_17_loja_de_tintas_complexa.py | 65 ++++++++-----------
.../ex_01_imprimir_maior_numero.py | 6 ++
2 files changed, 33 insertions(+), 38 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 a90b1e162..dc478ab03 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
@@ -24,41 +24,30 @@
Para menor custo, você pode comprar 2 lata(s) de 18 litros e 1 galão(ões) de 3.6 litros a um custo de R$ 185. Vão sobrar 2.6 litro(s) de tinta.
"""
-from math import ceil, floor
-
-
-# lata
- area_a_ser_pintada = int(input('Digite a área a ser pintada em m2: '))
- area_com_folga = float(area_a_ser_pintada *1.1)
- litros_por_metro = 6
- litros_a_serem_usados = ceil(area_com_folga / litros_por_metro)
- litros_por_lata = 18
- numero_de_latas = ceil(litros_a_serem_usados /litros_por_lata)
- valor_com_apenas_latas = numero_de_latas * 80
- sobra_da_tinta = (numero_de_latas * litros_por_lata) - litros_a_serem_usados
- print(f'Você pode comprar {numero_de_latas} lata(s) de 18 litros a um custo de R$ {valor_com_apenas_latas}. Vão sobrar {sobra_da_tinta:.1f} litro(s) de tinta.')
-
-# galao
- litros_por_galao = 3.6
- numero_de_galoes = ceil(litros_a_serem_usados / litros_por_galao)
- valor_com_apenas_galoes = numero_de_galoes * 25
- sobra_do_galao = (numero_de_galoes * litros_por_galao) - litros_a_serem_usados
- print(f'Você pode comprar {numero_de_galoes} lata(s) de 3.6 litros a um custo de R$ {valor_com_apenas_galoes}. Vão sobrar {sobra_do_galao:.1f} litro(s) de tinta.')
-
-# lata e galao juntos
- numero_de_latas_baixo = floor(litros_a_serem_usados - litros_por_lata)
- valor_de_latas = numero_de_latas * 80
-
-
-
- litros_faltantes = litros_a_serem_usados % litros_por_lata
- numero_de_galoes_baixo = ceil(litros_faltantes / litros_por_galao)
- valor_com_galoes = numero_de_galoes * 25
-
-
-
- valor_total = numero_de_latas_baixo *80 + numero_de_galoes_baixo * 25
-
- sobra = (numero_de_latas_baixo + numero_de_galoes_baixo)
-
- print(f'Para menor custo, você pode comprar {numero_de_latas_baixo} lata(s) de 18 litros e {numero_de_galoes_baixo} galão(ões) de 3.6 litros a um custo de R$ {valor_total}. Vão sobrar {sobra:.1f} litro(s) de tinta.')
\ No newline at end of file
+import math
+
+
+def calcular_latas_e_preco_de_tinta():
+ """Escreva aqui em baixo a sua solução"""
+ a_quadrada = float(input('Digite o valor da área para cálculo: '))
+ a_folga = a_quadrada * 1.1
+ li_pm = math.ceil(a_folga / 6)
+ lata_li = math.ceil(li_pm / 18)
+ galao_li = math.ceil(li_pm / 3.5)
+ preco_lata = lata_li * 80
+ preco_galao = galao_li * 25
+ sobra_lata = (lata_li * 18) - li_pm
+ sobra_galao = (galao_li * 3.6) - li_pm
+ resto = li_pm % 18
+ latas_int = math.floor(li_pm / 18)
+ galao_resto = math.ceil(resto / 3.6)
+ la_ga = (latas_int * 80) + (galao_resto * 25)
+ res_tot = ((latas_int * 18) + (galao_resto * 3.6)) - li_pm
+
+ print(f'Você deve comprar {li_pm} litros de tinta.')
+ print(
+ f'Você pode comprar {lata_li} lata(s) de 18 litros a um custo de R$ {preco_lata}. Vão sobrar {sobra_lata:.1f} litro(s) de tinta.')
+ print(
+ f'Você pode comprar {galao_li} lata(s) de 3.6 litros a um custo de R$ {preco_galao}. Vão sobrar {sobra_galao:.1f} litro(s) de tinta.')
+ print(
+ f'Para menor custo, você pode comprar {latas_int} lata(s) de 18 litros e {galao_resto} galão(ões) de 3.6 litros a um custo de R$ {la_ga:.0f}. Vão sobrar {res_tot:.1f} litro(s) de tinta.')
\ No newline at end of file
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..4bcdc5feb 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,9 @@
def maior_de_dois_numeros(x, y):
"""Escreva aqui em baixo a sua solução"""
+ n1 = float(input('Escreva o primeiro número: '))
+ n2 = float(input('Escreva o segundo número: '))
+ if n1>n2
+ print(f'{n1}')
+ else
+ print(f'{n2}')
\ No newline at end of file
From 8d62764f04ef16f4efa55f336c2e2083aa4e83d4 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Mon, 6 Jun 2022 14:29:15 -0300
Subject: [PATCH 29/47] =?UTF-8?q?exerc=C3=ADcios=201,=202,=203,=204,=205,?=
=?UTF-8?q?=206,=207,=208,=209,=2010,=2011=20feitos?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.vscode/launch.json | 10 ++++++-
.../ex_03_imprima_soma_de_dois_numeros.py | 2 +-
.../ex_01_imprimir_maior_numero.py | 11 ++++----
.../ex_02_positivo_ou_negativo.py | 6 +++++
secao_02_estrutura_de_decisao/ex_03_F_ou_M.py | 6 +++++
.../ex_04_vogal_ou_consoante.py | 7 +++++
.../ex_05_notas_parciais.py | 6 +++++
.../ex_06_maior_numero_de_3_numeros.py | 8 ++++++
...ex_07_maior_e_menor_numero_de_3_numeros.py | 14 ++++++++++
.../ex_08_escolha_de_produto.py | 6 +++++
.../ex_09_numeros_decrescentes.py | 3 +++
.../ex_10_cumprimento_em_turno.py | 8 ++++++
.../ex_11_salario_tabajara.py | 27 +++++++++++++++++++
13 files changed, 106 insertions(+), 8 deletions(-)
diff --git a/.vscode/launch.json b/.vscode/launch.json
index e6c436a5e..07f12d2b6 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -1,9 +1,17 @@
{
- // Use o IntelliSense para saber mais sobre os atributos possíveis.
+ // 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
+ },
{
"name": "Rodar Doctest",
"type": "python",
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 ec0ac3142..a509f694d 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
@@ -17,4 +17,4 @@ def imprima_a_soma_de_dois_numeros():
"""Escreva aqui em baixo a sua solução"""
numero1 = int(input('Digite um número: '))
numero2 = int(input('Digite o segundo número: '))
- print (f'A soma dos números é: {numero1 + numero2}')
\ No newline at end of file
+ print (f'A soma dos dois números informados é {numero1 + numero2}')
\ No newline at end of file
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 4bcdc5feb..349211b44 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,9 +17,8 @@
def maior_de_dois_numeros(x, y):
"""Escreva aqui em baixo a sua solução"""
- n1 = float(input('Escreva o primeiro número: '))
- n2 = float(input('Escreva o segundo número: '))
- if n1>n2
- print(f'{n1}')
- else
- print(f'{n2}')
\ No newline at end of file
+
+ if x>y:
+ print(f'{x}')
+ else :
+ print(f'{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 23501b91e..4a4da806a 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,9 @@
def positivo_ou_negativo(n):
"""Escreva aqui em baixo a sua solução"""
+ if n > 0:
+ print("'positivo'" )
+ elif n == 0:
+ print("'não tem positivo nem negativo'" )
+ else:
+ print("'negativo'" )
\ No newline at end of file
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..1939cb2ba 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
@@ -18,3 +18,9 @@
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'")
\ No newline at end of file
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..dd469523c 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,10 @@
def vogal_ou_consoante(letra):
"""Escreva aqui em baixo a sua solução"""
+ vogais = ('aeiou')
+ if letra.lower() in vogais:
+ 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..076bcfc2e 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,9 @@
def notas_parciais(nota_1, nota_2):
"""Escreva aqui em baixo a sua solução"""
+n = input(float(f'Digite a primeira nota do aluno: '))
+n2 = input(float(f'Digite a segunda nota do aluno: '))
+if (n + n2) / 2 >= 7:
+ print(f'Aprovado')
+else:
+ print(f'Reprovado')
\ No newline at end of file
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..b279b0384 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,11 @@
def calcular_maior_de_3_numeros(x, y, z):
"""Escreva aqui em baixo a sua solução"""
+
+ if x > y and x > z:
+ print(x)
+ elif y > x and 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..61d2a07c0 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
@@ -21,3 +21,17 @@
def calcular_maior_de_3_numeros(x, y, z):
"""Escreva aqui em baixo a sua solução"""
+ maior=x
+ if y > x and y > z:
+ maior=y
+ elif z > x and z > y:
+ maior=z
+
+ menor=x
+ if y < x and y < z:
+ menor=y
+ elif z < x and z < y:
+ menor=z
+
+ print(f'Maior: {maior}')
+ print(f'Menor: {menor}')
\ No newline at end of file
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..0b9bee8d1 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,9 @@
def decidir_melhor_produto(x, y, z):
"""Escreva aqui em baixo a sua solução"""
+ menor=x
+ if y < x and y < z:
+ menor=y
+ elif z < x and z < y:
+ menor=z
+ print(f'Melhor produto custa R$ {menor:.2f}')
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..694971fff 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,6 @@
def ordenar_decrescente(x, y, z):
"""Escreva aqui em baixo a sua solução"""
+ reversen = [x, y, z]
+ reversen.sort (reverse=True)
+ print(f'{reversen [0]}, {reversen [1]}, {reversen [2]}')
\ 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..9d2beeef9 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,11 @@
def cumprimentar(turno: str):
"""Escreva aqui em baixo a sua solução"""
+ if turno.upper () == 'M':
+ print("'Bom dia!'")
+ elif turno.upper () == 'V':
+ print("'Boa tarde!'")
+ elif turno.upper () == 'N':
+ print("'Boa noite!'")
+ else:
+ print("'Valor Inválido!'")
\ 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..9aed1268a 100644
--- a/secao_02_estrutura_de_decisao/ex_11_salario_tabajara.py
+++ b/secao_02_estrutura_de_decisao/ex_11_salario_tabajara.py
@@ -39,5 +39,32 @@
"""
+from re import S
+
+
def calcular_aumento(salario: float):
"""Escreva aqui em baixo a sua solução"""
+ if salario <= 280.00:
+ print(f'Salário atual: R$ {salario:.2f}')
+ print('Aumento porcentual: 20%')
+ print(f'Valor do aumento: R$ {(salario * 1.2) - salario:.2f}')
+ print(f'Novo salário: R$ {salario *1.2:.2f}')
+
+ elif salario <= 700.00:
+ print(f'Salário atual: R$ {salario:.2f}')
+ print('Aumento porcentual: 15%')
+ print(f'Valor do aumento: R$ {(salario * 1.15) - salario:.2f}')
+ print(f'Novo salário: R$ {salario *1.15:.2f}')
+
+ elif salario <= 1500.00:
+ print(f'Salário atual: R$ {salario:.2f}')
+ print('Aumento porcentual: 10%')
+ print(f'Valor do aumento: R$ {(salario * 1.1) - salario:.2f}')
+ print(f'Novo salário: R$ {salario *1.1:.2f}')
+
+ elif salario > 1500.00:
+ print(f'Salário atual: R$ {salario:.2f}')
+ print('Aumento porcentual: 5%')
+ print(f'Valor do aumento: R$ {(salario * 1.05) - salario:.2f}')
+ print(f'Novo salário: R$ {salario *1.05:.2f}')
+
\ No newline at end of file
From 20894b53830c0771e40007baf9a62ddc7e8a3d4b Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 7 Jun 2022 13:53:56 -0300
Subject: [PATCH 30/47] =?UTF-8?q?Exerc=C3=ADcios=2012=20e=2013=20conclu?=
=?UTF-8?q?=C3=ADdos?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_12_clt_assalto.py | 88 +++++++++++++++++++
.../ex_13_dia_da_semana.py | 16 ++++
2 files changed, 104 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..8204597c3 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,91 @@
def calcular_salario_liquido(valor_hora: float, horas_trabalhadas: int):
"""Escreva aqui em baixo a sua solução"""
+
+ # primeiro calculo, onde o salário bruto é < 900 e o imposto de renda é = 0 OK
+
+ # variáveis imutáveis
+
+ salario_bruto = valor_hora * horas_trabalhadas
+ inss = (1.1 * salario_bruto) - salario_bruto
+ sindicato = (1.03 * salario_bruto) - salario_bruto
+ fgts = (1.11 * salario_bruto) - salario_bruto
+
+
+ # -----------------------
+
+ if salario_bruto <= 900:
+
+ desconto_com_ir_isento = inss + sindicato
+ salario_liquido_sem_ir = salario_bruto - desconto_com_ir_isento
+
+ print(f'Salário Bruto: (R$ {valor_hora:.2f} * {horas_trabalhadas}) : R$ {salario_bruto:.2f}')
+ print(f'(-) IR (0%) : R$ 0.00')
+ print(f'(-) INSS (10%) : R$ {inss:.2f}')
+ print(f'(-) Sindicato (3%) : R$ {sindicato:.2f}')
+ print(f'FGTS (11%) : R$ {fgts:.2f}')
+ print(f'Total de descontos : R$ {desconto_com_ir_isento:.2f}')
+ print(f'Salário Liquido : R$ {salario_liquido_sem_ir:.2f}')
+
+ # segundo calculo OK
+
+ elif salario_bruto > 900 and salario_bruto <= 1500:
+
+ ir_5 = (1.05 * salario_bruto) - salario_bruto
+ descontos1 = inss + sindicato + ir_5
+ salario_liquido1 = salario_bruto - descontos1
+
+ print(f'Salário Bruto: (R$ {valor_hora:.2f} * {horas_trabalhadas}) : R$ {salario_bruto:.2f}')
+ print(f'(-) IR (5%) : R$ {ir_5:.2f}')
+ print(f'(-) INSS (10%) : R$ {inss:.2f}')
+ print(f'(-) Sindicato (3%) : R$ {sindicato:.2f}')
+ print(f'FGTS (11%) : R$ {fgts:.2f}')
+ print(f'Total de descontos : R$ {descontos1:.2f}')
+ print(f'Salário Liquido : R$ {salario_liquido1:.2f}')
+
+ # teceiro calculo
+
+ elif salario_bruto > 1500 and salario_bruto <= 2500:
+
+ ir_10 = (1.1 * salario_bruto) - salario_bruto
+ descontos2 = inss + sindicato + ir_10
+ salario_liquido2 = salario_bruto - descontos2
+
+ print(f'Salário Bruto: (R$ {valor_hora:.2f} * {horas_trabalhadas}) : R$ {salario_bruto:.2f}')
+ print(f'(-) IR (10%) : R$ {ir_10:.2f}')
+ # VER PQ O CALCULO DO TERCEIRO TA DANDO KAO AQUI
+ print(f'(-) INSS (10%) : R$ {inss:.2f}')
+ print(f'(-) Sindicato (3%) : R$ {sindicato:.2f}')
+ print(f'FGTS (11%) : R$ {fgts:.2f}')
+ print(f'Total de descontos : R$ {descontos2:.2f}')
+ print(f'Salário Liquido : R$ {salario_liquido2:.2f}')
+
+ # quarto calculo
+
+ elif salario_bruto > 2500:
+
+ ir_20 = (1.2 * salario_bruto) - salario_bruto
+ descontos3 = inss + sindicato + ir_20
+ salario_liquido3 = salario_bruto - descontos3
+
+ print(f'Salário Bruto: (R$ {valor_hora:.2f} * {horas_trabalhadas}) : R$ {salario_bruto:.2f}')
+ print(f'(-) IR (20%) : R$ {ir_20:.2f}')
+ print(f'(-) INSS (10%) : R$ {inss:.2f}')
+ print(f'(-) Sindicato (3%) : R$ {sindicato:.2f}')
+ print(f'FGTS (11%) : R$ {fgts:.2f}')
+ print(f'Total de descontos : R$ {descontos3:.2f}')
+ print(f'Salário Liquido : R$ {salario_liquido3:.2f}')
+
+ # fim do código ...
+
+
+
+
+
+
+
+
+
+
+
+
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..62bcaf4ea 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("'Domingo'")
+ elif numero == 2:
+ print("'Segunda'")
+ elif numero == 3:
+ print("'Terça'")
+ elif numero == 4:
+ print("'Quarta'")
+ elif numero == 5:
+ print("'Quinta'")
+ elif numero == 6:
+ print ("'Sexta'")
+ elif numero == 7:
+ print ("'Sábado'")
+ else:
+ print("'Dia Inválido'")
\ No newline at end of file
From c67e6322c9f8dee137b7716b57538f4dab636906 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 7 Jun 2022 15:34:43 -0300
Subject: [PATCH 31/47] =?UTF-8?q?Exerc=C3=ADcios=2014=20e=2015=20conclu?=
=?UTF-8?q?=C3=ADdos?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_14_atribuicoes_de_conceitos.py | 39 +++++++++++++++++++
.../ex_15_triangulo.py | 11 ++++++
2 files changed, 50 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..f0b10718c 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,42 @@
def calcular_conceito(nota_1: float, nota_2: float):
"""Escreva aqui em baixo a sua solução"""
+
+ media = (nota_1 + nota_2) / 2
+
+# 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
+
+ if media >= 9.0:
+ print(f'Notas: {nota_1:.1f} e {nota_2:.1f}.')
+ print(f'Média: {media:.1f}')
+ print(f'Conceito: A')
+ print(f'Status: APROVADO')
+
+ elif media >= 7.5 and media < 9.0:
+ print(f'Notas: {nota_1:.1f} e {nota_2:.1f}.')
+ print(f'Média: {media:.1f}')
+ print(f'Conceito: B')
+ print(f'Status: APROVADO')
+
+ elif media >= 6.0 and media < 7.5 :
+ print(f'Notas: {nota_1:.1f} e {nota_2:.1f}.')
+ print(f'Média: {media:.1f}')
+ print(f'Conceito: C')
+ print(f'Status: APROVADO')
+
+ elif media >= 4.0 and media < 6.0 :
+ print(f'Notas: {nota_1:.1f} e {nota_2:.1f}.')
+ print(f'Média: {media:.1f}')
+ print(f'Conceito: D')
+ print(f'Status: REPROVADO')
+
+ elif media >= 0 and media < 4.0:
+ print(f'Notas: {nota_1:.1f} e {nota_2:.1f}.')
+ print(f'Média: {media:.1f}')
+ print(f'Conceito: E')
+ print(f'Status: REPROVADO')
+
diff --git a/secao_02_estrutura_de_decisao/ex_15_triangulo.py b/secao_02_estrutura_de_decisao/ex_15_triangulo.py
index 8b6ea5927..65dd1a2c3 100644
--- a/secao_02_estrutura_de_decisao/ex_15_triangulo.py
+++ b/secao_02_estrutura_de_decisao/ex_15_triangulo.py
@@ -27,3 +27,14 @@
def classificar_trinagulo(lado_a: float, lado_b: float, lado_c: float):
"""Escreva aqui em baixo a sua solução"""
+
+ if lado_a + lado_b >= lado_c and lado_b + lado_c >= lado_a and lado_a + lado_c >= lado_b:
+
+ if lado_a == lado_b and lado_a == lado_c:
+ print("'Triângulo Equilátero'")
+ elif lado_a == lado_b or lado_a == lado_c or lado_b == lado_c:
+ print("'Triângulo Isósceles'")
+ else:
+ print("'Triângulo Escaleno'")
+ else:
+ print("'Não é um triângulo'")
\ No newline at end of file
From 1962a6969620415eb3251ee9dbe7e675e78bd280 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 7 Jun 2022 18:59:43 -0300
Subject: [PATCH 32/47] =?UTF-8?q?exerc=C3=ADcios=2016=20ao=2023=20completo?=
=?UTF-8?q?s,=20com=20exce=C3=A7=C3=A3o=20do=2019=20e=2021?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_16_equacao_segundo_grau.py | 31 +++++++++++++
.../ex_17_ano_bissexto.py | 7 ++-
.../ex_18_validador_de_data.py | 44 ++++++++++++++++++-
.../ex_20_3_notas_parciais.py | 8 ++++
.../ex_22_par_ou_impar.py | 3 ++
.../ex_23_inteiro_ou_decimal.py | 6 ++-
6 files changed, 96 insertions(+), 3 deletions(-)
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..81c45780c 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
@@ -24,5 +24,36 @@
"""
+import math
+
+
def resolver_equacao_do_segundo_grau(a: float, b: float, c: float):
"""Escreva aqui em baixo a sua solução"""
+ # primeiro teste:
+ if a == 0:
+ return 'Valor do coeficiente a deve ser diferente de 0'
+ # -----------------
+
+ delta = (b**2) - 4 * a * c
+ if delta < 0:
+ return f'Delta negativo ({delta}), por isso não existem raízes reais'
+
+ # terceirao
+
+ if delta == 0:
+ raiz = - b / 2 * a
+
+ return f'Delta é 0, raíz única no valor de {raiz:.1f}'
+
+ # quarteto
+
+ if delta > 0:
+ raiz1 = ( -b + math.sqrt(delta) ) / 2 * a
+ raiz2 = ( -b - math.sqrt(delta) ) / 2 * a
+ print (f"'Delta é {delta}, raízes são {raiz1:.1f} e {raiz2:.1f}'")
+
+ # se delta é negativo\:
+ #valor de delta: delta = b**2 - 4*a*c
+ #raiz (ou, solucao, no caso) da equacao: (-b - math.sqrt(delta))/2*a
+ #são duas soluçoes, 2° solucao (-b + math.sqrt(delta))/2 * a
+
\ No newline at end of file
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..967a405c5 100644
--- a/secao_02_estrutura_de_decisao/ex_17_ano_bissexto.py
+++ b/secao_02_estrutura_de_decisao/ex_17_ano_bissexto.py
@@ -16,7 +16,12 @@
False
"""
-
+import calendar
def eh_ano_bissexto(ano: int):
"""Escreva aqui em baixo a sua solução"""
+
+ if calendar.isleap(ano):
+ print('True')
+ else:
+ print('False')
\ No newline at end of file
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..a4174e966 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
@@ -21,6 +21,48 @@
"""
-
def validar_data(data: str):
"""Escreva aqui em baixo a sua solução"""
+ if len(data) >= 8:
+ day, month, year = data.split('/')
+ day = int(day.lstrip('0'))
+ month = int(month.lstrip('0'))
+ year = int(year)
+ if day in range(1, 29) and month in range(1, 12) and year in range(1, 9999):
+ return 'Data válida'
+ return 'Data inválida'
+ return 'Data inválida'
+
+
+
+
+ # if month > 12:
+ # return f'Data inválida'
+ # if year > 9999 and year < 0000:
+ # return f'Data inválida'
+ # else:
+ # return f'Data inválida'
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
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..7511b66ce 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 == 10:
+ return 'Aprovado com Distinção'
+ elif media >= 7:
+ return 'Aprovado'
+ else:
+ return 'Reprovado'
\ No newline at end of file
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..efb374049 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,6 @@
def decidir_se_eh_par_ou_impar(valor: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ if valor % 2 == 0:
+ return 'Par'
+ return 'Impar'
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..00850da5d 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
@@ -18,7 +18,11 @@
>>> decidir_se_eh_inteiro_ou_decimal('3.1415')
'Decimal'
"""
-
+import math
def decidir_se_eh_inteiro_ou_decimal(valor: str) -> str:
"""Escreva aqui em baixo a sua solução"""
+ if math.floor(float(valor)) == float(valor):
+ return 'Inteiro'
+ else:
+ return 'Decimal'
\ No newline at end of file
From bf4b4b7d15c6d5c651c2ee7cbf62417ee206fe63 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Thu, 9 Jun 2022 23:46:24 -0300
Subject: [PATCH 33/47] =?UTF-8?q?se=C3=A7=C3=A3o=20dois=20completa?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_19_decomposicao_de_numero.py | 25 +-
secao_02_estrutura_de_decisao/ex_21_troco.py | 220 ++++++++++++++++++
.../ex_24_operacao.py | 42 +++-
.../ex_25_sherlock.py | 12 +-
.../ex_26_posto_de_gasolina.py | 11 +
.../ex_27_hortifruti.py | 40 ++++
.../ex_28_mercado_tabajara.py | 20 ++
7 files changed, 367 insertions(+), 3 deletions(-)
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..f3f0af2c2 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
@@ -6,7 +6,7 @@
mesmo.
Observando os termos no plural a colocação do "e", da vírgula entre outros. Exemplo:
326 = 3 centenas, 2 dezenas e 6 unidades
-12 = 1 dezena e 2 unidades Testar com: 326, 300, 100, 320, 310,305, 301, 101, 311, 111, 25, 20, 10, 21, 11, 1, 7 e 16
+12 = 1 dezena e 2 unidades Testar com: 326, 300, 100, 320, 310,305,' 301, 101, 311, 111, 25, 20, 10, 21, 11, 1, 7 e 16
>>> decompor_numero(1000)
'O número precisa ser menor que 1000'
@@ -52,3 +52,26 @@
def decompor_numero(numero: int):
"""Escreva aqui em baixo a sua solução"""
+
+ #mais de mil e menos de zero
+
+ if (numero) >= 1000:
+ print("'O número precisa ser menor que 1000'")
+ return
+ elif (numero) < 0:
+ print ("'O número precisa ser positivo'")
+ return
+
+ centena = (numero//100)
+ dezena = (numero - (centena*100))//10
+ unidade = (numero-(centena*100)-(dezena*10))
+ print("'", end='')
+ print(f'{numero} = ', end='')
+
+ if(centena):
+ print(f'{centena} centena{"s" if centena>1 else ""}{(", " if unidade else " e ") if dezena else (" e " if unidade else "")}', end='')
+ if(dezena):
+ print(f'{dezena} dezena{"s" if dezena>1 else ""}{" e " if unidade else ""}', end='')
+ if(unidade):
+ print (f'{unidade} unidade{"s" if unidade>1 else ""}', end='')
+ print("'")
\ No newline at end of file
diff --git a/secao_02_estrutura_de_decisao/ex_21_troco.py b/secao_02_estrutura_de_decisao/ex_21_troco.py
index de0d2a95e..b2d515ae6 100644
--- a/secao_02_estrutura_de_decisao/ex_21_troco.py
+++ b/secao_02_estrutura_de_decisao/ex_21_troco.py
@@ -27,3 +27,223 @@
def calcular_troco(valor: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+
+ # notas_de_100_str = notas_de_50_str = notas_de_10_str = notas_de_5_str = notas_de_1_str = ' '
+ # notas_de_100 = notas_de_50 = notas_de_10 = notas_de_5 = notas_de_1 = 0
+ # notas_de_100, valor = divmod(valor, 100)
+ # notas_de_50, valor = divmod(valor, 50)
+ # notas_de_10, valor = divmod(valor, 10)
+ # notas_de_5, valor = divmod(valor, 5)
+ # notas_de_1, valor = divmod(valor, 1)
+
+ # partes_numericas = 0
+ # # print("'", end='')
+
+ # if notas_de_100 == 1:
+ # notas_de_100_str == '1 nota de R$ 100'
+ # # print(f'{notas_de_100} {notas_de_100_str} ', end='')
+ # partes_numericas += 1
+ # elif notas_de_100 > 1:
+ # notas_de_100_str == f'{notas_de_100} notas de R$ 100'
+ # # print(f'{notas_de_100} notas de R$ 100 ', end='')
+ # partes_numericas += 1
+
+
+
+ # if notas_de_50 == 1:
+ # notas_de_50_str == '1 nota de R$ 50'
+ # # print(f'{notas_de_50} nota de R$ 50, ', end='')
+ # partes_numericas += 1
+ # elif notas_de_50 > 1:
+ # notas_de_50_str == f'{notas_de_50} notas de R$ 50'
+ # # print(f'{notas_de_50} notas de R$ 50, ', end='')
+ # partes_numericas += 1
+
+
+ # if notas_de_10 == 1:
+ # notas_de_10_str == '1 nota de R$ 10'
+ # # print(f'{notas_de_10} nota de R$ 10, ', end='')
+ # partes_numericas += 1
+ # elif notas_de_10 > 1:
+ # notas_de_10_str == 'f{notas_de_10} notas de R$ 10'
+ # # print(f'{notas_de_10} notas de R$ 10, ', end='')
+ # partes_numericas += 1
+
+
+ # if notas_de_5 == 1:
+ # notas_de_5_str == '1 nota de R$ 5'
+ # # print(f'{notas_de_5} nota de R$ 5, ', end='')
+ # partes_numericas += 1
+ # elif notas_de_5 > 1:
+ # notas_de_5_str == f'{notas_de_5} notas de R$ 1'
+ # # print(f'{notas_de_5} notas de R$ 1, ', end='')
+ # partes_numericas += 1
+
+
+ # if notas_de_1 == 1:
+ # notas_de_1_str == '1 notas de R$ 1'
+ # # print(f'{notas_de_1} nota de R$ 1', end='')
+ # partes_numericas += 1
+ # elif notas_de_1 > 1:
+ # notas_de_1_str == f'{notas_de_1} notas de R$ 1'
+ # # print(f'{notas_de_1} notas de R$ 1', end='')
+ # partes_numericas += 1
+
+
+ # if partes_numericas == 1:
+ # if notas_de_100_str != ' ':
+ # print(f"'{notas_de_100_str}'")
+ # elif notas_de_50_str != ' ':
+ # print(f"'{notas_de_50_str}'")
+ # elif notas_de_10_str != ' ':
+ # print(f"'{notas_de_10_str}'")
+ # elif notas_de_5_str != ' ':
+ # print(f"'{notas_de_5_str}'")
+ # elif notas_de_1_str != ' ':
+ # print(f"'{notas_de_1_str}'")
+ # elif partes_numericas == 5:
+ # print(f"'{notas_de_100_str}, {notas_de_50_str}, {notas_de_10_str}, {notas_de_5_str} e {notas_de_1_str}'")
+
+ # elif partes_numericas == 2:
+ # if notas_de_10_str != ' ' and notas_de_1_str != ' ':
+ # print(f"'{notas_de_10_str} e {notas_de_1_str}'")
+
+ # elif partes_numericas == 4:
+ # print(f"'{notas_de_100_str}, {notas_de_50_str}, {notas_de_5_str} e {notas_de_1_str}'")
+
+
+ # notas_de_100_str = notas_de_50_str = notas_de_10_str = notas_de_5_str = notas_de_1_str = ' '
+
+
+ # saque = valor
+ notas_100 = notas_50 = notas_10 = nota_5 = nota_1 = 0
+ notas_100, valor = divmod(valor,100)
+ notas_50, valor = divmod(valor,50)
+ notas_10, valor = divmod(valor,10)
+ nota_5, valor = divmod(valor,5)
+ nota_1, valor = divmod(valor,1)
+ parte = 0
+ print("""'""",end="")
+
+ if notas_100 == 1:
+ print(f"""{notas_100} nota de R$ 100""",end="")
+ parte += 1
+ elif notas_100 > 1:
+ print(f"""{notas_100} notas de R$ 100""",end="")
+ parte += 1
+
+
+ if notas_50 != 0 and parte == 1:
+ print(",",end=" ")
+ if notas_50 == 1:
+ print(f"""{notas_50} nota de R$ 50""",end="")
+ parte += 1
+ elif notas_50 > 1:
+ print(f"""{notas_50} notas de R$ 50""",end="")
+ parte += 1
+
+
+ if parte != 0 and notas_10 != 0:
+ print(",",end=" ")
+ if notas_10 == 1:
+ print(f"""{notas_10} nota de R$ 10""",end="")
+ parte += 1
+ elif notas_10 > 1:
+ print(f"""{notas_10} notas de R$ 10""",end="")
+ parte += 1
+
+ # notas de 5
+
+ if parte != 0 and nota_5 != 0:
+ print(",",end=" ")
+ if nota_5 == 1:
+ print(f"""{nota_5} nota de R$ 5""",end="")
+ parte += 1
+ elif nota_5 > 1:
+ print(f"""{nota_5} notas de R$ 5""",end="")
+ parte += 1
+
+ # notas de 1
+
+ if parte != 0 and nota_1 != 0:
+ print(" e",end=" ")
+ if nota_1 == 1:
+ print(f"""{nota_1} nota de R$ 1""",end="")
+ elif notas_10 > 1:
+ print(f"""{nota_1} notas de R$ 1""",end="")
+ print("""'""")
+
+# def calcular_troco(valor: int) -> str:
+# """Escreva aqui em baixo a sua solução"""
+
+# valor = valor
+# cem_str = cinquenta_str = dez_str = cinco_str = um_str = ' '
+# partes_numericas = 0
+# if saque <= 600:
+# cem, numero_sobrando = divmod(saque, 100)
+# if cem == 1:
+# cem_str = '1 nota de R$ 100'
+# partes_numericas += 1
+# elif cem > 1:
+# cem_str = f'{cem} notas de R$ 100'
+# partes_numericas += 1
+
+
+# #Atualiza o número que sobra
+
+# cinquenta, numero_sobrando = divmod(numero_sobrando, 50)
+# if cinquenta == 1:
+# cinquenta_str = '1 nota de R$ 50'
+# partes_numericas += 1
+# elif cinquenta > 1:
+# cinquenta_str = f'{cinquenta} notas de R$ 50'
+# partes_numericas += 1
+
+# #Atualiza o número que sobra
+
+# dez, numero_sobrando = divmod(numero_sobrando, 10)
+# if dez == 1:
+# dez_str = '1 nota de R$ 10'
+# partes_numericas += 1
+# elif dez > 1:
+# dez_str = f'{dez} notas de R$ 10'
+# partes_numericas += 1
+
+# cinco, numero_sobrando = divmod(numero_sobrando, 5)
+# if cinco == 1:
+# cinco_str = '1 nota de R$ 5'
+# partes_numericas += 1
+# elif cinco > 1:
+# cinco_str = f'{cinco} notas de R$ 5'
+# partes_numericas += 1
+
+# #Atualiza o número que sobra
+
+# if numero_sobrando == 1:
+# um_str = '1 nota de R$ 1'
+# partes_numericas += 1
+# elif numero_sobrando > 1:
+# um_str = f'{numero_sobrando} notas de R$ 1'
+# partes_numericas += 1
+
+
+# if partes_numericas == 1:
+# if cem_str != ' ':
+# print(f"'{cem_str}'")
+# elif cinquenta_str != ' ':
+# print(f"'{cinquenta_str}'")
+# elif dez_str != ' ':
+# print(f"'{dez_str}'")
+# elif cinco_str != ' ':
+# print(f"'{cinco_str}'")
+# elif um_str != ' ':
+# print(f"'{um_str}'")
+# elif partes_numericas == 5:
+# print(f"'{cem_str}, {cinquenta_str}, {dez_str}, {cinco_str} e {um_str}'")
+
+# elif partes_numericas == 2:
+# if dez_str != ' ' and um_str != ' ':
+# print(f"'{dez_str} e {um_str}'")
+
+# elif partes_numericas == 4:
+# print(f"'{cem_str}, {cinquenta_str}, {cinco_str} e {um_str}'")
\ No newline at end of file
diff --git a/secao_02_estrutura_de_decisao/ex_24_operacao.py b/secao_02_estrutura_de_decisao/ex_24_operacao.py
index 73fd5778f..27b054906 100644
--- a/secao_02_estrutura_de_decisao/ex_24_operacao.py
+++ b/secao_02_estrutura_de_decisao/ex_24_operacao.py
@@ -7,7 +7,7 @@
par ou ímpar;
positivo ou negativo;
inteiro ou decimal.
-
+
Mostre o restultado com duas casas decimais
>>> fazer_operacao_e_classificar(2, 3, '+')
@@ -31,3 +31,43 @@
def fazer_operacao_e_classificar(n_1: float, n_2: float, operacao: str):
"""Escreva aqui em baixo a sua solução"""
+ if operacao == '+':
+ resultado = n_1 + n_2
+ print (f'Resultado: {resultado:.2f}')
+
+ if operacao == '-':
+ resultado = n_1 - n_2
+ print (f'Resultado: {resultado:.2f}')
+
+ if operacao == '*':
+ resultado = n_1 * n_2
+ print (f'Resultado: {resultado:.2f}')
+
+ if operacao == '/':
+ resultado = n_1 / n_2
+ print (f'Resultado: {resultado:.2f}')
+
+ if resultado % 2 == 0:
+ par_impar = 'par'
+ else:
+ par_impar = 'impar'
+
+ if resultado > 0:
+ positivo_negativo = 'positivo'
+ elif resultado == 0:
+ positivo_negativo = 'neutro'
+ else:
+ positivo_negativo = 'negativo'
+
+ if resultado % 1 == 0:
+ inteiro_decimal = 'inteiro'
+ print(f'Número é {par_impar}, {positivo_negativo} e {inteiro_decimal}.')
+ else:
+ inteiro_decimal = 'decimal'
+ print(f'Número é {positivo_negativo} e {inteiro_decimal}.')
+
+
+
+
+
+
\ No newline at end of file
diff --git a/secao_02_estrutura_de_decisao/ex_25_sherlock.py b/secao_02_estrutura_de_decisao/ex_25_sherlock.py
index 6fccc6995..d8a97642e 100644
--- a/secao_02_estrutura_de_decisao/ex_25_sherlock.py
+++ b/secao_02_estrutura_de_decisao/ex_25_sherlock.py
@@ -29,7 +29,17 @@
'Inocente'
"""
-
+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"""
+ pergunta = [telefonou, estava_no_local, mora_perto, devia, trabalhou]
+ resposta = pergunta.count('Sim')
+ if resposta == 2:
+ print("'Suspeito'")
+ elif resposta == 3 or resposta == 4:
+ print("'Cúmplice'")
+ elif resposta == 5:
+ print("'Assassino'")
+ else:
+ print("'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..1a8ec6f37 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,14 @@
def calcular_abastecimento(litros_de_combustivel: float, tipo_de_combustivel: str) -> str:
"""Escreva aqui em baixo a sua solução"""
+ if litros_de_combustivel <= 20 and tipo_de_combustivel == 'A':
+ print(f"'{litros_de_combustivel} litro(s) de álcool custa(m): R$ {(1.9 * litros_de_combustivel):.2f}. Com 3% de desconto, fica R$ {(((1.9 * litros_de_combustivel * 2)) - ((1.9 * litros_de_combustivel)* 1.03)):.2f}'")
+ elif litros_de_combustivel > 20 and tipo_de_combustivel == 'A':
+ print(f"'{litros_de_combustivel} litro(s) de álcool custa(m): R$ {(1.9 * litros_de_combustivel):.2f}. Com 5% de desconto, fica R$ {(((1.9 * litros_de_combustivel * 2)) - ((1.9 * litros_de_combustivel)* 1.05)):.2f}'")
+
+ elif litros_de_combustivel <= 20 and tipo_de_combustivel == 'G':
+ print(f"'{litros_de_combustivel} litro(s) de gasolina custa(m): R$ {(2.5 * litros_de_combustivel):.2f}. Com 4% de desconto, fica R$ {(((2.5 * litros_de_combustivel * 2)) - ((2.5 * litros_de_combustivel)* 1.04)):.2f}'")
+
+ elif litros_de_combustivel > 20 and tipo_de_combustivel == 'G':
+ print(f"'{litros_de_combustivel} litro(s) de gasolina custa(m): R$ {(2.5 * litros_de_combustivel):.2f}. Com 6% de desconto, fica R$ {(((2.5 * litros_de_combustivel * 2)) - ((2.5 * litros_de_combustivel)* 1.06)):.2f}'")
+
diff --git a/secao_02_estrutura_de_decisao/ex_27_hortifruti.py b/secao_02_estrutura_de_decisao/ex_27_hortifruti.py
index 2e468a508..520d5e5a3 100644
--- a/secao_02_estrutura_de_decisao/ex_27_hortifruti.py
+++ b/secao_02_estrutura_de_decisao/ex_27_hortifruti.py
@@ -57,5 +57,45 @@
"""
+from this import d
+
+
def calcular_preco_da_compra(kilos_de_morango: int, kilos_de_maca: int):
"""Escreva aqui em baixo a sua solução"""
+ # >>> calcular_preco_da_compra(2, 0)
+ # (+) Morango - valor: R$ 5.00 - quantidade: 2 kg - preço: R$ 2.50/kg
+ # (-) Desconto - valor: R$ 0.00
+ # Valor Total: R$ 5.00
+
+ preco_morango = 2.20
+ preco_maca = 1.50
+ desconto = 0.00
+
+ if kilos_de_morango <= 5:
+ preco_morango = 2.50
+ if kilos_de_maca <= 5:
+ preco_maca = 1.80
+
+ preco_total_frutas = (preco_maca * kilos_de_maca) + (preco_morango * kilos_de_morango)
+ kilo_total_frutas = kilos_de_maca + kilos_de_morango
+
+
+
+ if kilo_total_frutas > 8 or preco_total_frutas > 25:
+ desconto = 0.10
+
+ preco_desconto = preco_total_frutas * desconto
+
+ if kilos_de_morango > 0:
+ print(f'(+) Morango - valor: R$ {preco_morango * kilos_de_morango:>5.2f} - quantidade: {kilos_de_morango} kg - preço: R$ {preco_morango:.2f}/kg')
+ if kilos_de_maca > 0:
+ print(f'(+) Maça - valor: R$ {preco_maca * kilos_de_maca:>5.2f} - quantidade: {kilos_de_maca} kg - preço: R$ {preco_maca:.2f}/kg')
+
+
+ print(f'(-) Desconto - valor: R$ {preco_desconto:>5.2f}')
+
+ print(f' Valor Total: R$ {preco_total_frutas - preco_desconto:>5.2f}')
+
+
+
+
\ No newline at end of file
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..0269571ca 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,23 @@
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 kilos_de_carne <= 5:
+ preco_carne = {
+ 'Filé Duplo': 4.90,
+ 'Alcatra': 5.90,
+ 'Picanha': 6.90
+ }
+ else:
+ preco_carne = {
+ 'Filé Duplo': 5.80,
+ 'Alcatra': 6.80,
+ 'Picanha': 7.80
+ }
+
+ preco_total = kilos_de_carne * preco_carne[tipo_de_carne]
+ if forma_de_pagamento == 'cartão tabajara':
+ preco_total_com_desconto = preco_total - (preco_total * 0.05)
+ print(f"'{kilos_de_carne} kg de {tipo_de_carne} a R$ {preco_carne[tipo_de_carne]:.2f}/kg saem a R$ {preco_total:.2f}. Com desconto de 5% pelo pagamento feito com cartão tabajara, fica R$ {preco_total_com_desconto:.2f}'")
+ else:
+ print(f"'{kilos_de_carne} kg de {tipo_de_carne} a R$ {preco_carne[tipo_de_carne]:.2f}/kg saem a R$ {preco_total:.2f}. Não há desconto, pagamento feito com {forma_de_pagamento}'")
\ No newline at end of file
From 8b5a0f5e35116724eb7184bb7a685331c373ee16 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 14 Jun 2022 11:10:29 -0300
Subject: [PATCH 34/47] =?UTF-8?q?lista=203,=20exerc=C3=ADcios=2001=20ao=20?=
=?UTF-8?q?03=20conclu=C3=ADdos?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
lista-de-exercicios-python-brasil | 1 +
.../ex_01_numero_valido.py | 13 +++++++++++
.../ex_02_validador_de_senha.py | 11 ++++++++++
.../ex_03_validador_de_cadastro.py | 22 +++++++++++++++++++
4 files changed, 47 insertions(+)
create mode 160000 lista-de-exercicios-python-brasil
diff --git a/lista-de-exercicios-python-brasil b/lista-de-exercicios-python-brasil
new file mode 160000
index 000000000..938677f43
--- /dev/null
+++ b/lista-de-exercicios-python-brasil
@@ -0,0 +1 @@
+Subproject commit 938677f43ed7bbace55763965e427622852aa8e8
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..2e0a32da4 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,16 @@
def obter_numero_valido():
"""Escreva aqui em baixo a sua solução"""
+ while (True):
+ nota = input("Digite uma nota entre 0 e 10: ")
+ if not nota.isdigit() or (int(nota) < 0 or int(nota) > 10):
+ print(f"Número inválido: {nota}")
+ else:
+ break
+
+ print(nota)
+
+
+
+
+
\ No newline at end of file
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..f0ce5d59e 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,14 @@
def validar_senha():
"""Escreva aqui em baixo a sua solução"""
+
+ while(True):
+ usuario=(input("Digite o nome de usuário: "))
+ senha=(input("Digite a senha de usuário: "))
+
+ if usuario == senha:
+ print('Senha deve ser diferente do login')
+ else:
+ break
+
+ print(f"'Cadastro realizado com suceso, seu login é {usuario}'")
\ No newline at end of file
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..9c2d35b8b 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,25 @@
def cadastrar_usuario(nome: str, idade: int, salario: float, sexo: str, estado_civil: str):
"""Escreva aqui em baixo a sua solução"""
+ erros = []
+
+ if len(nome) < 3:
+ erros.append(f"Erro: o nome precisa ter 3 letras ou mais, não pode ser {nome}")
+
+ if idade < 0 or idade > 150:
+ erros.append(f"Erro: a idade precisa estar entre 0 e 150, não pode ser {idade}")
+
+ if salario <= 0:
+ erros.append(f"Erro: o salário precisa ser positivo, não pode ser {salario}")
+
+ if not sexo in ["m", "f"]:
+ erros.append(f'Erro: o sexo precisa ser "m" ou "f", não pode ser "{sexo}"')
+
+ if not estado_civil in ["s", "c", "v", "d"]:
+ erros.append(f'Erro: o estado civil precisa ser "s", "c", "v" ou "d", não pode ser "{estado_civil}"')
+
+ if not erros:
+ print("Cadastro realizado com sucesso")
+
+ for erro in erros:
+ print(erro)
\ No newline at end of file
From 197c92d1fa5234884941a0290eea35ff73a42d39 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Tue, 14 Jun 2022 16:10:28 -0300
Subject: [PATCH 35/47] =?UTF-8?q?exerc=C3=ADcio=2004=20lista=2003=20conclu?=
=?UTF-8?q?=C3=ADdo?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_03_validador_de_cadastro.py | 2 +-
.../ex_04_crescimento_populacional.py | 17 +++++++++++++++++
2 files changed, 18 insertions(+), 1 deletion(-)
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 9c2d35b8b..d7e44334a 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
@@ -49,7 +49,7 @@ def cadastrar_usuario(nome: str, idade: int, salario: float, sexo: str, estado_c
erros.append(f"Erro: a idade precisa estar entre 0 e 150, não pode ser {idade}")
if salario <= 0:
- erros.append(f"Erro: o salário precisa ser positivo, não pode ser {salario}")
+ erros.append(f"Erro: o salário precisa ser positivo, não pode ser {salario}")
if not sexo in ["m", "f"]:
erros.append(f'Erro: o sexo precisa ser "m" ou "f", não pode ser "{sexo}"')
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..15fd6dacc 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,20 @@
def calcular_ano_ultrapassagem_populacional() -> str:
"""Escreva aqui em baixo a sua solução"""
+ anus = 0
+ pais_a = 80000
+ pais_b = 200000
+
+ porcentos_a = 0.03
+ porcentos_b = 0.015
+
+
+ while pais_a < pais_b:
+ crescimento_a = pais_a * porcentos_a
+ crescimento_b = pais_b * porcentos_b
+ pais_a += crescimento_a
+ pais_b += crescimento_b
+ anus += 1
+
+ print(f"'População de A, depois de {anus} ano(s) será de {pais_a:.0f} pessoas, superando a de B, que será de {pais_b:.0f} pessoas'")
+
\ No newline at end of file
From f4a06eb0e6203168283ebec035d8b4955f283ebe Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 15 Jun 2022 09:26:10 -0300
Subject: [PATCH 36/47] =?UTF-8?q?exerc=C3=ADcios=2005=20e=2006=20conclu?=
=?UTF-8?q?=C3=ADdos=20-=20lista=203?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_04_crescimento_populacional.py | 6 ++--
...crescimento_populacional_parametrizavel.py | 14 +++++++++
.../ex_06_numeros_1_a_20.py | 29 +++++++++++++++++++
3 files changed, 46 insertions(+), 3 deletions(-)
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 15fd6dacc..3e191f282 100644
--- a/secao_03_estrutura_de_repeticao/ex_04_crescimento_populacional.py
+++ b/secao_03_estrutura_de_repeticao/ex_04_crescimento_populacional.py
@@ -16,7 +16,7 @@
def calcular_ano_ultrapassagem_populacional() -> str:
"""Escreva aqui em baixo a sua solução"""
- anus = 0
+ anos = 0
pais_a = 80000
pais_b = 200000
@@ -29,7 +29,7 @@ def calcular_ano_ultrapassagem_populacional() -> str:
crescimento_b = pais_b * porcentos_b
pais_a += crescimento_a
pais_b += crescimento_b
- anus += 1
+ anos += 1
- print(f"'População de A, depois de {anus} ano(s) será de {pais_a:.0f} pessoas, superando a de B, que será de {pais_b:.0f} pessoas'")
+ print(f"'População de A, depois de {anos} ano(s) será de {pais_a:.0f} pessoas, superando a de B, que será de {pais_b:.0f} pessoas'")
\ No newline at end of file
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..15d028760 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,17 @@ 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"""
+
+ if taxa_crescimento_populacao_menor < taxa_crescimento_populacao_maior:
+ return 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}%)'
+
+ anos = 0
+
+ while populacao_menor < populacao_maior:
+ crescimento_a = populacao_menor * taxa_crescimento_populacao_menor
+ crescimento_b = populacao_maior * taxa_crescimento_populacao_maior
+ populacao_menor += crescimento_a
+ populacao_maior += crescimento_b
+ anos += 1
+
+ print(f"'População de A, depois de {anos} ano(s) será de {populacao_menor:.0f} pessoas, superando a de B, que será de {populacao_maior:.0f} pessoas'")
\ No newline at end of file
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..70dafbc54 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,32 @@
def escrever_numeros_de_1_a_20(formato:str) -> str:
"""Escreva aqui em baixo a sua solução"""
+ # lista = list(range(1,21))
+ # print(formato)
+
+
+ if formato == 'um_abaixo_do_outro':
+ numero = 1
+ while numero <= 20:
+ print(numero)
+ numero += 1
+ else:
+ numero = 1
+ while numero < 20:
+ print(numero, end=' ')
+ numero += 1
+ if numero == 20:
+ print(numero, end='')
+
+
+
+
+
+
+
+
+
+
+
+
+
From 4d3fae0022712c65d184870b124ee0e852a33b65 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Fri, 17 Jun 2022 13:46:34 -0300
Subject: [PATCH 37/47] =?UTF-8?q?exerc=C3=ADcios=2007=20e=2008da=20lista?=
=?UTF-8?q?=203=20conclu=C3=ADdos?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_07_maior_de_5_numeros.py | 11 +++++++++++
.../ex_08_soma_e_media_de_5_numeros.py | 4 ++++
.../ex_09_numeros_impares_de_1_a_50.py | 8 ++++++++
3 files changed, 23 insertions(+)
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..c26192312 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,14 @@
def calcular_maior_numero(n1: int, n2: int, n3: int, n4: int, n5: int, ) -> int:
"""Escreva aqui em baixo a sua solução"""
+ lista = (n1, n2, n3, n4, n5)
+ maior = -100
+
+ for n in lista:
+ if n > maior:
+ maior = n
+ print(maior)
+
+
+
+
\ No newline at end of file
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..400ae3b6d 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,7 @@
def calcular_soma_e_media(n1: int, n2: int, n3: int, n4: int, n5: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ soma = n1 + n2 + n3 + n4 + n5
+ media = soma / 5
+ print(f"'Soma: {soma:.0f}, Média: {media:.2f}'")
+
\ No newline at end of file
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 b8a480990..7fd76f1d8 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,11 @@
def calcular_numeros_impares_de_1_a_50() -> str:
"""Escreva aqui em baixo a sua solução"""
+ n = 0
+ total = 50
+ while total:
+ if n / 2:
+ None
+ else:
+
+ print(n)
From 69845a99c682d106ece320baae61b938c96d027e Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Fri, 17 Jun 2022 14:27:52 -0300
Subject: [PATCH 38/47] =?UTF-8?q?exerc=C3=ADcio=209=20lista=203=20completo?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_09_numeros_impares_de_1_a_50.py | 22 ++++++++++++-------
1 file changed, 14 insertions(+), 8 deletions(-)
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 7fd76f1d8..65b3aad66 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,11 +12,17 @@
def calcular_numeros_impares_de_1_a_50() -> str:
"""Escreva aqui em baixo a sua solução"""
- n = 0
- total = 50
- while total:
- if n / 2:
- None
- else:
-
- print(n)
+ numero = 1
+ while numero <= 47 and numero %2 != 0:
+ if numero == 1:
+ print(f"'", end='')
+ print(f"{numero},", end=' ')
+ numero += 2
+ if numero == 49:
+ print (f"{numero}'")
+ if numero > 49:
+ break
+
+ # if numero == 20:
+ # print(f"numero'", end='')
+
From 1f47c5a128a9bbf08efe34ee883fb7a75e7114c5 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Fri, 17 Jun 2022 15:23:55 -0300
Subject: [PATCH 39/47] exercicio 10 lista 3 ok
---
.../ex_09_numeros_impares_de_1_a_50.py | 3 ---
.../ex_10_gerar_numeros_de_intervalo.py | 22 +++++++++++++++++++
2 files changed, 22 insertions(+), 3 deletions(-)
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 65b3aad66..c2c4a96a6 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
@@ -22,7 +22,4 @@ def calcular_numeros_impares_de_1_a_50() -> str:
print (f"{numero}'")
if numero > 49:
break
-
- # if numero == 20:
- # print(f"numero'", 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..c15ade00c 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,25 @@
def calcular_numeros_no_intervalo(inicio: int, fim: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ if inicio > fim:
+ print("''")
+ for n in range (inicio, fim):
+ if n == inicio:
+ print("'", end="") #ok
+ if n == fim - 1:
+ print(f"{n}'", end="")
+ break
+
+ print(f"{n},", end=" ") #ok
+
+
+
+
+
+ # if numero == 1:
+ # print(f"'", end='')
+ # print(f"{numero},", end=' ')
+ # numero += 2
+ # if numero == 49:
+ # print (f"{numero}'")
+ # if numero > 49:
From af2b54fd08483c9faa77b5f261fee3ddf01cc076 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Fri, 17 Jun 2022 16:08:34 -0300
Subject: [PATCH 40/47] =?UTF-8?q?exerc=C3=ADcios=2011,=2012=20e=2013=20-?=
=?UTF-8?q?=20lista=203=20ok?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_10_gerar_numeros_de_intervalo.py | 22 ++++++-------------
...x_11_gerar_numeros_de_intervalo_e_somar.py | 15 +++++++++++++
.../ex_12_tabuada.py | 8 +++++++
.../ex_13_potenciacao.py | 2 ++
4 files changed, 32 insertions(+), 15 deletions(-)
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 c15ade00c..1646dcfec 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,25 +16,17 @@
def calcular_numeros_no_intervalo(inicio: int, fim: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ # caso o inicio seja maior q o fim:
if inicio > fim:
print("''")
+ # se as condições forem boas, o código continua:
for n in range (inicio, fim):
+ # no inicio, precisa ter uma ' pra bater com o doctest
if n == inicio:
- print("'", end="") #ok
+ print("'", end="")
+ # no fim (fim menos 1), ele precisa de uma ' pra fechar e bater com o doctest
if n == fim - 1:
print(f"{n}'", end="")
break
-
- print(f"{n},", end=" ") #ok
-
-
-
-
-
- # if numero == 1:
- # print(f"'", end='')
- # print(f"{numero},", end=' ')
- # numero += 2
- # if numero == 49:
- # print (f"{numero}'")
- # if numero > 49:
+ # aqui ele printa tudo
+ print(f"{n},", end=" ")
diff --git a/secao_03_estrutura_de_repeticao/ex_11_gerar_numeros_de_intervalo_e_somar.py b/secao_03_estrutura_de_repeticao/ex_11_gerar_numeros_de_intervalo_e_somar.py
index 875432bf8..ff18a1de1 100644
--- a/secao_03_estrutura_de_repeticao/ex_11_gerar_numeros_de_intervalo_e_somar.py
+++ b/secao_03_estrutura_de_repeticao/ex_11_gerar_numeros_de_intervalo_e_somar.py
@@ -18,3 +18,18 @@
def calcular_numeros_no_intervalo_e_somar(inicio: int, fim: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ # caso o inicio seja maior q o fim:
+ soma = 0
+ if inicio > fim:
+ print("'Sequência: vazia. Soma: 0'")
+ # se as condições forem boas, o código continua:
+ for n in range (inicio, fim):
+ soma += n
+ if n == inicio:
+ print("'Sequência: ", end="")
+ # no fim (fim menos 1), ele precisa de uma ' pra fechar e bater com o doctest
+ if n == fim - 1:
+ print(f"{n}. Soma: {soma}'", end="")
+ break
+ # aqui ele printa tudo
+ print(f"{n},", end=" ")
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_12_tabuada.py b/secao_03_estrutura_de_repeticao/ex_12_tabuada.py
index f066ddd5a..7b37e9d47 100644
--- a/secao_03_estrutura_de_repeticao/ex_12_tabuada.py
+++ b/secao_03_estrutura_de_repeticao/ex_12_tabuada.py
@@ -124,3 +124,11 @@
def gerar_tabuada(n: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ if n <= 0 or n > 10:
+ print('Somente pode ser gerada tabuada de 1 a 10')
+
+ else:
+ for tabuada in range (1 , 11):
+ multiplicacao = n * tabuada
+ print(f'{n} X {tabuada} = {multiplicacao}')
+ tabuada += 1
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_13_potenciacao.py b/secao_03_estrutura_de_repeticao/ex_13_potenciacao.py
index 617b82620..c16db59fb 100644
--- a/secao_03_estrutura_de_repeticao/ex_13_potenciacao.py
+++ b/secao_03_estrutura_de_repeticao/ex_13_potenciacao.py
@@ -18,3 +18,5 @@
def calcular_potencia(base: int, expoente: int) -> int:
"""Escreva aqui em baixo a sua solução"""
+ elevado = base** expoente
+ print(elevado)
\ No newline at end of file
From e3749355cbc8d24e25b3cc5b16703f616f1f28fd Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Fri, 17 Jun 2022 17:00:35 -0300
Subject: [PATCH 41/47] =?UTF-8?q?exerc=C3=ADcio=2014=20em=20andamento?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_14_qtde_pares_e_impares.py | 17 +++++++++++++++++
.../ex_15_fibonnacci_ate_n.py | 10 ++++++++++
2 files changed, 27 insertions(+)
diff --git a/secao_03_estrutura_de_repeticao/ex_14_qtde_pares_e_impares.py b/secao_03_estrutura_de_repeticao/ex_14_qtde_pares_e_impares.py
index 2881cc0a0..9a3451254 100644
--- a/secao_03_estrutura_de_repeticao/ex_14_qtde_pares_e_impares.py
+++ b/secao_03_estrutura_de_repeticao/ex_14_qtde_pares_e_impares.py
@@ -18,3 +18,20 @@
def calcular_qtde_numeros_pares_e_impares(n1: int, n2: int, n3: int, n4: int, n5: int, n6: int, n7: int, n8: int, n9: int, n10: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ lista = (n1, n2, n3, n4, n5, n6, n7, n8, n9, n10)
+ par = 0
+ for n in lista:
+ if n%2 == 0:
+ par+=1
+ print(f"'Existem {par} números pares e {10-par} números impares'")
+
+
+ # while numero <= 47 and numero %2 != 0:
+ # # if numero == 1:
+ # print(f"'", end='')
+ # print(f"{numero},", end=' ')
+ # numero += 2
+ # # if numero == 49:
+ # print (f"{numero}'")
+ # # if numero > 49:
+ # break
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py b/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py
index bde925c25..d237a14a8 100644
--- a/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py
+++ b/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py
@@ -25,3 +25,13 @@
def calcular_serie_de_fibonacci(n: int) -> str:
"""Escreva aqui em baixo a sua solução"""
+ n1 = 1
+ n2 = 1
+ n = n1 + n2
+ for n in range(2):
+ print(f"'", end="")
+ print(f"{n1}, {n2}, {n}", end=" ")
+
+
+
+
From 8668a55494200833e9eb59e27929476ef7bd3d94 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Mon, 20 Jun 2022 13:39:10 -0300
Subject: [PATCH 42/47] exercicio 15 lista 3 ok
---
.../ex_15_fibonnacci_ate_n.py | 62 +++++++++++++++++--
1 file changed, 56 insertions(+), 6 deletions(-)
diff --git a/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py b/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py
index d237a14a8..c812567f8 100644
--- a/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py
+++ b/secao_03_estrutura_de_repeticao/ex_15_fibonnacci_ate_n.py
@@ -25,12 +25,62 @@
def calcular_serie_de_fibonacci(n: int) -> str:
"""Escreva aqui em baixo a sua solução"""
- n1 = 1
- n2 = 1
- n = n1 + n2
- for n in range(2):
- print(f"'", end="")
- print(f"{n1}, {n2}, {n}", end=" ")
+
+ # ultimo = 1
+ # penultimo = 1
+ # soma = 1
+
+ # if n == 1:
+ # print(f"'{n}'")
+
+ # else:
+ # n -= 1
+ # print("'1", end=", ")
+ # for numero in range(n):
+ # if numero == n -1:
+ # print(f"{soma}'", end="")
+ # else:
+ # print(f"{soma}", end=", ")
+ # soma = ultimo + penultimo
+ # ultimo = penultimo
+ # penultimo = soma
+
+
+ ultimo = 1
+ penultimo = 1
+ soma = 1
+
+ if n == 1:
+ print(f"'{n}'")
+
+ else:
+ n -= 1
+ print("'1", end=", ")
+
+ for numero in range(n):
+ if numero == n - 1:
+ print(f"{soma}'", end="")
+
+ else:
+ print(f"{soma}", end=", ")
+ soma = ultimo + penultimo
+ ultimo = penultimo
+ penultimo = soma
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From be0aa445c49aca0bf7e3af4da205863a1a5b0c59 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Mon, 20 Jun 2022 15:47:25 -0300
Subject: [PATCH 43/47] exercicios 16, 17, 18 e 19 da lista 3 ok
---
...x_16_fibonnacci_ate_valor_maior_que_500.py | 19 +++++++++++++++++++
.../ex_17_fatorial.py | 8 ++++++++
.../ex_18_estatisticas_de_n_numeros.py | 11 +++++++++++
...estatisticas_de_n_numeros_com_limitacao.py | 16 ++++++++++++++++
4 files changed, 54 insertions(+)
diff --git a/secao_03_estrutura_de_repeticao/ex_16_fibonnacci_ate_valor_maior_que_500.py b/secao_03_estrutura_de_repeticao/ex_16_fibonnacci_ate_valor_maior_que_500.py
index ab7c70038..89139d7c7 100644
--- a/secao_03_estrutura_de_repeticao/ex_16_fibonnacci_ate_valor_maior_que_500.py
+++ b/secao_03_estrutura_de_repeticao/ex_16_fibonnacci_ate_valor_maior_que_500.py
@@ -10,5 +10,24 @@
"""
+from turtle import pen
+
+
def calcular_serie_de_fibonacci_ate_valor_ser_maior_que_500() -> str:
"""Escreva aqui em baixo a sua solução"""
+ ultimo = 0
+ penultimo = 1
+ soma = 1
+
+ while ultimo <= 500:
+ if ultimo == 0:
+ print(f"'{ultimo}", end=", ")
+ if penultimo > 500:
+ print(f"{penultimo}'", end="")
+ return
+ else:
+ print(f"{soma}", end=", ")
+ soma = ultimo + penultimo
+ ultimo = penultimo
+ penultimo = soma
+
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_17_fatorial.py b/secao_03_estrutura_de_repeticao/ex_17_fatorial.py
index 0188fcfa3..edfe00690 100644
--- a/secao_03_estrutura_de_repeticao/ex_17_fatorial.py
+++ b/secao_03_estrutura_de_repeticao/ex_17_fatorial.py
@@ -23,3 +23,11 @@
def calcular_fatorial(n: int) -> int:
"""Escreva aqui em baixo a sua solução"""
+# for n in range(1,numero+1):
+# resultado *= n
+ resultado = 1
+ count = 1
+ while count <= n:
+ resultado *= count
+ count += 1
+ print(resultado)
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_18_estatisticas_de_n_numeros.py b/secao_03_estrutura_de_repeticao/ex_18_estatisticas_de_n_numeros.py
index 45f349446..a321ff39e 100644
--- a/secao_03_estrutura_de_repeticao/ex_18_estatisticas_de_n_numeros.py
+++ b/secao_03_estrutura_de_repeticao/ex_18_estatisticas_de_n_numeros.py
@@ -18,3 +18,14 @@
def calcular_estatisticas(*numeros) -> str:
"""Escreva aqui em baixo a sua solução"""
+ if len(numeros) == 0:
+ print("'Maior valor: não existe. Menor valor: não existe. Soma: 0'")
+ return
+ maior = max(numeros)
+ menor = min(numeros)
+ soma = 0
+
+ for n in numeros:
+ soma +=n
+ print(f"'Maior valor: {maior}. Menor valor: {menor}. Soma: {soma}'")
+
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_19_estatisticas_de_n_numeros_com_limitacao.py b/secao_03_estrutura_de_repeticao/ex_19_estatisticas_de_n_numeros_com_limitacao.py
index e49bbed45..90701839b 100644
--- a/secao_03_estrutura_de_repeticao/ex_19_estatisticas_de_n_numeros_com_limitacao.py
+++ b/secao_03_estrutura_de_repeticao/ex_19_estatisticas_de_n_numeros_com_limitacao.py
@@ -24,3 +24,19 @@
def calcular_estatisticas(*numeros) -> str:
"""Escreva aqui em baixo a sua solução"""
+ for n in (numeros):
+ if n > 1000 or n < 0:
+ print("'Somente números de 0 a 1000 são permitidos'")
+ return
+
+ if len(numeros) == 0:
+ print("'Maior valor: não existe. Menor valor: não existe. Soma: 0'")
+ return
+
+ maior = max(numeros)
+ menor = min(numeros)
+ soma = 0
+
+ for n in numeros:
+ soma +=n
+ print(f"'Maior valor: {maior}. Menor valor: {menor}. Soma: {soma}'")
\ No newline at end of file
From d951efd43d63748ae067f8b8c3512e88aaf3a2d8 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Wed, 22 Jun 2022 23:33:54 -0300
Subject: [PATCH 44/47] =?UTF-8?q?exerc=C3=ADcio=20do=2020=20ao=2027=20=20l?=
=?UTF-8?q?ista=203=20ok?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ex_20_fatorial_com_limitacao.py | 10 ++++++
.../ex_21_numero_primo.py | 21 ++++++++++++
.../ex_22_numero_primo_divisores.py | 15 +++++++++
.../ex_23_primos_menores_que_um_numero.py | 13 ++++++++
.../ex_24_media_artmetica.py | 32 +++++++++++++++++++
.../ex_25_classificador_de_turma.py | 18 +++++++++++
.../ex_26_urna_eletronica.py | 22 +++++++++++++
.../ex_27_alunos_por_turma.py | 25 +++++++++++++++
8 files changed, 156 insertions(+)
diff --git a/secao_03_estrutura_de_repeticao/ex_20_fatorial_com_limitacao.py b/secao_03_estrutura_de_repeticao/ex_20_fatorial_com_limitacao.py
index 641981165..2521c2857 100644
--- a/secao_03_estrutura_de_repeticao/ex_20_fatorial_com_limitacao.py
+++ b/secao_03_estrutura_de_repeticao/ex_20_fatorial_com_limitacao.py
@@ -33,3 +33,13 @@
def calcular_fatorial(n: int) -> int:
"""Escreva aqui em baixo a sua solução"""
+ if n > 16 or n < 1 or type(n) == float:
+ print(f"'Apenas valores positivos, inteiros e menores que 16 são válidos. Não é possível calcular para {n}'")
+ return
+
+ resultado = 1
+ count = 1
+ while count <= n:
+ resultado *= count
+ count += 1
+ print(resultado)
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_21_numero_primo.py b/secao_03_estrutura_de_repeticao/ex_21_numero_primo.py
index 442baff57..d93bc7556 100644
--- a/secao_03_estrutura_de_repeticao/ex_21_numero_primo.py
+++ b/secao_03_estrutura_de_repeticao/ex_21_numero_primo.py
@@ -39,3 +39,24 @@
def eh_primo(n: int) -> bool:
"""Escreva aqui em baixo a sua solução"""
+ # if n / n == 0 and n % 1 == 0 and n / 2 != 0:
+ # print(True)
+ # else:
+ # print(False)
+
+ # for i in range(2, n+1):
+ # if n / n == 0 and n % i == 0 and n / 2 != 0:
+ # print(True)
+ # else:
+ # print(False)
+
+ mult=0
+
+ for i in range(1,n+1):
+ if (n % i == 0):
+ mult += 1
+
+ if mult == 2:
+ print("True")
+ else:
+ print("False")
diff --git a/secao_03_estrutura_de_repeticao/ex_22_numero_primo_divisores.py b/secao_03_estrutura_de_repeticao/ex_22_numero_primo_divisores.py
index 4fe3d89f1..5921ed1cd 100644
--- a/secao_03_estrutura_de_repeticao/ex_22_numero_primo_divisores.py
+++ b/secao_03_estrutura_de_repeticao/ex_22_numero_primo_divisores.py
@@ -50,3 +50,18 @@
def eh_primo(n: int) -> bool:
"""Escreva aqui em baixo a sua solução"""
+ mult=0
+ falso= []
+ for i in range(1,n+1):
+ if (n % i == 0):
+ mult += 1
+ falso.append(i)
+ if mult == 2:
+ print(True)
+ else:
+ for i in falso:
+ if i != 1 and i != n:
+ print(f"É divisível por {i}")
+ print(False)
+
+
diff --git a/secao_03_estrutura_de_repeticao/ex_23_primos_menores_que_um_numero.py b/secao_03_estrutura_de_repeticao/ex_23_primos_menores_que_um_numero.py
index 3a3703c9b..060dec7b4 100644
--- a/secao_03_estrutura_de_repeticao/ex_23_primos_menores_que_um_numero.py
+++ b/secao_03_estrutura_de_repeticao/ex_23_primos_menores_que_um_numero.py
@@ -43,3 +43,16 @@
def calcular_primos_e_divisoes(n: int) -> Tuple[str, int]:
"""Escreva aqui em baixo a sua solução"""
+ mult=0
+ falso= []
+ for i in range(1,n+1):
+ if (n % i == 0):
+ mult += 1
+ falso.append(i)
+ if mult == 2:
+ print(True)
+ else:
+ for i in falso:
+ if i != 1 and i != n:
+ print(f"É divisível por {i}")
+ print(False)
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_24_media_artmetica.py b/secao_03_estrutura_de_repeticao/ex_24_media_artmetica.py
index 9cf378f6d..111c02b5b 100644
--- a/secao_03_estrutura_de_repeticao/ex_24_media_artmetica.py
+++ b/secao_03_estrutura_de_repeticao/ex_24_media_artmetica.py
@@ -16,5 +16,37 @@
"""
+from statistics import mean
+
+
def calcular_media(*notas) -> float:
"""Escreva aqui em baixo a sua solução"""
+
+# A média aritmética é obtida através da soma de todos os valores dentro de conjuntos numéricos e,
+# posteriormente, dividindo todos os valores pelo número total de elementos deste conjunto.
+ # somas = 0
+ # media = somas/notas
+
+
+ # else:
+ # for i in notas:
+ # somas += notas
+ # if notas == ():
+ # print("'É necessária ao menos uma nota para calcular a média'")
+ # else:
+ # print(mean(notas))
+ if notas == ():
+ print("'É necessária ao menos uma nota para calcular a média'")
+
+ else:
+ soma = 0
+ for i in notas:
+ soma += i
+ media = soma / len(notas)
+
+ if media > 2:
+ print(media)
+ else:
+ print(f"{media:.0f}")
+
+
diff --git a/secao_03_estrutura_de_repeticao/ex_25_classificador_de_turma.py b/secao_03_estrutura_de_repeticao/ex_25_classificador_de_turma.py
index 9d56fcb6e..3f5134777 100644
--- a/secao_03_estrutura_de_repeticao/ex_25_classificador_de_turma.py
+++ b/secao_03_estrutura_de_repeticao/ex_25_classificador_de_turma.py
@@ -24,3 +24,21 @@
def classifcar_turma(*idades) -> str:
"""Escreva aqui em baixo a sua solução"""
+# nao sei o numero de idade
+# tirar média de idade da turma, com 3 opções
+ soma = 0
+ for i in idades:
+ soma += i
+ media = soma / len(idades)
+
+ if media <= 25:
+ print(f"'A turma é jovem, pois a média é de {media:.1f} anos'")
+ elif media > 25 and media < 60:
+ print(f"'A turma é adulta, pois a média é de {media:.1f} anos'")
+ else:
+ print(f"'A turma é idosa, pois a média é de {media:.1f} anos'")
+
+
+
+
+
diff --git a/secao_03_estrutura_de_repeticao/ex_26_urna_eletronica.py b/secao_03_estrutura_de_repeticao/ex_26_urna_eletronica.py
index 95d99b4f8..54d2fe2ad 100644
--- a/secao_03_estrutura_de_repeticao/ex_26_urna_eletronica.py
+++ b/secao_03_estrutura_de_repeticao/ex_26_urna_eletronica.py
@@ -34,5 +34,27 @@
"""
+from itertools import count
+
+
def calcular_votos(*votos):
"""Escreva aqui em baixo a sua solução"""
+ eleitores = 0
+ corrupto = 0
+ mentiroso = 0
+ roba_faz = 0
+ for i in votos:
+ # eleitores += 1
+ if i == 'corrupto':
+ corrupto += 1
+ elif i == 'mentiroso':
+ mentiroso += 1
+ else:
+ roba_faz += 1
+ print(f"Votantes: {len(votos)}")
+ print(f"Votos no candidato corrupto: {votos.count('corrupto')}")
+ print(f"Votos no candidato mentiroso: {mentiroso}")
+ print(f"Votos no candidato rouba, mas faz: {roba_faz}")
+
+
+
\ No newline at end of file
diff --git a/secao_03_estrutura_de_repeticao/ex_27_alunos_por_turma.py b/secao_03_estrutura_de_repeticao/ex_27_alunos_por_turma.py
index af39440e3..c4a60b1d9 100644
--- a/secao_03_estrutura_de_repeticao/ex_27_alunos_por_turma.py
+++ b/secao_03_estrutura_de_repeticao/ex_27_alunos_por_turma.py
@@ -36,3 +36,28 @@
def calcular_media_de_alunos_por_turma():
"""Escreva aqui em baixo a sua solução"""
+ turmas = int(input("digite a quantidade de turmas: "))
+ soma = 0
+ quantidade_alunos = 0
+ print(f'Número de turmas: {turmas}')
+ for i in range(turmas):
+ quantidade_alunos = int(input("digite: "))
+ while quantidade_alunos < 1 or quantidade_alunos > 40:
+ print(f"Uma turma deve ter de 1 a 40 alunos, não é possível ter {quantidade_alunos} alunos")
+ quantidade_alunos = int(input("digite: "))
+ else:
+ soma += quantidade_alunos
+ media = soma / turmas
+ print(f'Média de alunos por turma: {media:.0f}')
+
+ # while True:
+ # alunos = int(input("digite a quantidade de alunos: "))
+ # if alunos < 1 or alunos > 40:
+ # print(f'Uma turma deve ter de 1 a 40 alunos, não é possível ter {alunos} alunos')
+ # else:
+ # soma += alunos
+ # quantidades += 1
+ # break
+ # media = soma / quantidades
+ # print(f'Número de turmas: {turmas}')
+ # print(f'Média de alunos por turma: {media:.0f}')
\ No newline at end of file
From e1a6c1de4403e684a60bf1c030cfc7924afb2a47 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Thu, 23 Jun 2022 11:17:04 -0300
Subject: [PATCH 45/47] Doctest Ex. 04 - sec. 06
---
.../ex_4_nome_vertical_escada.py | 50 +++++++++++++++++++
1 file changed, 50 insertions(+)
create mode 100644 secao_06_exercicios_strings/ex_4_nome_vertical_escada.py
diff --git a/secao_06_exercicios_strings/ex_4_nome_vertical_escada.py b/secao_06_exercicios_strings/ex_4_nome_vertical_escada.py
new file mode 100644
index 000000000..d28c4f831
--- /dev/null
+++ b/secao_06_exercicios_strings/ex_4_nome_vertical_escada.py
@@ -0,0 +1,50 @@
+"""
+Exercício 04 da seção de exercícios com strings da Python Brasil:
+https://wiki.python.org.br/ExerciciosComStrings
+
+Nome na vertical em escada. Modifique o programa anterior de forma a mostrar o nome em formato de escada.
+
+ >>> nome_escada('Arnold_Schwarzenegger')
+ A
+ AR
+ ARN
+ ARNO
+ ARNOL
+ ARNOLD
+ ARNOLD_
+ ARNOLD_S
+ ARNOLD_SC
+ ARNOLD_SCH
+ ARNOLD_SCHW
+ ARNOLD_SCHWA
+ ARNOLD_SCHWAR
+ ARNOLD_SCHWARZ
+ ARNOLD_SCHWARZE
+ ARNOLD_SCHWARZEN
+ ARNOLD_SCHWARZENE
+ ARNOLD_SCHWARZENEG
+ ARNOLD_SCHWARZENEGG
+ ARNOLD_SCHWARZENEGGE
+ ARNOLD_SCHWARZENEGGER
+
+ >>> nome_escada('gELO')
+ G
+ GE
+ GEL
+ GELO
+
+ >>> nome_escada('HeISenBErG')
+ H
+ HE
+ HEI
+ HEIS
+ HEISE
+ HEISEN
+ HEISENB
+ HEISENBE
+ HEISENBER
+ HEISENBERG
+"""
+def nome_escada(nome:str):
+ """Escreva aqui em baixo a sua solução"""
+
\ No newline at end of file
From 887e0167f963d608b20fffca7b7b434d3ea928eb Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Thu, 23 Jun 2022 11:35:51 -0300
Subject: [PATCH 46/47] =?UTF-8?q?altera=C3=A7=C3=A3o=20no=20corretor=20de?=
=?UTF-8?q?=20exerc=C3=ADcios=20-=20secao=2006?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/workflows/corretor_de_exercicios_secao_06.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/.github/workflows/corretor_de_exercicios_secao_06.yml b/.github/workflows/corretor_de_exercicios_secao_06.yml
index 38572f5b8..a746433f0 100644
--- a/.github/workflows/corretor_de_exercicios_secao_06.yml
+++ b/.github/workflows/corretor_de_exercicios_secao_06.yml
@@ -23,6 +23,10 @@ jobs:
if: always()
run: |
python -m doctest -f secao_06_exercicios_strings/ex_02_inversor_maisculo.py
+ - name: Correção do Exercício 04 da seção de Strings
+ - if: always()
+ run: |
+ python -m doctest -f secao_06_exercicios_strings/ex_04_nome_vertical_escada.py
- name: Correção do Exercício 05 da seção de Strings
if: always()
run: |
From f56f5a688c155e98e0c37aba083966ec31f70f82 Mon Sep 17 00:00:00 2001
From: Marcos Ornellas <129.ornellas@gmail.com>
Date: Thu, 23 Jun 2022 11:41:45 -0300
Subject: [PATCH 47/47] =?UTF-8?q?Doctest=20Ex.=2004=20-=20sec.=2006=20-=20?=
=?UTF-8?q?altera=C3=A7=C3=A3o=20feita=20no=20corretor?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.github/workflows/corretor_de_exercicios_secao_06.yml | 2 +-
..._4_nome_vertical_escada.py => ex_4_nomes_vertical_escada.py} | 0
2 files changed, 1 insertion(+), 1 deletion(-)
rename secao_06_exercicios_strings/{ex_4_nome_vertical_escada.py => ex_4_nomes_vertical_escada.py} (100%)
diff --git a/.github/workflows/corretor_de_exercicios_secao_06.yml b/.github/workflows/corretor_de_exercicios_secao_06.yml
index a746433f0..7d6baa287 100644
--- a/.github/workflows/corretor_de_exercicios_secao_06.yml
+++ b/.github/workflows/corretor_de_exercicios_secao_06.yml
@@ -26,7 +26,7 @@ jobs:
- name: Correção do Exercício 04 da seção de Strings
- if: always()
run: |
- python -m doctest -f secao_06_exercicios_strings/ex_04_nome_vertical_escada.py
+ python -m doctest -f secao_06_exercicios_strings/ex_04_nomes_vertical_escada.py
- name: Correção do Exercício 05 da seção de Strings
if: always()
run: |
diff --git a/secao_06_exercicios_strings/ex_4_nome_vertical_escada.py b/secao_06_exercicios_strings/ex_4_nomes_vertical_escada.py
similarity index 100%
rename from secao_06_exercicios_strings/ex_4_nome_vertical_escada.py
rename to secao_06_exercicios_strings/ex_4_nomes_vertical_escada.py