-
Notifications
You must be signed in to change notification settings - Fork 0
/
Day17-More-Exceptions
35 lines (24 loc) · 1.04 KB
/
Day17-More-Exceptions
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
Problem:
Objective
Yesterday's challenge taught you to manage exceptional situations by using try and catch blocks. In today's challenge, you're going to practice throwing and propagating an exception. Check out the Tutorial tab for learning materials and an instructional video!
Task
Write a Calculator class with a single method: int power(int,int). The power method takes two integers, n and p, as parameters and
returns the integer result of np. If either n or p is negative, then the method must throw an exception with the message:
n and p should be non-negative.
Note: Do not use an access modifier (e.g.: public) in the declaration for your Calculator class.
Solution:
//Write your code here
class Calculator {
Calculator() {
}
void exceptional() throws IOException {
throw new IOException("n and p should be non-negative");
}
int power(int n, int p) throws IOException {
int potenziato = (int) (Math.pow(n, p));
if (n < 0 || p < 0) {
exceptional();
}
return potenziato;
}
}