Запретить ввод букв в программу - C (СИ)
Формулировка задачи:
Помогите срочно нада !!
#include <stdio.h> #include <math.h> int main() { float a,b; printf("a="); scanf("%f",&a); printf("b="); scanf("%f",&b); float z=a+b; printf("Z=%.5f\n",z); return 0; }
Как сделать коректность ввода?
тоесть? чтобыбуквеные вырожения вводить было нельзя
тоесть от (а-я) и от (a -z) иличтоб какоето окошка выскакивало типа нельзя ввести такие данные
Решение задачи: «Запретить ввод букв в программу»
textual
Листинг программы
#include <stdio.h> int main(void) { float f; while ( printf("Number: ") && scanf("%f", &f) != 1 ) { char c; while ( scanf("%c", &c) == 1 && c != '\n' ) ; printf("Wrong input!\n"); } printf("New value for Pi constant is %f\n", f); return 0; }
Объяснение кода листинга программы
В этом коде на языке C:
- Объявлена переменная типа float f для хранения числа.
- Используется цикл while для проверки ввода числа.
- Внутри цикла, после вывода сообщения
Number:
, происходит попытка прочитать число с помощью функции scanf в переменную f. - Если число введено некорректно, то с помощью функции scanf считывается символ до тех пор, пока не будет введен корректный символ.
- Если число введено корректно, то программа продолжает работу.
- После окончания цикла выводится сообщение
New value for Pi constant is ...
с новым значением числа Пи. - Возвращается 0, чтобы указать, что программа успешно завершилась. Список переменных:
- f — переменная типа float для хранения числа.
- c — переменная типа char для хранения считанного символа. Выводы:
- В цикле while происходит проверка ввода числа.
- Если число введено некорректно, то считывается символ до тех пор, пока не будет введен корректный символ.
- Если число введено корректно, то программа продолжает работу.
- После окончания цикла выводится сообщение
New value for Pi constant is ...
с новым значением числа Пи.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д