sim_ou_nao.py
(baixar,
mostrar)
incondicional.py
(baixar,
mostrar)
nomes = ['dário', 'elton', 'flavia']
# Primeiro nome da lista não é geraldo
if not nomes[0] == 'geraldo':
print('primeiro nome não é geraldo')
# O nome "helena" está na lista
if "helena" == nomes[0] or "helena" == nomes[1] or "helena" == nomes[2]:
print('o nome helena está na lista')
# Equivalente, mas mais enxuto: o operador "in"
if "helena" in nomes:
print('o nome helena está na lista')
# (ex. 41) Comece executando
# s = 'goodbye'
# Depois, escreva uma expressão Booleana que verifica se:
# O primeiro caractere da string s é 'g'
# O sétimo caractere de s é g
# Os dois primeiros caracteres de s são g e a
# O penúltimo caractere de s é x
# O caractere do meio de s é d
# O primeiro e último caracteres da string s são iguais
# Os 4 últimos caracteres da string s correspondem à string 'tion'
# A primeira letra da string é 'g' ou ela é 'f'
s[0] == 'g'
s[6] == 'g'
s[0] == 'g' and s[1] == 'a'
s[-1] == 'x'
s[len(s)//2] == 'd'
s[0] == s[-1]
s[-4] = 't' and s[-3] == 'i' and s[-2] == 'o' and s[-1] == 'n'
s[0] == 'g' or s[0] == 'f'
# Exercício 59
# 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, seu programa 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.
login = input("Login: ")
loginvalido = ['joe', 'sue', 'hani', 'sophie']
if login in loginvalido:
print("Você entrou!")
else:
print("Usuário desconhecido.\n")
print("Fim.")
# Faça um programa "lista de compras" que:
# 1. Receba um número n do usuário
# 2. Receba n palavras do usuário
# 3. Imprimia todas essas palavras separadas por uma vírgula
total = int(input("Quantos items tem a sua lista de compra? "))
n = total
l = ["", "", "", "", "", ""]
while n > 0:
l[n] = input("item: ")
n = n - 1
print(item1 + ", " + item2 + ", " + item3 + ", " + item4 + ", " + item5 + ", " + item6)
# ATENÇÃO: Essa solução NÃO é adequada. Porque? (para ver uma solução
# melhor, veja o arquivo while_2.py
#
#
# No entanto, essa solução poderia se tornar adequada se:
# - Usássemos multiplicação de listas para inicializar a variável l
# - Usássemos Um laço separado para imprimir os elementos da variável l.
# - Corrigíssemos a ordem em que a iteração acontece.
#
# Tente consertar!
# Faça um programa "lista de compras" que:
# 1. Receba um número n do usuário
# 2. Receba n palavras do usuário
# 3. Imprimia todas essas palavras separadas por uma vírgula
total = int(input("Quantos items tem a sua lista de compra? "))
n = total
lista = ""
while n > 0:
tmp = input("item: ")
if n == total: # Se for o início da lista,
lista = lista + tmp # adicione o item a ela, sem vírgula
else: # se não for o início da lista
lista = lista + ", " + tmp # adicione com vírgula
n = n - 1
print(lista)
lista_numeros.py
(baixar,
mostrar)
# (ex. 79)
# Escreva um laço for que exiba a seguinte sequência de números,
# um por linha.
# Inteiros de 1 até 10, inclusive este. OK
# Inteiros de 0 até 9, inclusive este. OK
# Inteiros de 3 até 12, inclusive este. OK
# 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). OK
# Inteiros de 0 até (mas não incluindo) 24, com um passo de 3.
# Inteiros de 29 até (incluindo) 3, com um passo de 5.
count = 0 # valor inicial
while count < 9: # valor limite
print(count)
count = count + 2 # passo (ou incremento)
# (Tente identificar qual dos items do exercícios estamos resolvendo aqui)
lista_palavras.py
(baixar,
mostrar)
# (ex. 78)
# Implemente um programa que solicita uma lista de palavras do usuário e
# depois exibe cada palavra na lista que não seja 'segredo'.
# >>>
# Digite lista de palavras: ['cia', 'segredo', 'mi6', 'isi', 'segredo']
# cia
# mi6
# isi
lista = ['cia', 'segredo', 'mi6', 'isi', 'segredo']
indice = 0
while indice < len(lista):
palavra = lista[indice]
if palavra != "segredo":
print(palavra)
indice = indice + 1
# (ex. 79)
# Escreva um laço for que exiba a seguinte sequência de números,
# um por linha.
# Inteiros de 1 até 10, inclusive este. OK
# Inteiros de 0 até 9, inclusive este. OK
# Inteiros de 3 até 12, inclusive este. OK
# 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). OK
# Inteiros de 0 até (mas não incluindo) 24, com um passo de 3.
# Inteiros de 29 até (incluindo) 3, com um passo de 5.
# count = 29 # inicial
# while count >= 3:
# print(count)
# count = count - 5 # incremento (passo)
# (ex. 78)
# Implemente um programa que solicita uma lista de palavras do usuário e
# depois exibe cada palavra na lista que não seja 'segredo'.
# >>>
# Digite lista de palavras: ['cia', 'segredo', 'mi6', 'isi', 'segredo']
# cia
# mi6
# isi
lista = ['cia', 'segredo', 'mi6', 'isi', 'segredo']
indice = 0
while indice < len(lista):
palavra = lista[indice]
if palavra != "segredo":
print(palavra)
indice = indice + 1
# for palavra in lista:
# if palavra != "segredo":
# print(palavra)
for <variavel> in <iteráveis>:
...
# (ex. 79)
# Implemente um programa que solicita uma lista de nomes de aluno do usuário e exiba aqueles nomes que começam com as letras de A até M.
# Escreva um programa que recebe um texto do
# usuário e guarda as
# palavras desse texto (isto é, substrings
# desse texto que não contenham
# espaços nem pontuação) numa lista.
# Ao final, imprime essa lista.
# texto = "Olá, eu sou o João"
# palavras = ["Olá", "eu", "sou", "o", "João"] # list
# palavra # str
palavras = []
palavra = ""
texto = input("Digite um texto: ")
for caractere in texto:
if (
caractere != " " and
caractere != "," and
caractere != "." and
):
# aglutina na variável palavra
palavra = palavra + caractere
else:
# Colocar palavra na lista palavras
if palavra != "":
palavras = palavras + [palavra]
palavra = ""
if palavra != "":
palavras = palavras + [palavra]
print(palavras)
fn_matematica.py
(baixar,
mostrar)
negativos.py
(baixar,
mostrar)
# Exercício 93 (FK7.3) - Vogais
# Escreva a função vogal que recebe um único caractere
# como parâmetro e devolve True se ele for uma vogal e False se for uma
# consoante.
def vogal(c):
if c in "aeiouAEIOUáÁéÉíÍóÓúÚ":
return True
else:
return False
print(3)
res = vogal("a")
print("resultado:", res)
# Exemplos de execução no shell de Python
# >>> vogal("a")
# True
# >>> vogal("b")
# False
# >>> vogal("E")
# True
# Os valores True e False devolvidos devem ser do tipo bool (booleanos), e não strings
# Dica: Lembre-se que para passar uma vogal como parâmetro ela precisa ser um texto, ou seja, precisa estar entre aspas.
# (ex. 79)
# Escreva um laço for que exiba a seguinte sequência de números,
# um por linha.
# Inteiros de 0 até 10, excluindo o 10
# Inteiros de 29 até (incluindo) 3, com um passo de 5.
# x = 0 # inicial
# while x < 5: # condição de parada
# print(alunos[x])
# x = x + 1 # passo
# equivalente:
# for x in range(3, 10, 2):
# print(x)
alunos = ['a', 'b', 'c']
for i in range(len(alunos)):
print(i, alunos[i])
perimetro.py
(baixar,
mostrar)
import math
# (a) Implemente a função perimetro_circulo, que aceita, como entrada, o raio de um
# círculo (um número não negativo) e retorna o perímetro do círculo.
# 2 pi r
# (b) Implemente a função perimetro_quadrado que aceita, como entrada, o lado
# de um quadrado, e retorna o perímetro do quadrado
# Seguindo a mesma lógica, implemente as seguintes funções:
#
# (c) area_circulo
# (d) area_quadrado
# (e) perimetro_retangulo
# (f) area_retangulo
# (g) perimetro_triangulo
# (h) area_triangulo_retangulo
# (i) area_triangulo # (desafio!)
def perimetro_circulo(r):
return r * 2 * math.pi
def perimetro_retangulo(a, b):
return 2*a + 2*b
def area_triangulo(a, b, c):
p = (a + b + c)/2
return math.sqrt(p * (p - a) * (p - b) * (p - c))
x = area_triangulo(3, 4, 5)
print(str(x) + " é igual a 6")
# print("Perímetro do círculo de raio 5:", perimetro_circulo(5))
# print("Perímetro do círculo de raio 1:", perimetro_circulo(1))
# print("Perímetro do círculo de raio 1/pi:", perimetro_circulo(1/math.pi))
# print("Perímetro do círculo de raio 5:", perimetro_circulo(5))
# print("---")
# print("Perímetro do retângulo de lados 5, 3:", perimetro_retangulo(5, 3))
# print("Perímetro do círculo de raio 2, 7:", perimetro_circulo(2, 7))
# Exercício 94
# Escreva um programa que recebe como entradas (utilize a função input) dois
# números inteiros correspondentes à largura e à altura de um retângulo,
# respectivamente. O programa deve imprimir, usando repetições encaixadas (laços
# aninhados), uma cadeia de caracteres que represente o retângulo informado com
# caracteres ‘#’ na saída.
import sum
import sorteia
resultado = sum.soma_elementos([11, 22, 33])
print("Os três primeiros múltiplos de 11 somados são:", resultado)
resultado = sum.soma_elementos([1, 3, 5, 7, 9])
print("Os 5 primeiros ímpares somados resultam", resultado)
musicas = ['Brejerio', "Sonoroso", "Pedacinhos", "Lamentos", "Vou vivendo"]
print("Proxima música:", sorteia.sorteia(musicas))
import random
# Para importar (ou vincular):
# import <nome do módulo (arquivo)>
# Para usar:
# <nome do módulo>.<nome da função/variável>
# Faça uma função que recebe uma lista de strings representando nomes
# de músicas, sorteia uma delas e a devolve.
# dica: use a função randint do módulo random randint é uma função que
# recebe dois inteiros e sorteia algum inteiro maior ou igual que o
# primeiro e menor ou igual que o segundo.
def sorteia(lista):
tamanho = len(lista)
i = random.randint(0, tamanho - 1) # sorteio
return lista[i]
# Defina uma função embaralha que recebe uma lista de músicas, e devolve
# uma lista com as músicas da lista recebida embaralhadas. Para isso,
# talvez seja útil usar o comando de deleção do python:
# >>> lista = ['a', 'b', 'c']
# >>> del lista[1]
# >>> lista
# ['a', 'c']
# Exercício 100 (FK9.2) - Soma dos elementos de uma lista
# Escreva a função soma_elementos que recebe como parâmetro uma lista
# com números inteiros e devolve um número inteiro correspondente à soma
# dos elementos da lista recebida.
def soma_elementos(lista):
resultado = 0
for el in lista:
# resultado = resultado + el
resultado += el
return resultado
# (veja o arquivo import.py para ver onde essa função foi utilizada)
Última modificação: 29-05-2023