Odroznianie liter od liczb

0

Witam, pisze program zamieniający podane liczby na ich slowna interpretacje ( 1 - jeden 12 -dwanaście itd. ). Napotkalem jednak na problem tj po wpisaniu do programu jakiejkolwiek litery wypisuje mi nie to co bym chciał :D tzn "zero". być może mam jakiś blad w kodzie ale glowne pytanie moje jest czy istnieje jakies odróżnienie liter/znakow od liczb albo chociaż zalozenie dla samych liczb. z góry dziekuje za odp

0

Pod jakimi hasłami szukałeś w Google rozwiązania tego problemu?

0

Jedyne co to wlasnie odróżnianie liter od liczb bo inny pomysl na rozwiązanie tego problemu mi nie przychodzi do glowy a raczej nie mam wiedzy na temat tego czy sa inne sposoby, bo z tego co się rozgladalem to z odróżnieniem liter od liczb w c to skomplikowanie już trzeba podzialac a takie zadanie raczej nie powinno być trudne. Tak jak mowie wszystko ladnie zrobiłem wpisze liczbe to wypisuje słownie jedynie mam zagwostke jak zrobic kiedy wchodzi litera i ma wtedy wypisac np. ze to nie liczba.

tutaj na forum tez jest cos na ten temat napisane tj

int zmienna;
while(scanf("%d", &zmienna) != 1) //dopóki nie uda się wczytać
{
  //ew. komunikat błędu
  fflush(stdin);
}

z tym ze nie za bardzo ogarniam o co tutaj chodzi no i jak wrzuciłem to do swojego programu to nic nie zmienilo

ed
kombinuje cos z ascii i nie wiem czy to ma większy sens

int n;
char c;
c=58;
if (...) // tutaj chciałbym wpisac jakiś warunek który porownywal by czy n należy do przedzialu z ascii dla liczb, może while ?

takie cos jest w ogole możliwe ?

0

Tutaj masz kod programu rozpoznający czy to liczba czy litera.

#include <stdio.h>

int main(){
  char znak;
  scanf("%c",&znak);
  if(znak>=48&&znak<=57)
    printf("Podano liczbe");
  if(znak>=65&&znak<=90)
    printf("Podano wielka litere");
  if(znak>=97&&znak<=122)
    printf("Podano mala litere");
}
0

taki program to to easy jest ale chodzi mi o cos innego a nie z ascii, ale dzięki za odp :)

1

@greek96

my sie cieszymy ze mowisz o co chodzi i wiemy o co Tobie chodzi...

0

ehh no to wyjasnie jeszcze raz, wejście n z przedzialu 0 do 20000 wyjście: słownie wypisanie tej liczby. Zrobilem przypadki sobie ze tam nascie liczby od jedności tysieczne setki i dziesiątki, potem co się stanie jak wprowadzimy liczbe nie z przedzialu ALE pojawil się problem gdy proszac o liczbe wpiszemy do programu LITERE, nie wiem jaki warunek mogę dac ( bo pod warunek ze wejście jest z przedzialu 0 20000 nie działa dla liter ). Dlatego się pytam czy istnieje może jakas mozliwosc odróżniania liter od liczb co bym mogl dac jakiś warunek dac ze dla liter ma wypisywać wpisales litere etc.

1 użytkowników online, w tym zalogowanych: 0, gości: 1