01/10/2018, 12:10

Thông báo lỗi khi nhập sai kiểu dữ liệu yêu cầu C++

Để có thông báo lỗi và bắt nhập lại khi người sử dụng nhập sai kiểu dữ liệu yêu cầu thì làm ntn ạ

VD:

float GiaSach;
do
	{
		cout<<"Moi Nhap Gia Sach:";
		cin>>GiaSach;
		if(...........) cout<<"Gia Sach Phai La So Moi Ban Nhap Lai:";
	}while(.......);

dấu … thì viết gì mong mọi người giúp em ạ

rogp10 viết 14:24 ngày 01/10/2018

Đoạn đó có thể cho infinite loop rồi break ra ngoài cho nó đẹp.

có, kiểm tra cin.fail() hay cin.good() sau khi nhập ví dụ cin >> x, trong đó x là int chẳng hạn. Nếu fail thì clear() và ignore() ký tự thừa. Có thể xài gộp khi nhập luôn: cin >> x trả về cin, nếu cin.good() thì cin >> x trả về cin bình thường, hiểu là true, còn ko thì bị set failbit hay badbit gì đó, coi như là false #include <iostream> #include <limits> //std::numeric_limits int main() { int x; std::cout << "Nhap x:\n"; while (!(std::cin >> x)) { //ktra input có đúng số nguyên ko …
Bài liên quan
0