1
0

yesno.cpp 989 B

12345678910111213141516171819202122232425262728293031323334
  1. #include "testlib.h"
  2. #include <string>
  3. using namespace std;
  4. const string YES = "YES";
  5. const string NO = "NO";
  6. std::string upper(std::string s)
  7. {
  8. for (size_t i = 0; i < s.length(); i++)
  9. if ('a' <= s[i] && s[i] <= 'z')
  10. s[i] = s[i] - 'a' + 'A';
  11. return s;
  12. }
  13. int main(int argc, char * argv[])
  14. {
  15. setName((YES + " or " + NO + " (case insensetive)").c_str());
  16. registerTestlibCmd(argc, argv);
  17. std::string ja = upper(ans.readWord());
  18. std::string pa = upper(ouf.readWord());
  19. quitif(ja != YES && ja != NO, _fail, "%s or %s expected in answer, but %s found",
  20. YES.c_str(), NO.c_str(), __testlib_part(ja).c_str());
  21. quitif(pa != YES && pa != NO, _pe, "%s or %s expected, but %s found",
  22. YES.c_str(), NO.c_str(), __testlib_part(ja).c_str());
  23. quitif(ja != pa, _wa, "expected %s, found %s", __testlib_part(ja).c_str(), __testlib_part(pa).c_str());
  24. quitf(_ok, "answer is %s", ja.c_str());
  25. }