consolidate all repos to one for archive
This commit is contained in:
51
semester_2/programiranje_2/primeri/Example27/main.cpp
Normal file
51
semester_2/programiranje_2/primeri/Example27/main.cpp
Normal file
@@ -0,0 +1,51 @@
|
||||
#include <iostream>
|
||||
|
||||
class DivideByZero {
|
||||
private:
|
||||
std::string message;
|
||||
public:
|
||||
DivideByZero() : message("ERROR: Division by zero") {
|
||||
}
|
||||
void print() {
|
||||
std::cout << message << std::endl;
|
||||
}
|
||||
};
|
||||
|
||||
//float divide(int numerator, int denominator) throw (DivideByZero) { //only DivideByZero exception is allowed
|
||||
//float divide(int numerator, int denominator) throw () { //no exceptions allowed
|
||||
float divide(int numerator, int denominator) { // all exceptions allowed
|
||||
if (denominator==0) throw DivideByZero();
|
||||
return (float)numerator/denominator;
|
||||
}
|
||||
|
||||
void first() {
|
||||
int num1=1, num2=0;
|
||||
try {
|
||||
float res=divide(num1, num2);
|
||||
std::cout << "Result = " << res << std::endl;
|
||||
} catch (DivideByZero e) {
|
||||
e.print();
|
||||
}
|
||||
}
|
||||
/**/
|
||||
/*
|
||||
void second() {
|
||||
int num1=1, num2=0;
|
||||
float res=divide(num1, num2);
|
||||
std::cout << "Result = " << res << std::endl;
|
||||
}
|
||||
|
||||
void first() {
|
||||
try {
|
||||
second();
|
||||
} catch (DivideByZero e) {
|
||||
e.print();
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
int main() {
|
||||
first();
|
||||
//second();
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user