Advertisement
Guest User

Untitled

a guest
Apr 26th, 2015
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.41 KB | None | 0 0
  1. #include <iostream>
  2. #include <locale>
  3. #include <stdio.h>
  4.  
  5. using namespace std;
  6. int main()
  7. {
  8. enum { min_val = -32767, max_val = 32767 };
  9. int A, B, C;
  10. char str[2]; // Будем вводить макс. один символ для проверки наличия лишнего
  11. printf("nВведите, пожалуйста, целое число A!n");
  12. for (;;) {
  13. int num = scanf(
  14. "%d" // Наше число. Будет введено 0 полей, если первый символ не-цифра
  15. "%1[^n]" // Проверяем что угодно кроме конца строки
  16. "%*[^n]", // Чистим ввод до n
  17. &A, // Сюда число
  18. str // Сюда проверку наличия чего-либо за числом
  19. );
  20.  
  21. if (num != 1) {
  22. printf("Ошибка,только целые числа!n");
  23. // Вот если первый символ был не-цифра -- то нужно дочистить до конца строки
  24. if (num == 0) scanf("%*[^n]");
  25. }
  26. else if (A < min_val || A > max_val) {
  27. printf("Число должно быть в диапазоне %d..%dn", min_val, max_val);
  28. }
  29. else {
  30. printf("Успех! A = %dn", A);
  31. break; // Из for(;;)
  32. }
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement