From 635866791fe9d89e05640e1f2bf4e354557992ce Mon Sep 17 00:00:00 2001 From: zenite-serena Date: Wed, 30 Aug 2023 16:13:05 -0300 Subject: [PATCH] =?UTF-8?q?Exerc=C3=ADcios=20obrigat=C3=B3rios=20e=20extra?= =?UTF-8?q?s=20-=20Semana=2004?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- exercicios/para-casa/exercicio_obrig_1.py | 33 +++++ exercicios/para-casa/exercicio_obrig_2.py | 24 ++++ .../exercicios_extras_decisao_1a5.py | 115 ++++++++++++++++++ .../para-casa/exercicios_extras_listas_1a4.py | 49 ++++++++ exercicios/para-casa/rodando_codigo.py | 1 + 5 files changed, 222 insertions(+) create mode 100644 exercicios/para-casa/exercicio_obrig_1.py create mode 100644 exercicios/para-casa/exercicio_obrig_2.py create mode 100644 exercicios/para-casa/exercicios_extras_decisao_1a5.py create mode 100644 exercicios/para-casa/exercicios_extras_listas_1a4.py create mode 100644 exercicios/para-casa/rodando_codigo.py diff --git a/exercicios/para-casa/exercicio_obrig_1.py b/exercicios/para-casa/exercicio_obrig_1.py new file mode 100644 index 0000000..910ab41 --- /dev/null +++ b/exercicios/para-casa/exercicio_obrig_1.py @@ -0,0 +1,33 @@ + +# Desenvolva um programa que faça a tabuada de um número qualquer inteiro que será digitado pelo usuário, +# mas a tabuada não deve necessariamente iniciar em 1 e terminar em 10, +# o valor inicial e final devem ser informados também pelo usuário, conforme exemplo abaixo: + +## Montar a tabuada de: 5 +## Começar por: 4 +## Terminar em: 7 + +### Vou montar a tabuada de 5 começando em 4 e terminando em 7: +### 5 X 4 = 20 +### 5 X 5 = 25 +### 5 X 6 = 30 +### 5 X 7 = 35 + +### Obs: Você deve verificar se o usuário não digitou o final menor que o inicial. + +numero = int(input("Digite o número cuja tabuada você quer conhecer: ")) +comeco = int(input("Começando em: ")) +final = int(input("E terminando em: ")) +multiplicacao = 0 + +while final < comeco or numero < 0 or comeco < 0 or final < 0 or numero > 10 or final > 10 or comeco > 10: + print("Informe valores válidos de começo e de final. O programa só aceita números inteiros e positivos, de 1 a 10") + numero = int(input("Digite o número cuja tabuada você quer conhecer: ")) + comeco = int(input("Começando em: ")) + final = int(input("E terminando em: ")) +else: + while (numero*comeco) <= (numero * final): + print(numero, "X", comeco, "=", (numero*comeco)) + comeco += 1 + +print("Fim do programa") diff --git a/exercicios/para-casa/exercicio_obrig_2.py b/exercicios/para-casa/exercicio_obrig_2.py new file mode 100644 index 0000000..ed6d321 --- /dev/null +++ b/exercicios/para-casa/exercicio_obrig_2.py @@ -0,0 +1,24 @@ +# Faça um Programa que leia 20 números inteiros e armazene-os num vetor. +# Armazene os números pares no vetor PAR e os números IMPARES no vetor impar. Imprima os três vetores. + +lista = [int(input("Insira o primeiro valor: ")), int(input("Insira o segundo valor: ")), int(input("Insira o terceiro valor: ")), \ + int(input("Insira o quarto valor: ")), int(input("Insira o quinto valor: ")), \ + int(input("Insira o sexto valor: ")), int(input("Insira o sétimo valor: ")), int(input("Insira o oitavo valor: ")), \ + int(input("Insira o nono valor: ")), int(input("Insira o décimo valor: ")), \ + int(input("Insira o décimo primeiro valor: ")), int(input("Insira o décimo segundo valor: ")), int(input("Insira o décimo terceiro valor: ")), \ + int(input("Insira o décimo quarto valor: ")), int(input("Insira o décimo quinto valor: ")), \ + int(input("Insira o décimo sexto valor: ")), int(input("Insira o décimo sétimo valor: ")), int(input("Insira o décimo oitavo valor: ")), \ + int(input("Insira o décimo nono valor: ")), int(input("Insira o vigésimo valor: "))] + +numeros_pares = [] +numeros_impares = [] + +for numero in lista: + if numero % 2 == 0: + numeros_pares.append(numero) + else: numeros_impares.append(numero) + +print("Números pares: ", sorted(numeros_pares)) +print("Números ímpares: ", sorted(numeros_impares)) +print("Lista: ", sorted(lista)) + diff --git a/exercicios/para-casa/exercicios_extras_decisao_1a5.py b/exercicios/para-casa/exercicios_extras_decisao_1a5.py new file mode 100644 index 0000000..568062d --- /dev/null +++ b/exercicios/para-casa/exercicios_extras_decisao_1a5.py @@ -0,0 +1,115 @@ +# 1. Faça um programa que peça uma nota, entre zero e dez. +# Mostre uma mensagem caso o valor seja inválido +# e continue pedindo até que o usuário informe um valor válido. + +nota = float(input("Informe um valor entre zero e dez: ")) + +while nota < 0 or nota > 10: + print("O valor é inválido. Favor informar um valor válido.") + nota = float(input("Informe um valor entre zero e dez: ")) +else: print("A nota informada foi", nota, "Fim do programa.") + +# 2. Faça um programa que leia um nome de usuário e a sua senha e +# não aceite a senha igual ao nome do usuário, +# mostrando uma mensagem de erro e voltando a pedir as informações. + +nome = input("Informe o nome do usuário: ") +senha = input("Informe a senha: ") + +while nome == senha: + print("O nome do usuário e a senha não podem ser iguais. Por favor insira novamente as informações.") + nome = input("Informe o nome do usuário: ") + senha = input("Informe a senha: ") +else: print("A operação foi concluída com sucesso.") + +# 3. Faça um programa que leia e valide as seguintes informações: + +# Nome: maior que 3 caracteres; +# Idade: entre 0 e 150; +# Salário: maior que zero; +# Sexo: 'f', 'm' ou 'ni'; +# Estado Civil: 's', 'c', 'v', 'd'; + +nome = input("Informe o nome do usuário: ") + +while len(nome) <= 3: + print("Informe um nome com mais de 3 caracteres.") + nome = input("Informe o nome do usuário: ") +else: + idade = float(input("Informe a idade do usuário: ")) + while idade < 0 or idade > 150: + print("Informe uma idade válida.") + idade = float(input("Informe a idade do usuário: ")) + else: + salario = float(input("Informe o salário: ")) + while salario < 0: + print("Informe um salário válido.") + salario = float(input("Informe o salário: ")) + else: + sexo = str(input("Informe o sexo segundo a legenda: f - feminino, m - masculino: ")) + while sexo != 'f' and sexo != 'm': + print("Informe um sexo válido.") + sexo = str(input("Informe o sexo segundo a legenda: f - feminino, m - masculino: ")) + else: + estado_civil = input("Informe o estado civil segundo a legenda: s - solteiro(a), c - casado(a), v - viúvo(a), d - divorciado(a): ") + while estado_civil != "s" and estado_civil != "c" and estado_civil != "v" and estado_civil != "d": + print("Informe um estado civil válido") + estado_civil = input("Informe o estado civil segundo a legenda: s - solteiro(a), c - casado(a), v - viúvo(a), d - divorciado(a): ") + else: print("Fim do programa.") + +# 4. Supondo que a população de um país A seja da ordem de 80000 habitantes +# com uma taxa anual de crescimento de 3% +# e que a população de B seja 200000 habitantes +# com uma taxa de crescimento de 1.5%. +# Faça um programa que calcule e escreva o número de anos necessários +# para que a população do país A ultrapasse ou iguale a população do país B, mantidas as taxas de crescimento. + +pop_a = 80000 +pop_b = 200000 +taxa_a = 0.03 +taxa_b = 0.015 +ano = 0 + +while pop_a <= pop_b: + pop_a = (pop_a + pop_a * taxa_a) + pop_b = (pop_b + pop_b * taxa_b) + ano += 1 + +print("População de A superará a de B em", ano, "anos") + +# 5. Altere o programa anterior permitindo ao usuário +# informar as populações e as taxas de crescimento iniciais. +# Valide a entrada e permita repetir a operação. + +pop_a = float(input("Informe a população inicial de A: ")) +pop_b = float(input("Informe a população inicial de B: ")) +taxa_a = float(input("Informe a taxa de crescimento de A: ")) +taxa_b = float(input("Informe a taxa de crescimento de B: ")) +ano = 0 + +while taxa_a < 0 or taxa_a > 1 or taxa_b < 0 or taxa_b > 1: + print("Informe uma taxa válida, ou seja, uma porcentagem representada por um número entre 0 e 1") + taxa_a = float(input("Informe a taxa de crescimento de A: ")) + taxa_b = float(input("Informe a taxa de crescimento de B: ")) +else: + while taxa_a < taxa_b: + print("A taxa de crescimento A deve ser maior do que a de B") + taxa_a = float(input("Informe a taxa de crescimento de A: ")) + taxa_b = float(input("Informe a taxa de crescimento de B: ")) + else: + while pop_a < 0 or pop_b < 0: + print("Informe um valor positivo para população.") + pop_a = float(input("Informe a população inicial de A: ")) + pop_b = float(input("Informe a população inicial de B: ")) + else: + while pop_a > pop_b: + print("O valor de a deve ser menor do que o de b.") + pop_a = float(input("Informe a população inicial de A: ")) + pop_b = float(input("Informe a população inicial de B: ")) + else: + while pop_a <= pop_b: + pop_a = (pop_a + pop_a * taxa_a) + pop_b = (pop_b + pop_b * taxa_b) + ano += 1 + +print("População de A superará a de B em", ano, "anos") diff --git a/exercicios/para-casa/exercicios_extras_listas_1a4.py b/exercicios/para-casa/exercicios_extras_listas_1a4.py new file mode 100644 index 0000000..2f34212 --- /dev/null +++ b/exercicios/para-casa/exercicios_extras_listas_1a4.py @@ -0,0 +1,49 @@ +# 1. Faça um Programa que leia um vetor de 5 números inteiros e mostre-os. + +lista = [int(input("Insira o primeiro valor: ")), int(input("Insira o segundo valor: ")), int(input("Insira o terceiro valor: ")), int(input("Insira o quarto valor: ")), int(input("Insira o quinto valor: "))] + +print("Lista:", sorted(lista)) + +# 2. Faça um Programa que leia um vetor de 5 números reais e mostre-os na ordem inversa. + +lista = [float(input("Insira o primeiro valor: ")), float(input("Insira o segundo valor: ")), float(input("Insira o terceiro valor: ")), float(input("Insira o quarto valor: ")), float(input("Insira o quinto valor: "))] + +print("Lista:", sorted(lista, reverse = True)) +print("Lista:", list.reverse(sorted(lista))) + +# 3. Faça um Programa que leia 4 notas, mostre as notas e a média na tela. + +def calcula_media(notas): + soma_notas = 0 + for nota in notas.values(): + soma_notas = soma_notas + nota + return soma_notas/len(notas) + +notas = { + "Nota 1": float(input("Insira a primeira nota: ")), + "Nota 2": float(input("Insira a segunda nota: ")), + "Nota 3": float(input("Insira a terceira nota: ")), + "Nota 4": float(input("Insira a quarta nota: ")) + +} + +print(notas) + +print("A média é:", calcula_media(notas)) + +# 4. Faça um Programa que leia um vetor de 10 caracteres, e diga quantas consoantes foram lidas. Imprima as consoantes. + +lista = [str(input("Insira o primeiro caracter: ")), str(input("Insira o segundo caracter: ")), str(input("Insira o terceiro caracter: ")), \ + str(input("Insira o quarto caracter: ")), str(input("Insira o quinto caracter: ")), \ + str(input("Insira o sexto caracter: ")), str(input("Insira o sétimo caracter: ")), str(input("Insira o oitavo caracter: ")), \ + str(input("Insira o nono caracter: ")), str(input("Insira o caracter valor: "))] + +consoantes = [] + +for caracter in lista: + if caracter != "a" or caracter != "e" or caracter != "i" or caracter != "o" or caracter != "u": + consoantes.append(caracter) + +print("A lista", consoantes, "possui", len(consoantes), "consoantes") +print("Fim do programa") + diff --git a/exercicios/para-casa/rodando_codigo.py b/exercicios/para-casa/rodando_codigo.py new file mode 100644 index 0000000..7d32ebc --- /dev/null +++ b/exercicios/para-casa/rodando_codigo.py @@ -0,0 +1 @@ +#Arquivo para facilitar a testagem dos códigos \ No newline at end of file