Exercícios de apoio semanais 📝.
Os seguintes exercícios pertencem à disciplina de Algoritmos e Programação de Computadores I, ministrada no primeiro semestre de 2024.
Indíce 📌
Semana 1 ✅
Exercício 01 📝
Ler uma temperatura em graus Celsius e apresentá-la convertida em graus Fahrenheit.
"""
Ler uma temperatura em graus Celsius e apresentá-la convertida
em graus Fahrenheit. A fórmula de conversão é F ← C * 9 / 5 + 32,
sendo F a temperatura em Fahrenheit e C a temperatura em Celsius.
"""
def exerc_01(temperaturaC):
" Ler uma temperatura em graus Celsius e apresentá-la convertida em graus Fahrenheit."
print("Em Farenheight é",(temperaturaC * 9 / 5) + 32, "°F.")
return temperaturaC
exerc_01(0) # Saída => Em Farenheight é 32 °F
exerc_01(1) # Saída => Em Farenheight é 33,8 °F
exerc_01(10) # Saída => Em Farenheight é 50 °F
exerc_01(100) # Saída => Em Farenheight é 212 °F.
Exercício 02 📝
Organizador de listas.
"""
Primeiro, execute a atribuição palavras =
['taco', 'bola', 'celeiro', 'cesta', 'peteca']
Agora, escreva duas expressões Python que são avaliadas, respectivamente, como a
primeira e a última palavras em palavras, na ordem do dicionário.
"""
def exerc_2(*args):
"Organizador de listas."
print(sorted(*args))
return sorted(*args
exerc_2(['taco', 'bola', 'celeiro', 'cesta', 'peteca']) # Output => ['bola', 'celeiro', 'cesta', 'peteca', 'taco']
Exercício 03 📝
Calculadora de média escolar.
"""
Realizar a leitura dos valores de quatro notas escolares bimestrais de um aluno
representadas pelas variáveis N1, N2, N3 e N4. Calcular a média aritmética
(variável MD) desse aluno e apresentar a mensagem 'Aluno Aprovado com média' se a
média obtida for maior ou igual a 5; caso contrário, apresentar a mensagem 'Aluno
Reprovado com média'. Informar também, após a apresentação das mensagens, o valor
da média obtida pelo aluno.
"""
def exerc_03(nota_minima, *args):
"Calculadora de média escolar."
MD = (sum(args)) / len(args)
if (MD >= nota_minima):
print("Aluno Aprovado com média", MD)
else:
print("Aluno Reprovado com média", MD
exerc_03(6, 1, 1, 1, 1) # Output => Aluno Reprovado com média .0
exerc_03(6, 5, 5, 5, 5) # Output => Aluno Reprovado com média .0
exerc_03(6, 10, 10, 10, 10) # Output => Aluno Reprovado com média 1.0
exerc_03(6, 2, 7, 6, 4) # Output => Aluno Reprovado com média .75
exerc_03(6, 6, 6, 6, 6) # Output => Aluno Aprovado com média 6.0
Exercício 04 📝
Soma dos 100 primeiros números naturais.
# Desenvolver os diagramas de blocos e as codificações em português estruturado usando
# laço incondicional (para) do seguinte problema: Construir um programa que apresente a
# soma dos cem primeiros números naturais (1 + 2 + 3 +...+ 98 + 99 + 100).
def exerc_04():
"Soma dos 100 primeiros números naturais."
conta = 0
for i in range(101):
conta = conta + i
print("Exercício 4 .é", conta
exerc_04() # Output => Exercício 4 .é 5050
Semana 2 ✅
Exercício 05 📝
Diferentes expressões matemáticas.
"""
Escreva expressões algébricas Python correspondentes aos seguintes comandos:
a) A soma dos 5 primeiros inteiros positivos.
b) A idade média de Sara (idade 23), Mark (idade 19) e Fátima (idade 31).
c) O número de vezes que 73 cabe em 403.
d) O resto de quando 403 é dividido por 73.
e) 2 à 10ª potência.
f) O valor absoluto da distância entre a altura de Sara (54 polegadas) e a altura de Mark (57 polegadas).
g) O menor preço entre os seguintes preços: R$ 34,99, R$ 29,95 e R$ 31,50.
"""
# a)
print("A soma dos 5 primeiros inteiros positivos é",sum([1,2,3,4,5]))
# Output => 15
# b
def exerc_05_b(*args):
print('(float) A idade média deles é', sum(args) / len(args))
print('(int) A idade média deles é', sum(args) // len(ars))
exerc_05_b(23,19,31)
# Output => 24.333333333333332
# Output => 24
# c)
print("(float) O número de vezes que 73 cabe em 403", 403 / 73)
print("(int) O número de vezes que 73 cabe em 403", 403 // 73)
# Output => 5.52054794520548
# Output => 5
# d)
print("O resto de quando 403 é dividido por 73.", 403 % 73)
# Output => 38
# e)
print("2 à 10ª potência.", 2**10)
# Output => 1024
# f)
print("O valor absoluto da distância entre as alturas",abs(54 - 57))
# Output => 3
# g)
print("O menor preço entre os preços é", min([34.99, 29.95, 31.50]))
# Output => 29.95
Exercício 06 📝
Função comparativa.
"""
Traduza os comandos a seguir para expressões Booleanas em Python e avalie-as:
A soma de 2 e 2 é menor que 4.
O valor de 7 // 3 é igual a 1 + 1.
A soma de 3 ao quadrado e 4 ao quadrado é igual a 25.
A soma de 2, 4 e 6 é maior que 12.
1387 é divisível por 19.
31 é par. (Dica: o que o resto lhe diz quando você divide por 2?)
O preço mais baixo dentre R$ 34,99, R$ 29,95 e R$ 31,50 é menor que R$ 30,00.*
"""
def exerc_06(a, b, c):
"Função comparativa"
match c:
case ">=":
print(a >= b)
return a >= b
case "<=":
print(a <= b)
return a <= b
case ">":
print(a > b)
return a > b
case "<":
print(a < b)
return a < b
case "==":
print(a == b)
return a == b
case "!=":
print(a != b)
return a != b
# A soma de 2 e 2 é menor qu 4.
exerc_06(2+2, 4, "<")
# Output => False
# O valor de 7 // 3 é igual a 1 1.
exerc_06(7//3, 1+1, "==")
# Output => True
# A soma de 3 ao quadrado e 4 ao quadrado é igual 25.
exerc_06((3**2)+(4**2), 25, "==")
# Output => True
# A soma de 2, 4 e 6 é maior qu 12.
exerc_06(2+4+6, 12, ">")
# Output => False
# 1387 é divisível po 19.
exerc_06(1387%19, 0, "==")
# Output => True
# 31 par.
exerc_06(31%2, 0, "==")
# Output => False
# O preço mais baixo dentre R$ 34,99, R$ 29,95 e R$ 31,50 é menor que R$ 3,00.
exerc_06(min([34.99, 29.95, 31.50]), 30, "<")
# Output => True
Exercício 07 📝
Manipulação de strings.
"Manipulação de strings."
# Comece executando as instruções de atribuição:
s1 = 'ant'
s2 = 'bat'
s3 = 'cod'
#Escreva expressões Python usando s1, s2 e s3 e os operadores + e * a fim de avaliar para:
print(s1, s2, s3)
# Output => 'ant bat cod'
print((s1 + " ") *10)
# Output => ant ant ant ant ant ant ant ant ant ant'
print(s1, (s2 + " ")*2 + (s3+" ")*3)
# Output => 'ant bat bat cod cod cod'
print((s1 + " " + s2 + " ")*8)
# Output => 'ant bat ant bat ant bat ant bat ant bat ant bat ant bat'
print((s2*2+s3 + " ")*5)
# Output => 'batbatcod batbatcod batbatcod batbatcod batbatcod'
Exercício 08 📝
Localizado caracteres em uma string pelo seu índice.
"Localizado caracteres em uma string pelo seu índice."
# Comece executando a atribuição:
s = '0123456789'
#Agora, escreva expressões usando a string s e o operador de indexação que é avaliado como:
print(s[0])
#Output => 0
print(s[1])
#Output => 1
print(s[6])
#Output => 6
print(s[8])
#Output => 8
print(s[9])
#Output => 9
Semana 3 ✅
Exercício 09 📝
Utilização de índices em listas.
"Pegando de índices em listas."
# Primeiro, execute a atribuição
palavras = ['taco', 'bola', 'celeiro', 'cesta', 'peteca']
# Agora, escreva duas expressões Python que são avaliadas, respectivamente,
# como a primeiro e a última palavras em palavras, na ordem do dicionário.
palavras.sort()
# Output => ['bola', 'celeiro', 'cesta', 'peteca', 'taco']
print(f"{palavras[0]}, {palavras[-1]}")
# Output => bola,taco
Exercício 10 📝
Utilização de métodos de listas.
# Dada a lista de notas de trabalho de casa dos alunos
notas = [9, 7, 7, 10, 3, 9, 6, 6, 2]
# Escreva:
print("Uma expressão que avalia para o número de 7 notas.")
print(notas.count(7))
# Output => 2
print("Uma instrução que muda a última nota para 4.")
notas[-1] = 4
print(notas)
# Output => [9, 7, 7, 10, 3, 9, 6, 6, 4]
print("Uma expressão que avalia para a nota mais alta.")
print(max(notas))
# Output => [9, 7, 7, 10, 3, 9, 6, 6, 4]
print("Uma instrução que classifica as notas da lista.")
notas.sort()
print(notas)
# Output => [9, 7, 7, 10, 3, 9, 6, 6, 4]
print("Uma expressão que avalia para a média das notas.")
print(sum(notas) / len(notas))
print(sum(notas) // len(notas))
# Output => [9, 7, 7, 10, 3, 9, 6, 6, 4]
# Output => [9, 7, 7, 10, 3, 9, 6, 6, 4]
Exercício 11 📝
Ordem de importância de execução de expressões matemáticas.
#Em que ordem os operadores nas expressões a seguir são avaliados?
# 2 + 3 == 4 or 5 >= 5
print("Ordem: +, ==, >=, or")
# list[1] * -3 < -10 == 0
print("Ordem: *, <, ==")
# (list[1] * -3 < -10) in [0, True]
print("Ordem: *, <, in")
# 2 * 3**2
print("Ordem: **, *")
# 4 / 2 in [1, 2, 3]
print("Ordem: /, in")
Exercício 12 📝
Retornando tipo do dado.
# Qual é o tipo do objeto ao qual essas expressões são avaliadas?
print(type(False + False))
# Output => int
print(type(2 * 3**2.0))
# Output => float
print(type(4 // 2 + 4 % 20))
# Output => int
print(type(2 + 3 == 4 or 5 >= 5))
# Output => Boolean
Exercício 13 📝
Cálculos geométricos com visualização gráfica.
import math
import turtle
# Escreva expressões Python correspondentes ao seguinte:
# O comprimento da hipotenusa em um triângulo retângulo cujos dois outros lados
# têm comprimentos a e b
a = 4
b = 3
hip = math.sqrt(a**2 + b**2)
print(hip)
# Output => 5.0
# O valor da expressão que avalia se o comprimento da hipotenusa acima é 5
Resultado = hip > 5
print(Resultado)
# Output => False
# A área de um disco com raio a
area = (math.pi * a**2)
print(area)
# Output => 50.26548245743669
print(round(area,2))
# Output => 50.27
# O valor da expressão Booleana que verifica se um ponto com coordenadas x e y está
# dentro de um círculo com centro ( a, b ) e raio r
x = 50
y = 49
print(f"x, y = {x, y}")
# Output => x, y = (50, 49)
a = 0
b = 0
print(f"a, b = {a, b}")
# Output => a, b = (0, 0)
r = 50
resultado = ((a - x)**2 + (b - y)**2 > r**2)
print("(x,y) está fora círculo? Resposta:", resultado)
# Output => (x,y) está fora círculo? Resposta: True
# Visualmente
screen = turtle.Screen()
screen.setup(r*4, r*4)
circle_pen = turtle.Turtle(visible=False)
circle_pen.up()
circle_pen.setpos(0, -r)
circle_pen.down()
circle_pen.circle(radius=r)
xy_pos = turtle.Turtle(shape="circle")
xy_pos.color("#000", "#f00")
xy_pos.shapesize(0.2,0.2,0.2)
xy_pos.up()
xy_pos.setpos(x, y)
screen.mainloop()
Semana 4 ✅
Exercício 14 📝
Média entre dois números.
# Defina, a função média(), que aceita dois
# números como entrada e retorna a média dos números. Um exemplo de uso é:
# >>> average(2, 3.5)
def average(a=int, b=int):
"Função que retorna média entre dois valores a e b"
try:
return (a + b) / 2
except:
raise ValueError("Valor não inteiro")
finally:
print((a + b) / 2)
average(10,10)
# Output => 10.0
average(10, 4)
# Output => 7.0
average(4, 5)
# Output => 4.5
average(8, 10)
# Output => 9.0
Exercício 15 📝
Perímetro de um determinado número.
import math
# Implemente a função perímetro(), que aceita, como entrada, o raio de um círculo
# (um número não negativo) e retorna o perímetro do círculo. Você deverá escrever sua
# implementação em um módulo chamado perímetro.py. Um exemplo de uso é:
def perimetro(raio=int):
if raio >= 0:
return 2 * math.pi * raio
else:
raise ValueError("Valor menor que zero, por favor insira um valor diferente")
print(perimetro(0))
# Output => 0.0
print(perimetro(1))
# Output => 6.283185307179586
print(perimetro(2))
# Output => 12.566370614359172
Exercício 16 📝
Filtra Números negativos em uma lista.
# Escreva a função negativos(), que aceita uma lista como entrada e exibe, um por
# linha, os valores negativos na lista. A função não deverá retornar nada.
# >>> negatives([4, 0, −1, −3, 6, −9])
def negativos(args):
"Retorna os elementos negativos em uma lista passada como paramêtro"
filtered = list(filter(lambda x: x < 0,args))
print(filtered)
return filtered
negativos([4, 0, -1, -3, 6, -9])
# Output => [-1, -3, -9]
Exercício 17 📝
Usa função Help em exercícios d.a semana 4.
"""
Help on function média in module __main__:
média(a=<class 'int'>, b=<class 'int'>)
Função que retorna média entre dois valores a e b
Help on function negativos in module __main__:
negativos(args)
Retorna os elementos negativos em uma lista passada como paramêtro
"""
import exerc_14
import exerc_16
help(exerc_14.average)
help(exerc_16.negativos)
Exercício 18 📝
Manipulação de items em uma lista.
# Suponha que uma lista não vazia time foi atribuída. Escreva uma instrução Python ou
# instruções que mapeiam o primeiro e último valor da lista. Assim, se a lista
# original for:
# >>> time = ["Ava", "Eleanor", "Clare", "Sarah"]
# então a lista resultante deverá ser:
# >>> time
# ["Sarah", "Eleanor", "Clare", "Ava"]
def exerc_18(args):
if len(args) > 1:
firstItem = args[0]
lastItem = args[-1]
args[0] = lastItem
args[-1] = firstItem
return args
else:
raise IndexError("Lista menor que 1.")
print(exerc_18([0,2,3,4,5,6,7]))
# Output => [7, 2, 3, 4, 5, 6, 0]
print(exerc_18(["Sarah", "Eleanor", "Clare", "Ava"]))
# Output => ['Ava', 'Eleanor', 'Clare', 'Sarah']
print(exerc_18([True,False,True,False]))
# Output => [False, False, True, True]
print(exerc_18([True,False]))
# Output => [False, True]
print(exerc_18([True]))
# Output => IndexError: Lista menor que 1.
Semana 5 ✅
Exercício 19 📝
Uso de condicionais para verificação se há ou não direito a pensão.
# Traduza estas instruções condicionais em instruções if do Python:
# Se idade é maior que 62, exiba 'Você pode obter benefícios de pensão'.
def exerc_19(idade=int):
if (idade > 62):
print("Você pode obter benefícios de pensão")
exerc_19(10)
exerc_19(20)
exerc_19(30)
exerc_19(40)
exerc_19(50)
exerc_19(60)
exerc_19(63)
# Output => Você pode obter benefícios de pensão
Exercício 20 📝
Verificação de Items em uma lista com if.
# Se o nome está na lista ['Musial', 'Aaraon', 'Williams', 'Gehrig', 'Ruth'],
# exiba 'Um dos 5 maiores jogadores de beisebol de todos os tempos!'.
def exerc_20(nome=str):
if (nome in ['Musial', 'Aaraon', 'Williams', 'Gehrig', 'Ruth']):
print('Um dos 5 maiores jogadores de beisebol de todos os tempos!')
exerc_20("Gabriel")
exerc_20("Rafael")
exerc_20("Simone")
exerc_20("Felipe")
exerc_20("Williams")
# Output => Um dos 5 maiores jogadores de beisebol de todos os tempos!
Exercício 21 📝
Verificação usando operadores lógicos.
# Se golpes é maior que 10 e defesas é 0, exiba 'Você está morto…'.
def Exercicio32c(golpes=int, defesas=int):
if (golpes > 10 and defesas == 0):
print("Você está morto")
Exercicio32c(9,1)
Exercicio32c(9,0)
Exercicio32c(10,1)
Exercicio32c(11,0)
Exercício 22 📝
Verificação de Items em um dict com if.
# Se pelo menos uma das variáveis booleanas norte, sul, leste e oeste for True,
# exiba 'Posso escapar.'.
def Exercicio32d(**pontos_cardeais):
if True in pontos_cardeais.values():
print("Posso escapar.")
Exercicio32d(norte=True,sul=True,leste=True,oeste=True)
Exercício 23 📝
Verificação de ano Bissexto.
"""
Traduza estas declarações em instruções if/else do Python:
Se ano é divisível por 4, exiba 'Pode ser um ano bissexto.'; caso contrário,
exiba 'Definitivamente não é um ano bissexto.'
"""
def exerc_23(ano=int):
if (ano % 4 == 0):
print("Pode ser um ano bissexto.")
else:
print("Definitivamente não é um ano bissexto.")
exerc_23(2013)
# Output => Definitivamente não é um ano bissexto.
exerc_23(1990)
# Output => Definitivamente não é um ano bissexto.
exerc_23(1994)
# Output => Definitivamente não é um ano bissexto.
exerc_23(2024)
# Output => Pode ser um ano bissexto.
exerc_23(2004)
# Output => Pode ser um ano bissexto.
exerc_23(2010)
# Output => Definitivamente não é um ano bissexto.
exerc_23(2008)
# Output => Pode ser um ano bissexto.
exerc_23(2003)
# Output => Definitivamente não é um ano bissexto.
Exercício 24 📝
Sistema básico de verificação de bilhetes de loteria.
import random
"""
Se a lista bilhete é igual à lista loteria, exiba 'Você ganhou!'; se não, exiba
'Melhor sorte da próxima vez…'.
"""
def Exercicio33b(lista=set):
lista_loteria = random.sample(range(1, 60), 6)
if (sorted(lista) == sorted(lista_loteria)):
print('Você ganhou!')
return True
else:
print('Melhor Sorte da Próxima vez')
return False
Exercicio33b([2,10,7,8,9,14])
Exercício 25 📝
Sistema básico de Login.
"""
Implemente um programa que comece pedindo ao usuário para digitar uma identificação
de login (ou seja, uma string). O programa, então, verifica se a identificação
informada pelo usuário está na lista ['joe', 'sue', ' hani', 'sophie' ] de usuários
válidos. Dependendo do resultado, uma mensagem apropriada deverá ser impressa. Não
importando o resultado, sua função deverá exibir 'Fim.' antes de terminar.
Aqui está um exemplo de um login bem-sucedido:
>>>
Login: joe
Você entrou!
Fim.
E aqui está um que não tem sucesso:
>>>
Login: john
Usuário desconhecido.
Fim.
"""
def exerc_25(user=str):
if (user in ['joe', 'sue', 'hani', 'sophie' ]):
print("Logado com Sucesso")
else:
print("Usuário desconhecido")
exerc_25(input("Login:"))
Exercício 26 📝
Sistema básico de verificação taxa no IMC.
"""
Implemente a função meuIMC(), que aceita como entrada a altura de uma pessoa
(em metros) e o peso (em quilos) e calcula o Índice de Massa Corporal (IMC)
dessa pessoa. A fórmula do IMC é:.
Sua função deverá exibir a string 'Abaixo do peso' se o imc < 18.5,
'Normal' se 18,5 <= imc < 25, e
'Sobrepeso' se imc >= 25.
>>> meuIMC(86, 1.90)
Normal
>>> meuIMC(63, 1.90)
Abaixo do peso
"""
def exerc_26(weight=int,height=float):
imc = weight/(height**2)
if (imc < 18.5):
print('Abaixo do peso')
elif (imc >= 18.5 and imc <= 25):
print('Normal')
else:
print('Sobrepeso')
exerc_26(68, 1.69)
# Output => Normal
Semana 6 ✅
Exercício 27 📝
Uso de Seleção de elementos em uma lista.
"""
Implemente um programa que solicite do usuário uma lista de palavras
(ou seja, strings) e depois exiba na tela, uma por linha, todas as strings de
quatro letras nessa lista.
Digite a lista de palavras: ['pare', 'desktop', 'tio', 'pote']
pare pote
"""
def exerc_27(lista):
return list(filter(lambda x: len(x) == 4, lista))
print(exerc_27(['pare', 'desktop', 'tio', 'pote']))
Exercício 28 📝
Exibição de sequências usando range 1.
"""
Implemente um programa que comece pedindo ao usuário para digitar uma identificação
de login (ou seja, uma string). O programa, então, verifica se a identificação
informada pelo usuário está na lista ['joe', 'sue', ' hani', 'sophie' ] de usuários
válidos. Dependendo do resultado, uma mensagem apropriada deverá ser impressa. Não
importando o resultado, sua função deverá exibir 'Fim.' antes de terminar.
Aqui está um exemplo de um login bem-sucedido:
Login: joe
Você entrou!
Fim.
E aqui está um que não tem sucesso:
Login: john
Usuário desconhecido.
Fim.
"""
def exerc_25(user=str):
if (user in ['joe', 'sue', 'hani', 'sophie' ]):
print("Logado com Sucesso")
else:
print("Usuário desconhecido")
exerc_25(input("Login:"))
Exercício 29 📝
Exibição de sequências usando range 2.
"""
Implemente a função meuIMC(), que aceita como entrada a altura de uma pessoa
(em metros) e o peso (em quilos) e calcula o Índice de Massa Corporal (IMC)
dessa pessoa. A fórmula do IMC é:.
Sua função deverá exibir a string 'Abaixo do peso' se o imc < 18.5,
'Normal' se 18,5 <= imc < 25, e
'Sobrepeso' se imc >= 25.
>>> meuIMC(86, 1.90)
Normal
>>> meuIMC(63, 1.90)
Abaixo do peso
"""
def exerc_26(weight=int,height=float):
imc = weight/(height**2)
if (imc < 18.5):
print('Abaixo do peso')
elif (imc >= 18.5 and imc <= 25):
print('Normal')
else:
print('Sobrepeso')
exerc_26(68, 1.69)
# Output => Normal
Semana 7 ✅
Soma entre duas listas Bidimensionais.
"""
Escreva um laço for que exiba a seguinte sequência de números, um por linha.
Inteiros de 3 até 12, inclusive este.
Inteiros de 0 até (mas não incluindo) 9, com um passo de 2 em vez do padrão 1
(isto é, 0, 2, 4, 6, 8).
Inteiros de 0 até (mas não incluindo) 24, com um passo de 3.
Inteiros de 3 até (mas não incluindo) 12, com um passo de 5.
"""
print("Inteiros de 3 até 12, inclusive este.")
for i in range(3,13):
print(i)
""" Output =>
Inteiros de 3 até 12, inclusive este.
3
4
5
6
7
8
9
10
11
12
"""
print("Inteiros de 0 até (mas não incluindo) 9, com um passo de 2 em vez do padrão 1")
for i in range(0,9,2):
print(i)
""" Output =>
Inteiros de 0 até (mas não incluindo) 9, com um passo de 2 em vez do padrão 1
0
2
4
6
8
"""
print("Inteiros de 0 até (mas não incluindo) 24, com um passo de 3.")
for i in range(0,24,3):
print(i)
""" Output =>
Inteiros de 0 até (mas não incluindo) 24, com um passo de 3.
0
3
6
9
12
15
18
21
"""
print("Inteiros de 3 até (mas não incluindo) 12, com um passo de 5.")
for i in range(3,12,5):
print(i)
"""
Inteiros de 3 até (mas não incluindo) 12, com um passo de 5.
3
8
"""
Exercício 30 📝
Soma entre duas listas Bidimensionais.
"""
Comece executando a atribuição:
s = '0123456789'
Agora, escreva expressões (usando s e o operador de indexação) que
sejam avaliadas como:
'234'
'78'
'1234567'
'0123'
'789'
"""
s = '0123456789'
print(s[2:5])
# Output => 234
print(s[7:8])
# Output => 78
print(s[1:8])
# Output => 1234567
print(s[0:4])
# Output => 0123
print(s[7:10])
# Output => 789
Exercício 31 📝
Soma entre duas listas Bidimensionais.
"""
Supondo que a variável previsão tenha recebido a string
'It will be a sunny day today'
escreva instruções Python correspondentes a estas atribuições:
A variável cont, a quantidade de ocorrências da string 'day' na string previsão.
A variável clima, o índice em que a substring 'sunny' começa.
A variável troca, uma cópia de previsão na qual cada ocorrência da substring
'sunny' é substituída por 'cloudy'.
"""
prevision = 'It will be a sunny day today'
count = prevision.count("day")
weather = prevision.index("sunny")
change = prevision.replace("sunny", "cloudy")
print(prevision)
# Output => It will be a sunny day today
print(count)
# Output => 2
print(weather)
# Output => 13
print(change)
# Output => It will be a cloudy day today
Exercício 32 📝
Soma entre duas listas Bidimensionais.
"""
Escreva uma função exerc_32() que aceita duas listas bidimensionais do mesmo
tamanho (ou seja, o mesmo número de linhas e colunas) como argumentos de entrada e
incrementa cada entrada na primeira lista com o valor da entrada correspondente
na segunda lista.
>>> t = [[4, 7, 2, 5], [5, 1, 9, 2], [8, 3, 6, 6]]
>>> s = [[0, 1, 2, 0], [0, 1, 1, 1], [0, 1, 0, 0]]
>>> exerc_32(t,s)
>>> for linha in t:
print(linha)
[4, 8, 4, 5]
[5, 2, 10, 3]
[8, 4, 6, 6]
"""
def exerc_32(lista1=list, lista2=list):
try:
if (len(lista1) == len(lista2)):
print(f"Lista 1: {lista1}")
print(f"Lista 2: {lista2}")
for i, rows in enumerate(lista1):
for j, cols in enumerate(rows):
lista1[i][j] += lista2[i][j]
print(f"Resultado: {lista1}")
except:
raise IndexError("Argumentos Inválidos")
# List 1
obj_1 = [[16, 64, 11, 38],[54, 41, 77, 2],[84, 55, 4, 88],[11, 80, 16, 48]]
obj_2 = [[36, 5, 43, 9],[48, 48, 96, 64],[85, 2, 16, 75],[91, 95, 22, 84]]
exerc_32(obj_1, obj_2)
"""
Lista 1: [[16, 64, 11, 38], [54, 41, 77, 2], [84, 55, 4, 88], [11, 80, 16, 48]]
Lista 2: [[36, 5, 43, 9], [48, 48, 96, 64], [85, 2, 16, 75], [91, 95, 22, 84]]
Resultado: [[52, 69, 54, 47], [102, 89, 173, 66], [169, 57, 20, 163], [102, 175, 38, 132]]
"""