This is a problem of the missing number in python.
JavaScript
x
17
17
1
class Missing:
2
3
n = int(input())
4
arr = list(map(int,input().split(" ")))
5
6
def __init__(self,arr,n):
7
self.arr = arr
8
self.n = n
9
10
def MissingNumber(self):
11
self.res = self.n*(self.n+1)/2
12
self.sum_array = sum(self.arr)
13
return "Missing no. is ",self.res-self.sum_array
14
15
Obj = Missing()
16
Obj.MissingNumber()
17
I am getting this error. can anybody solve it?
JavaScript
1
4
1
Obj = Missing()
2
TypeError: __init__() missing 2 required positional arguments: 'arr'
3
and 'n'
4
Advertisement
Answer
you need put the input outside class,and assign it when you create instance by Obj = Missing(arr,n)
code:
JavaScript
1
15
15
1
class Missing:
2
def __init__(self,arr,n):
3
self.arr = arr
4
self.n = n
5
6
def MissingNumber(self):
7
self.res = self.n*(self.n+1)/2
8
self.sum_array = sum(self.arr)
9
return "Missing no. is ",self.res-self.sum_array
10
11
n = int(input())
12
arr = list(map(int,input().split(" ")))
13
Obj = Missing(arr,n)
14
print(Obj.MissingNumber())
15
result:
JavaScript
1
4
1
5
2
1 2 3 4 5
3
('Missing no. is ', 0.0)
4