GRY-Online.pl --> Archiwum Forum

problem z c++ - wyświetlanie liczb na "wyświetlaczu"

11.09.2004
15:07
[1]

Vein [ Sannin ]

problem z c++ - wyświetlanie liczb na "wyświetlaczu"

hmm chciałęm napisać programik który by wyświetlał liczbe używając plików bmp, ale by nie trzeba było robić 150 bitmap (od 0-149) chciałem by skłądał liczbe trzycyfrową z 3 bitmap, miałby do wyboru 10 (0-9) i wyświetlał... i tutaj zaczyna sie problem, jak to zrobić, jak oddzielić jedności dziesiątki i setki od siebie by wyszły to same cyfry... programik w c++...

11.09.2004
15:50
[2]

JackSmith [ ]

jeden ze sposobów (nie wiem czy najlepszy) to
krok 0: licznik składa się z 3 bitmap (zatem robisz tylko 10 obrazków od 0-9)
krok 1: piszesz funkcję ładującą odpowiednią bitmapę w zależności od przekazanej do tej fuknkcji wartości (od 0 do 9)
krok 2: traktujesz Twoją liczbę z licznika jako string (tablicę znaków) i ładujesz 3x napisaną wcześniej funkcję przekazując do niej odpowiedni parametr

na przykład (to niej jest kod w cpp) coś na kształt

$string = '123';
LoadLicznikBMP($string‹0›) LoadLicznikBMP($string‹1›) LoadLicznikBMP($string‹2›);


pozdr

12.09.2004
00:56
[3]

Vein [ Sannin ]

tyle to i ja sie domyslilem, ale chodzi tutaj JAKIEJ funkcji uzyć... porpostu nie ma mpojęcia... jeszcze za bardzo nie jstem w temacie by znac taka funkcje...

12.09.2004
02:05
[4]

JackSmith [ ]

;-) najepsza będzie funkcja .... którą sam napiszesz

a wewnątrz tej funkcji którą napiszesz, powinno znaleźć się:
- do wyboru bitmapy - chociażby case ewentualnie if
- a do ładowania samej bitmapy ..... - nie napisałeś co prawdza gdzie to będzie ładowane (WinForms, plik, html, console a może jeszcze gdzieś indziej) ale przypuszczam że bedzie to zwykłe windowsowe okno formularza, zatem najwygodniej posłużyć się API z MS - poniżej sznureczek do przykładu i wyjasnienia który wyszukał dla mnie google :-)


powodzenia

12.09.2004
09:53
[5]

Mały Miś [ Konsul ]

napisze ogólnie jak podzielić liczbe 3 cyfrową na C++ sam to będziesz musiał sobie przetłumaczyć

A -liczba 3 cyfrowa (przy większej ilości cyfr wzór trzeba rozbudować)
A1 -setki, A2 -dziesiątki, A3 -jedności
LICZBA.CAŁKOWITA to funkcja która obcina liczbę do liczby całkowitej, usuwając z niej jej część ułamkową

A1=LICZBA.CAŁKOWITA(A/100)
A2=LICZBA.CAŁKOWITA(A/10)-A1*10
A3=A-A1*100-A2*10

12.09.2004
15:13
[6]

Vein [ Sannin ]

jacksmith - neistety bedzie to okienko dosowe :P
Mały Miś - dzieki, nie pomyslalem by podzielićliczbe przez np 100 i usunąć ułamek :P ... hmm ale będzie problem jeżeli liczba będzie np mniejsza niż 100 ... wtedy będe musiał użyć funkcji if...

12.09.2004
19:51
[7]

Mały Miś [ Konsul ]


nie będzie żadnego problemu, jeśli liczba będzie mniejsz niż 100 po prostu pierwszą cyfrą będzie zero

© 2000-2021 GRY-OnLine S.A.