Programming Assignment Week 3
Problem 1: remdup(l)
Define a Python function remdup(l) that takes a nonempty list of integers l and removes all duplicates in l, keeping only the first occurrence of each number. For instance:
>>> remdup([3,1,3,5])
[3, 1, 5]
>>> remdup([7,3,-1,-5])
[7, 3, -1, -5]
>>> remdup([3,5,7,5,3,7,10])
[3, 5, 7, 10]
Problem 2: sumsquare(l)
Write a Python function sumsquare(l) that takes a nonempty list of integers and returns a list [odd,even], where odd is the sum of squares all the odd numbers in l and even is the sum of squares of all the even numbers in l.
>>> sumsquare([1,3,5])
[35, 0]
>>> sumsquare([2,4,6])
[0, 56]
>>> sumsquare([-1,-2,3,7])
[59, 4]
Problem 3: transpose(m)
A two-dimensional matrix can be represented in Python row-wise, as a list of lists: each inner list represents one row of the matrix. For instance, the matrix:
1 2 3 4
5 6 7 8
would be represented as [[1, 2, 3, 4], [5, 6, 7, 8]].
The transpose of a matrix converts each row into a column. The transpose of the matrix above is:
1 5
2 6
3 7
4 8
which would be represented as [[1, 5], [2, 6], [3, 7], [4, 8]].
Write a Python function transpose(m) that takes as input a two-dimensional matrix m and returns the transpose of m. The argument m should remain undisturbed by the function.
Examples:
>>> transpose([[1,2,3],[4,5,6]])
[[1, 4], [2, 5], [3, 6]]
>>> transpose([[1],[2],[3]])
[[1, 2, 3]]
>>> transpose([[3]])
[[3]]
Programming Assignment Solutions
Python
def remdup(l):
L=[]
for ips in l:
if ips not in L:
L.append(ips)
return(L)
def sumsquare(l):
odd_sum=0
even_sum=0
for ats in l:
if ats%2!=0:
odd_sum+=ats*ats
else:
even_sum+=ats*ats
return([odd_sum,even_sum])
def transpose(m):
ans=list()
for ind in range(len(m[0])):
a=[]
for j in range(len(m)):
a.append(m[j][ind])
ans.append(a)
return(ans)
No comments:
Post a Comment