-
Notifications
You must be signed in to change notification settings - Fork 76
/
Lista 11 Google Python Class.py
108 lines (93 loc) · 3.04 KB
/
Lista 11 Google Python Class.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#!/usr/bin/python -tt
# Copyright 2010 Google Inc.
# Licensed under the Apache License, Version 2.0
# https://www.apache.org/licenses/LICENSE-2.0
# Google's Python Class
# https://code.google.com/edu/languages/google-python-class/
# Exercícios básicos com strings
# A. donuts
# Para um inteiro n retorna uma string na forma 'Número de donuts: <n>'
# onde n é o valor passado como argumento.
# Caso n >= 10 devo retornar 'muitos' em lugar do número.
# donuts(5) returns 'Número de donuts: 5'
# donuts(23) returns 'Número de donuts: muitos'
def donuts(n):
return
# B. pontas
# Dada uma string s, retorna uma string com as duas primeiras e as duas
# últimas letras da string original s
# Assim 'palmeiras' retorna 'paas'
# No entanto, se a string tiver menos que 2 letras, retorna uma string vazia
def pontas(s):
return
# C. fixa_primeiro
# Dada uma string s, retorna uma string onde todas as ocorrências
# do primeiro caracter são trocados por '*', exceto para o primeiro
# Assim 'abacate' retorna 'ab*c*te'
# Dica: use s.replace(stra, strb)
def fixa_primeiro(s):
return
# D. mistura2
# Sejam duas strings a e b
# Retorno uma string '<a> <b>' separada por um espaço
# com as duas primeiras letras trocadas de cada string
# 'mix', pod' -> 'pox mid'
# 'dog', 'dinner' -> 'dig donner'
def mistura2(a, b):
return
# E. palindrome
# Verifique se uma string é palíndrome
# palindrome('asa') True
# palindrome('casa') False
def palindrome(s):
return
# F. busca
# Verifique quantas ocorrências de uma palavra há numa frase
# frase = 'ana e mariana gostam de banana'
# palavra = 'ana'
# busca ('ana e mariana gostam de banana', 'ana') == 4
def busca(frase, palavra):
return
# Provided simple test() function used in main() to print
# what each function returns vs. what it's supposed to return.
def test(obtido, esperado):
if obtido == esperado:
prefixo = ' Parabéns!'
else:
prefixo = ' Ainda não'
print ('%s obtido: %s esperado: %s'
% (prefixo, repr(obtido), repr(esperado)))
def main():
print ('donuts')
test(donuts(4), 'Número de donuts: 4')
test(donuts(9), 'Número de donuts: 9')
test(donuts(10), 'Número de donuts: muitos')
test(donuts(99), 'Número de donuts: muitos')
print ()
print ('pontas')
test(pontas('palmeiras'), 'paas')
test(pontas('algoritmos'), 'alos')
test(pontas('a'), '')
test(pontas('xyz'), 'xyyz')
print ()
print ('fixa_primeiro')
test(fixa_primeiro('babble'), 'ba**le')
test(fixa_primeiro('aardvark'), 'a*rdv*rk')
test(fixa_primeiro('google'), 'goo*le')
test(fixa_primeiro('donut'), 'donut')
print ()
print ('mistura2')
test(mistura2('mix', 'pod'), 'pox mid')
test(mistura2('dog', 'dinner'), 'dig donner')
test(mistura2('gnash', 'sport'), 'spash gnort')
test(mistura2('pezzy', 'firm'), 'fizzy perm')
print ()
print ('palindrome')
test(palindrome('asa'), True)
test(palindrome('casa'), False)
print ()
print ('busca')
test(busca('ana e mariana gostam de banana', 'ana'), 4)
test(busca('uma arara ou duas araras', 'ara'), 4)
if __name__ == '__main__':
main()