-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Exercicios da lista de Funções (9 a 13)
- Loading branch information
Showing
6 changed files
with
139 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
''' | ||
10. Jogo de Craps. Faça um programa de implemente um jogo de Craps. | ||
O jogador lança um par de dados, obtendo um valor entre 2 e 12. | ||
Se, na primeira jogada, você tirar 7 ou 11, você um "natural" e ganhou. | ||
Se você tirar 2, 3 ou 12 na primeira jogada, isto é chamado de "craps" e | ||
você perdeu. Se, na primeira jogada, você fez um 4, 5, 6, 8, 9 ou 10, | ||
este é seu "Ponto". | ||
Seu objetivo agora é continuar jogando os dados até | ||
tirar este número novamente. | ||
Você perde, no entanto, se tirar um 7 antes de tirar este Ponto novamente. | ||
''' | ||
|
||
from random import randint | ||
|
||
def craps(): | ||
dado = randint(2,13) | ||
if dado == 7 or dado == 11: | ||
print('Você um natural e ganhou!') | ||
|
||
elif dado == 2 or dado == 3 or dado == 12: | ||
print('Craps você perdeu!') | ||
|
||
elif dado == 4 or dado == 5 or dado == 6 or dado == 8 or dado == 9 or dado ==10: | ||
|
||
numero = 0 | ||
while dado != numero: | ||
numero = randint(2,13) | ||
if numero == 7: | ||
print('Você perdeu!') | ||
break | ||
if numero != 7: | ||
print('Você ganhou!') | ||
|
||
craps() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
''' | ||
11. Data com mês por extenso. Construa uma função que receba uma data no | ||
formato DD/MM/AAAA e devolva uma string no formato D de mesPorExtenso de AAAA. | ||
Opcionalmente, valide a data e retorne NULL caso a data seja inválida. | ||
''' | ||
|
||
def data(data): | ||
dia = int(data[0:2]) | ||
mes = int(data[3:5]) | ||
ano = int(data[6::]) | ||
|
||
if dia < 1 or dia > 31 or mes > 12 or mes < 1: | ||
print('Data inválida') | ||
return 0 | ||
|
||
meses = ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'] | ||
|
||
novaData = str(dia) + ' de ' + meses[mes - 1] +' de ' + str(ano) | ||
return novaData | ||
print(data('10/12/2000')) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
''' | ||
12. Embaralha palavra. Construa uma função que receba uma string como | ||
parâmetro e devolva outra string com os carateres embaralhados. | ||
Por exemplo: se função receber a palavra python, pode retornar npthyo, | ||
ophtyn ou qualquer outra combinação possível, de forma aleatória. | ||
Padronize em sua função que todos os caracteres serão devolvidos em | ||
caixa alta ou caixa baixa, | ||
independentemente de como foram digitados. | ||
''' | ||
|
||
import random | ||
|
||
def embaralha(palavra): | ||
palavra = palavra.lower() | ||
|
||
embaralha = random.sample(palavra, len(palavra)) # String vira lista | ||
nova = ''.join(embaralha) # lista vira string | ||
|
||
return nova | ||
|
||
print(embaralha('TESTE')) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
''' | ||
13.Desenha moldura. Construa uma função que desenhe um retângulo usando | ||
os caracteres ‘+’ , ‘−’ e ‘| ‘. Esta função deve receber dois parâmetros, | ||
linhas e colunas, sendo que o valor por omissão é o valor mínimo igual a | ||
1 e o valor máximo é 20. Se valores fora da faixa forem informados, eles | ||
devem ser modificados para valores dentro da faixa de forma elegante | ||
''' | ||
|
||
def valor_por_omissao(valor): | ||
if valor=='': | ||
return int(1) | ||
else: | ||
return faixa_minima_maxima(int(valor)) | ||
|
||
def faixa_minima_maxima(valor): | ||
if valor<1: | ||
return 1 | ||
elif valor>20: | ||
return 20 | ||
else: | ||
return valor | ||
|
||
def cria_linha(linha): | ||
l='+' | ||
for x in range(linha): | ||
l+='-' | ||
l+='+' | ||
print (l) | ||
|
||
def cria_coluna(linha, coluna): | ||
for y in range(coluna): | ||
c='|' | ||
c+= ' '*linha | ||
c+='|' | ||
print (c) | ||
|
||
def desenha_moldura(linha, coluna): | ||
cria_linha(linha) | ||
cria_coluna(linha, coluna) | ||
cria_linha(linha) | ||
|
||
linha=input('Diga quantos +----+, entre 1 e 20: ') | ||
coluna=input('Diga quantos | |, entre 1 e 20: ') | ||
desenha_moldura(valor_por_omissao(linha), valor_por_omissao(coluna)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
''' | ||
8. Faça uma função que informe a quantidade de dígitos de um determinado | ||
número inteiro informado. | ||
''' | ||
|
||
def digitos(n): | ||
return len(str(n)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
''' | ||
9. Reverso do número. Faça uma função que retorne o reverso de um | ||
número inteiro informado. Por exemplo: 127 -> 721. | ||
''' | ||
|
||
def reverso(n): | ||
return str(n)[::-1] | ||
print(reverso(127)) |