-
Notifications
You must be signed in to change notification settings - Fork 0
/
week 2
78 lines (66 loc) · 1.81 KB
/
week 2
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
# nptel-python
programming assignment solution
"""
Question 1
Write a function intreverse(n) that takes as input a positive integer n and returns the integer obtained by reversing the digits in n.
Here are some examples of how your function should work.
>>> intreverse(783)
387
>>> intreverse(242789)
987242
>>> intreverse(3)
3
"""
def intreverse(n):
x=0
while(n>0):
x=x*10+n%10
n//=10
return(x)
"""
Question 2
Write a function matched(s) that takes as input a string s and checks if the brackets "(" and ")" in s are matched: that is, every "(" has a matching ")" after it and every ")" has a matching "(" before it. Your function should ignore all other symbols that appear in s. Your function should return True if s has matched brackets and False if it does not.
Here are some examples to show how your function should work.
>>> matched("zb%78")
True
>>> matched("(7)(a")
False
>>> matched("a)*(?")
False
>>> matched("((jkl)78(A)&l(8(dd(FJI:),):)?)")
True
"""
def matched(s):
x=0
for i in s:
if i=='(':
x+=1
if i==')':
x-=1
if x<0:
return(False)
return(not(bool(x)))
"""
Question 3
Write a function sumprimes(l) that takes as input a list of integers l and retuns the sum of all the prime numbers in l.
Here are some examples to show how your function should work.
>>> sumprimes([3,3,1,13])
19
>>> sumprimes([2,4,6,9,11])
13
>>> sumprimes([-3,1,6])
0
"""
def sumprimes(l):
x=0
for i in l:
if i==2:
x+=2
if i>0:
if i>1:
for p in range(2,i):
if i%p==0:
break
if p==i-1:
x+=i
return(x)