From af1588e0caeebcac09230325ef9ec3afc8d2b89d Mon Sep 17 00:00:00 2001 From: CaroliisRibeiro Date: Wed, 20 Sep 2023 11:59:28 -0300 Subject: [PATCH 1/5] Atividade-casa-Calcular-Media --- .../calculadora-exercicio-segunda.py | 87 ++++++++++++++++++ exercicios/para-casa/calculo_media.py | 16 ++++ exercicios/para-casa/teste_ca.lculo_media.py | 91 +++++++++++++++++++ 3 files changed, 194 insertions(+) create mode 100644 exercicios/para-casa/calculadora-exercicio-segunda.py create mode 100644 exercicios/para-casa/calculo_media.py create mode 100644 exercicios/para-casa/teste_ca.lculo_media.py diff --git a/exercicios/para-casa/calculadora-exercicio-segunda.py b/exercicios/para-casa/calculadora-exercicio-segunda.py new file mode 100644 index 0000000..c5bd3c8 --- /dev/null +++ b/exercicios/para-casa/calculadora-exercicio-segunda.py @@ -0,0 +1,87 @@ + +## atividade casa fazer as operçãoe sfaltantes (bub, mult, div) +def soma(a,b): + return a + b + + +def sub(a,b): + return a - b + +def mult(a,b): + return a * b + + +def div(a,b): + if b == 0: + # Lidar com o caso de divisão por zero + return "indefinido" + return a / b + + +import unittest + + +class TestSoma(unittest.TestCase): + def test_soma_positivos(self): + self.assertEqual (soma(2,3), 5) + + def test_soma_negativos(self): + self.assertEqual (soma(-3,-3), -6) + + def test_soma_zeros(self): + self.assertEqual (soma(0,0), 0) + + def test_soma_positivos_negativos(self): + self.assertEqual (soma(-4,2),-2 ) ## assertEquel é um metodo da classe + + + + +class TestSub(unittest.TestCase): + def test_sub_positivos(self): + self.assertEqual (sub(3,2), 1) + + def test_sub_negativos(self): + self.assertEqual (sub(-3,-3), 0) + + def test_sub_zeros(self): + self.assertEqual (sub(0,0), 0) + + def test_sub_positivos_negativos(self): + self.assertEqual (sub(-4,2),-6 ) ## assertEquel é um metodo da classe + + +class TestMult(unittest.TestCase): + def test_mult_positivos(self): + self.assertEqual (mult(3,2), 6) + + def test_mult_negativos(self): + self.assertEqual (mult(-3,-3), 9) + + def test_mult_zeros(self): + self.assertEqual (mult(0,0), 0) + + def test_mult_positivos_negativos(self): + self.assertEqual (mult(-4,2),-8 ) ## assertEquel é um metodo da classe + + + +class TestDiv(unittest.TestCase): + def test_div_positivos(self): + self.assertEqual (div(4,2), 2) + + def test_div_negativos(self): + self.assertEqual (div(-6,-3), 2) + + def test_div_zeros(self): + self.assertEqual (div(0,0),"indefinido") + + def test_div_positivos_negativos(self): + self.assertEqual (div(-8,2),-4 ) + + + + +if __name__=='__main__': + unittest.main() + diff --git a/exercicios/para-casa/calculo_media.py b/exercicios/para-casa/calculo_media.py new file mode 100644 index 0000000..be2bedb --- /dev/null +++ b/exercicios/para-casa/calculo_media.py @@ -0,0 +1,16 @@ +"""def calcular_media(numeros): + if not numeros: + return None + return sum (numeros)/ len(numeros) +""" + +def calcular_media(numeros): + numeros_validos = [x for x in numeros if isinstance(x, (int, float))] + if not numeros_validos: + return None + return sum(numeros_validos) / len(numeros_validos) + + + + + \ No newline at end of file diff --git a/exercicios/para-casa/teste_ca.lculo_media.py b/exercicios/para-casa/teste_ca.lculo_media.py new file mode 100644 index 0000000..3371c36 --- /dev/null +++ b/exercicios/para-casa/teste_ca.lculo_media.py @@ -0,0 +1,91 @@ +"""Questão 1- + Testes hipotéticos para calcular Média: + 1- media da lista vazia - se a lista estivar vazia retorne 0 + 2 - media divisão por zero - se a soma da media der zero retorna uma media = 0 + 3 - numeros negativos - a soma dos numero negativa a média retorna uma media megativo + 4 - numeros positivos - a soma dos numeros positivos <= 10 retorna umamedia posiviva <=10 + 5 - numeros maiores que 10 - a soma dos numeros retorna uma media > 10 + 6 - numeros iguais - a soma dos numeros iguais retorna uma media = e ele mesmo + 7 - numeros positivos e negativos intercalados = a soma dos numeros retorna uma media negativo + 8 - numeros reais positivos - a somo dos numeros fracionariospositivos retorna uma media fracionaria positiva + 9 - um unico numero - o unico numero retorna uma media = a esse numero unico + 10 - valores não numeris - a soma dos valores não numericos retorna uma média nula(None) + para realizar esse ultimo modifiquei o função proposta aqui inicialmente + def calcular_media(numeros): + if not numeros: + return None + return sum (numeros)/ len(numeros) + """ + + +# Quetão 2 +import unittest +import math + +from calculo_media import calcular_media + + +class TestCalcularmedia(unittest.TestCase): + def test_media_lista_vazia(self): + resultado = calcular_media([]) + self.assertEqual(resultado,None) + + def test_media_divisao_por_zero(self): + resultado = calcular_media([0, 0, 0]) + self.assertEqual (resultado, 0) + + + def test_media_numero_negativo(self): + resultado = calcular_media([-2, -3, -1]) + self.assertEqual (resultado, -2.0) + + + def test_media_numero_positivo_menor_ou_igual_10 (self): + resultado = calcular_media([5, 9, 6, 4]) + self.assertEqual(resultado,6.0 ) + + + def test_media_numero_maior_que_10(self): + resultado = calcular_media([13, 15, 19,11,10]) + + self.assertGreater (resultado, 10) # verifica se a media é menor uq 10 + + + def test_media_numeros_iguais(self): + resultado = calcular_media([2,2,2,2,2]) + + self.assertEqual(resultado, 2.0) + + + def test_media_positivos_negativos_intercalados(self): + resultado = calcular_media([-3, 5, -9,1,-8]) + + self.assertLessEqual(resultado, -2.8) + + + def test_media_reais_positivos(self): + resultado = calcular_media([3.4, 5.8, 9.5,1.2,8.7]) + + self.assertEqual(resultado, 5.72) + + + def test_media_nota_unica(self): + resultado = calcular_media([3.4]) + + self.assertEqual(resultado, 3.4) + + + + def test_media_valores_nao_numericos(self): + resultado = calcular_media(['a', 'b', 'c','d','e']) + + self.assertIsNone(resultado, None) + + +if __name__ == '__main__': + unittest.main() + + + + + \ No newline at end of file From 0e8749f85e6a07688efa3414bb9a2c81d96c6057 Mon Sep 17 00:00:00 2001 From: CaroliisRibeiro Date: Wed, 20 Sep 2023 12:11:28 -0300 Subject: [PATCH 2/5] ativ-cal-Media --- exercicios/para-casa/calculo_media.py | 1 + 1 file changed, 1 insertion(+) diff --git a/exercicios/para-casa/calculo_media.py b/exercicios/para-casa/calculo_media.py index be2bedb..15fa3d6 100644 --- a/exercicios/para-casa/calculo_media.py +++ b/exercicios/para-casa/calculo_media.py @@ -11,6 +11,7 @@ def calcular_media(numeros): return sum(numeros_validos) / len(numeros_validos) + \ No newline at end of file From 1edc14bed55c811d77019bdb9ad41118f71d2528 Mon Sep 17 00:00:00 2001 From: CaroliisRibeiro Date: Wed, 20 Sep 2023 12:20:23 -0300 Subject: [PATCH 3/5] atividade-Calculadora-segunda-desbloqueada --- exercicios/para-casa/calculo_media.py | 17 ---- exercicios/para-casa/teste_ca.lculo_media.py | 91 -------------------- 2 files changed, 108 deletions(-) delete mode 100644 exercicios/para-casa/calculo_media.py delete mode 100644 exercicios/para-casa/teste_ca.lculo_media.py diff --git a/exercicios/para-casa/calculo_media.py b/exercicios/para-casa/calculo_media.py deleted file mode 100644 index 15fa3d6..0000000 --- a/exercicios/para-casa/calculo_media.py +++ /dev/null @@ -1,17 +0,0 @@ -"""def calcular_media(numeros): - if not numeros: - return None - return sum (numeros)/ len(numeros) -""" - -def calcular_media(numeros): - numeros_validos = [x for x in numeros if isinstance(x, (int, float))] - if not numeros_validos: - return None - return sum(numeros_validos) / len(numeros_validos) - - - - - - \ No newline at end of file diff --git a/exercicios/para-casa/teste_ca.lculo_media.py b/exercicios/para-casa/teste_ca.lculo_media.py deleted file mode 100644 index 3371c36..0000000 --- a/exercicios/para-casa/teste_ca.lculo_media.py +++ /dev/null @@ -1,91 +0,0 @@ -"""Questão 1- - Testes hipotéticos para calcular Média: - 1- media da lista vazia - se a lista estivar vazia retorne 0 - 2 - media divisão por zero - se a soma da media der zero retorna uma media = 0 - 3 - numeros negativos - a soma dos numero negativa a média retorna uma media megativo - 4 - numeros positivos - a soma dos numeros positivos <= 10 retorna umamedia posiviva <=10 - 5 - numeros maiores que 10 - a soma dos numeros retorna uma media > 10 - 6 - numeros iguais - a soma dos numeros iguais retorna uma media = e ele mesmo - 7 - numeros positivos e negativos intercalados = a soma dos numeros retorna uma media negativo - 8 - numeros reais positivos - a somo dos numeros fracionariospositivos retorna uma media fracionaria positiva - 9 - um unico numero - o unico numero retorna uma media = a esse numero unico - 10 - valores não numeris - a soma dos valores não numericos retorna uma média nula(None) - para realizar esse ultimo modifiquei o função proposta aqui inicialmente - def calcular_media(numeros): - if not numeros: - return None - return sum (numeros)/ len(numeros) - """ - - -# Quetão 2 -import unittest -import math - -from calculo_media import calcular_media - - -class TestCalcularmedia(unittest.TestCase): - def test_media_lista_vazia(self): - resultado = calcular_media([]) - self.assertEqual(resultado,None) - - def test_media_divisao_por_zero(self): - resultado = calcular_media([0, 0, 0]) - self.assertEqual (resultado, 0) - - - def test_media_numero_negativo(self): - resultado = calcular_media([-2, -3, -1]) - self.assertEqual (resultado, -2.0) - - - def test_media_numero_positivo_menor_ou_igual_10 (self): - resultado = calcular_media([5, 9, 6, 4]) - self.assertEqual(resultado,6.0 ) - - - def test_media_numero_maior_que_10(self): - resultado = calcular_media([13, 15, 19,11,10]) - - self.assertGreater (resultado, 10) # verifica se a media é menor uq 10 - - - def test_media_numeros_iguais(self): - resultado = calcular_media([2,2,2,2,2]) - - self.assertEqual(resultado, 2.0) - - - def test_media_positivos_negativos_intercalados(self): - resultado = calcular_media([-3, 5, -9,1,-8]) - - self.assertLessEqual(resultado, -2.8) - - - def test_media_reais_positivos(self): - resultado = calcular_media([3.4, 5.8, 9.5,1.2,8.7]) - - self.assertEqual(resultado, 5.72) - - - def test_media_nota_unica(self): - resultado = calcular_media([3.4]) - - self.assertEqual(resultado, 3.4) - - - - def test_media_valores_nao_numericos(self): - resultado = calcular_media(['a', 'b', 'c','d','e']) - - self.assertIsNone(resultado, None) - - -if __name__ == '__main__': - unittest.main() - - - - - \ No newline at end of file From 36857baf740688a9dc65432eff2c9da1fc47c830 Mon Sep 17 00:00:00 2001 From: CaroliisRibeiro Date: Wed, 20 Sep 2023 12:25:23 -0300 Subject: [PATCH 4/5] Atividade-Calc-Media --- exercicios/para-casa/calculo_media.py | 16 ++++ exercicios/para-casa/teste_ca.lculo_media.py | 91 ++++++++++++++++++++ 2 files changed, 107 insertions(+) create mode 100644 exercicios/para-casa/calculo_media.py create mode 100644 exercicios/para-casa/teste_ca.lculo_media.py diff --git a/exercicios/para-casa/calculo_media.py b/exercicios/para-casa/calculo_media.py new file mode 100644 index 0000000..be2bedb --- /dev/null +++ b/exercicios/para-casa/calculo_media.py @@ -0,0 +1,16 @@ +"""def calcular_media(numeros): + if not numeros: + return None + return sum (numeros)/ len(numeros) +""" + +def calcular_media(numeros): + numeros_validos = [x for x in numeros if isinstance(x, (int, float))] + if not numeros_validos: + return None + return sum(numeros_validos) / len(numeros_validos) + + + + + \ No newline at end of file diff --git a/exercicios/para-casa/teste_ca.lculo_media.py b/exercicios/para-casa/teste_ca.lculo_media.py new file mode 100644 index 0000000..3371c36 --- /dev/null +++ b/exercicios/para-casa/teste_ca.lculo_media.py @@ -0,0 +1,91 @@ +"""Questão 1- + Testes hipotéticos para calcular Média: + 1- media da lista vazia - se a lista estivar vazia retorne 0 + 2 - media divisão por zero - se a soma da media der zero retorna uma media = 0 + 3 - numeros negativos - a soma dos numero negativa a média retorna uma media megativo + 4 - numeros positivos - a soma dos numeros positivos <= 10 retorna umamedia posiviva <=10 + 5 - numeros maiores que 10 - a soma dos numeros retorna uma media > 10 + 6 - numeros iguais - a soma dos numeros iguais retorna uma media = e ele mesmo + 7 - numeros positivos e negativos intercalados = a soma dos numeros retorna uma media negativo + 8 - numeros reais positivos - a somo dos numeros fracionariospositivos retorna uma media fracionaria positiva + 9 - um unico numero - o unico numero retorna uma media = a esse numero unico + 10 - valores não numeris - a soma dos valores não numericos retorna uma média nula(None) + para realizar esse ultimo modifiquei o função proposta aqui inicialmente + def calcular_media(numeros): + if not numeros: + return None + return sum (numeros)/ len(numeros) + """ + + +# Quetão 2 +import unittest +import math + +from calculo_media import calcular_media + + +class TestCalcularmedia(unittest.TestCase): + def test_media_lista_vazia(self): + resultado = calcular_media([]) + self.assertEqual(resultado,None) + + def test_media_divisao_por_zero(self): + resultado = calcular_media([0, 0, 0]) + self.assertEqual (resultado, 0) + + + def test_media_numero_negativo(self): + resultado = calcular_media([-2, -3, -1]) + self.assertEqual (resultado, -2.0) + + + def test_media_numero_positivo_menor_ou_igual_10 (self): + resultado = calcular_media([5, 9, 6, 4]) + self.assertEqual(resultado,6.0 ) + + + def test_media_numero_maior_que_10(self): + resultado = calcular_media([13, 15, 19,11,10]) + + self.assertGreater (resultado, 10) # verifica se a media é menor uq 10 + + + def test_media_numeros_iguais(self): + resultado = calcular_media([2,2,2,2,2]) + + self.assertEqual(resultado, 2.0) + + + def test_media_positivos_negativos_intercalados(self): + resultado = calcular_media([-3, 5, -9,1,-8]) + + self.assertLessEqual(resultado, -2.8) + + + def test_media_reais_positivos(self): + resultado = calcular_media([3.4, 5.8, 9.5,1.2,8.7]) + + self.assertEqual(resultado, 5.72) + + + def test_media_nota_unica(self): + resultado = calcular_media([3.4]) + + self.assertEqual(resultado, 3.4) + + + + def test_media_valores_nao_numericos(self): + resultado = calcular_media(['a', 'b', 'c','d','e']) + + self.assertIsNone(resultado, None) + + +if __name__ == '__main__': + unittest.main() + + + + + \ No newline at end of file From b59292956920041dea8048f60885db08684fbfde Mon Sep 17 00:00:00 2001 From: CaroliisRibeiro Date: Wed, 20 Sep 2023 12:31:58 -0300 Subject: [PATCH 5/5] atividade-Calc-Media e Atividade-Segunda-desbloqueda --- exercicios/para-casa/calculadora-exercicio-segunda.py | 1 - 1 file changed, 1 deletion(-) diff --git a/exercicios/para-casa/calculadora-exercicio-segunda.py b/exercicios/para-casa/calculadora-exercicio-segunda.py index c5bd3c8..a16fe47 100644 --- a/exercicios/para-casa/calculadora-exercicio-segunda.py +++ b/exercicios/para-casa/calculadora-exercicio-segunda.py @@ -10,7 +10,6 @@ def sub(a,b): def mult(a,b): return a * b - def div(a,b): if b == 0: # Lidar com o caso de divisão por zero