Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Konwersja
Forum PHP.pl > Forum > Przedszkole
patwoj98
Witam. Tworzę kalkulator DEC -> HEX.
Mam taki oto kod :

  1. $a=$oblicz;
  2. $b=16;
  3. while($a>0){
  4. $a%=$b;
  5. $s='';
  6. echo"$s";
  7.  
  8. }


jestem bardzo początkujący, więc moglibyście mnie naprowadzić czy coś tu jest dobre ? I co dalej bo sama pętla się nie kończy. Jak ją zamknąć, żeby nie wyskakiwał błąd za długie żądania ?
nospor
Petla ci sie nie konczy, bo za kazdym razem w petli robisz to samo i nie zmieniają sie dane warunkowe petli. Stad nieskonczonosc.
Za kazdym razem dzielisz $a prze $b i tyle.... nic sie nie zmienia w kolejnych obrotach petli.

Czemu robisz to na piechote? Dostales takie zadanie w szkole by to robic na piechote? Przeciez w php masz dostepne funkcje ktore robią to wszystko za Ciebie.
patwoj98
Właśnie takie zadanie mam i nie mogę się za nie zabrać. Szukam pomocy już kolejny raz smile.gif
nospor
Cytat
nie mogę się za nie zabrać
Naprawde nikt ci nie broni.

Cytat
Szukam pomocy już kolejny raz
No wlasnie widze. Ostatnio "walczyles" z systemem binarnym... o ile zrobienie rownie bezsensownego kodu co teraz a potem dostanie gotowca od innej osoby można nazwac "walczeniem"

Dostales podpowiedz. Sprobuj wkoncu trosze pomyslec samodzielnie, skoro to jest praca domowa
Xart
Więc może i ja spróbuję pomóc smile.gif
Ciężko będzie Ci zrobić bezpośrednio kalkulator z DEC -> HEX
Musisz zrobić to pośrednio tzn DEC->BIN->HEX tak będzie o wiele łatwiej

w 1 konwersji wykorzystujesz resztę z dzielenia liczby przez 2 aż do momentu kiedy w ostatnich wierszach pojawi się 0, 1
w 2 konwersji dzielisz liczbę binarną co cztery bity i obliczasz ich wartość a potem zapisujesz z tym, że jak wyjdzie np 10 to A itd...

Po zapisaniu w odpowiedniej kolejności masz gotową liczbę wink.gif

Musisz sam pomyśleć :]
redeemer
Cytat(Xart @ 25.06.2014, 21:15:40 ) *
Więc może i ja spróbuję pomóc smile.gif
Ciężko będzie Ci zrobić bezpośrednio kalkulator z DEC -> HEX
Musisz zrobić to pośrednio tzn DEC->BIN->HEX tak będzie o wiele łatwiej

w 1 konwersji wykorzystujesz resztę z dzielenia liczby przez 2 aż do momentu kiedy w ostatnich wierszach pojawi się 0, 1
w 2 konwersji dzielisz liczbę binarną co cztery bity i obliczasz ich wartość a potem zapisujesz z tym, że jak wyjdzie np 10 to A itd...

Po zapisaniu w odpowiedniej kolejności masz gotową liczbę wink.gif

Musisz sam pomyśleć :]

To wymyśliłeś ;-) Wystarczy zwykłe dzielenie i modulo (reszta z dzielenia), zupełnie tak jak opisałeś to w punkcie pierwszym.

Do autora: szukałeś w ogóle coś na ten temat w internecie? Jest mnóstwo materiałów na ten temat. Nawet w manualu PHP funkcji dechex napewno znajdziesz gotowce.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.