jak sprawdzic czy dana wejsciowa jest liczba??po funkcji scanf... ze musze sprawdzic czy jest to cyfra jesli nie to koncze program, jesli jest to sobie cos tam obliczam
[C]czy dana wejściowa jest liczbą?
Rozpoczęty przez
czyzop1
, 29 10 2008 12:43
4 odpowiedzi w tym temacie
#1
Napisano 29 10 2008 - 12:43
#2
Napisano 31 10 2008 - 07:21
Dam ci może wskazówkę - dane wejściowe reprezentowane jako znak są typu char. Aby użyć takiej zmiennej jako liczbę, należy ją siłą przekonwertować na int. Jeśli konwersja odbywa się prawidłowo (znaczy się wynik można zapisać jako int), to dany znak jest cyfrą). Jeśli nie, musisz napisać warunek błędu.
#3
Napisano 31 10 2008 - 08:23
wystarczy sprawdzic czy char znajduje sie w odpowiednim przedziale tablicy kodow ASCII
char ch; ... if( ch>='0' && ch<='9' ) ...
#4
Napisano 05 11 2008 - 01:47
Możesz spróbować z istringstream i porównywać wejście z dwoma typami zmiennych (int, string) za pomocą operatora ekstrakcji (>>). Jednak to bardziej CPP. Nie mam dostępu do IDE aktualnie więc nie mam jak napisać przykładu, a pseudokod nie da tu za wiele. Google
Użytkownicy przeglądający ten temat: 2
0 użytkowników, 2 gości, 0 anonimowych