Bài tập C++ có giải: Bài tập xử lý ngoại lệ
Bài tập Xử lý ngoại lệ cho trường hợp chia cho số 0
Viết chương trình C++ nhập ba số a, b, c và thực hiện phép chia c/(a-b). Trong đó, viết code để xử lý trường hợp a-b=0.
Dưới đây là chương trình C++ để giải bài tập trên. Chúng ta sử dụng khối try-catch để xử lý ngoại lệ khi xảy ra tình huống chia cho số 0.
#include#include using namespace std;int main() { int a,b,c; float d; cout<<"Nhap gia tri cua a: "; cin>>a; cout<<"Nhap gia tri cua b: "; cin>>b; cout<<"Nhap gia tri cua c: "; cin>>c; try { if((a-b)!=0) { d=c/(a-b); cout<<"Ket qua la: "< Chạy chương trình C++ trên sẽ cho kết quả như hình sau:
1. Với trường hợp a-b là khác không, ta có kết quả tính toán bình thường:
2. Với trường hợp a-b là bằng không, ta có kết quả giống như:
Bài tập Xử lý ngoại lệ với nhiều khối catch
Dưới đây là chương trình C++ ví dụ cho trường hợp sử dụng nhiều khối catch. Chúng ta định nghĩa một hàm test chẳng hạn và sử dụng khối try với nhiều khối catch theo sau (với tình huống này là 2 khối catch) như sau:
Bên trong khối try, đầu tiên kiểm tra xem giá trị đó có lớn hơn 0 hay không.
Nếu giá trị đó lớn hơn 0, thì ném giá trị và bắt exception tương ứng.
Nếu không, ném ký tự và bắt exception tương ứng.
#include#include using namespace std;void test(int x) { try { if(x>0) throw x; else throw 'x'; } catch(int x) { cout<<"\nBat mot so nguyen va so nguyen do la: "< Chạy chương trình C++ trên sẽ cho kết quả như hình sau:
Bài học Bài tập C++ phổ biến tại hoconline.club:
Quảng cáoBài viết liên quan