Wątek przeniesiony 2014-06-09 09:32 z PHP przez dzek69.

Zamiana liczby dziesiętnej na binarną.

2014-06-06 17:13

Rejestracja: 5 lat temu

Ostatnio: 3 lata temu

Lokalizacja: Gdynia

0

Witam.
Programuję dziś skrypt, który ma wpisaną liczbę zmienić z dziesiętnej na binarną. Podobno proste zadanie. Jednak utknąłem.
Poniżej daje skrypt:

<?php
echo "</br>";
while($oblicz>1){
$reszta=$oblicz%2;
echo "$reszta";
}

?> 

Czego w nim brakuje, aby dobrze działał ? Zmienna jest tutaj liczbą, którą użytkownik wpisuje. Skrypt się nie ładuje na stronie. Trwa minutowe ładowanie i w końcu wyskakuje przekroczenie czasu oczekiwania.
Chcę, aby to było metodą algorytmu w PHP, dlatego też jeżeli komuś się nie chce poprawiać chętnie zobaczę algorytm :)


Pomagam przy: HTML, CSS, PHP i MySQL.
Tworzę skrypty na zamówienie.

Pozostało 580 znaków

lhp
2014-06-06 17:23
lhp

Rejestracja: 5 lat temu

Ostatnio: 2 godziny temu

1

widocznie udało Ci się stworzyć nieskończoną pętlę,

pytanie po co chcesz zamieniać liczbę na binarną, jeśli tylko po to żeby ją wyświetlić skorzystaj z sprintf(...), pamiętaj tylko że sprintf zwraca typ string

$num = 10;
$bin = sprintf('%b', $num);
echo $bin; //1010
echo "\n";
echo gettype($bin); //string

Pozostało 580 znaków

2014-06-06 17:25

Rejestracja: 7 lat temu

Ostatnio: 1 dzień temu

Lokalizacja: Dąbrowa Górnicza

1

petla while dziala dopoki zmienna oblicz jest wieksza od zera i tak tez robi, a ze zmienna oblicz sie nie zmienna to skrypt dziala dopoki nie zostaje ubity przez serwere limitu czasu zadania, co nastepuje w twoim przypadku.

Pozostało 580 znaków

2014-06-06 17:27

Rejestracja: 5 lat temu

Ostatnio: 3 lata temu

Lokalizacja: Gdynia

0

Ok, w takim razie jak zamknąć pętlę ? Możecie podrzucić domknięcie ?

Skrypt robię w celach ćwiczeniowych.


Pomagam przy: HTML, CSS, PHP i MySQL.
Tworzę skrypty na zamówienie.

Pozostało 580 znaków

2014-06-06 17:29

Rejestracja: 8 lat temu

Ostatnio: 3 lata temu

Lokalizacja: Kraków

Musisz dzielić $oblicz przez 2 z każdym obrotem pętli.

Pozostało 580 znaków

2014-06-06 17:30

Rejestracja: 5 lat temu

Ostatnio: 3 lata temu

Lokalizacja: Gdynia

0
Sopelek napisał(a):

Musisz dzielić $oblicz przez 2 z każdym obrotem pętli.

A mógłbyś podrzucić wzór skryptu ?


Pomagam przy: HTML, CSS, PHP i MySQL.
Tworzę skrypty na zamówienie.

Pozostało 580 znaków

2014-06-06 19:08
Moderator

Rejestracja: 12 lat temu

Ostatnio: 3 minuty temu

Lokalizacja: Wrocław

0
patwoj98 napisał(a):
Sopelek napisał(a):

Musisz dzielić $oblicz przez 2 z każdym obrotem pętli.

A mógłbyś podrzucić wzór skryptu ?

A którego słowa nie rozumiesz?


Pozostało 580 znaków

2014-06-06 19:10

Rejestracja: 5 lat temu

Ostatnio: 3 lata temu

Lokalizacja: Gdynia

0

Mam już to ogarnięte. Dzięki wszystkim za chęci. Temat do zamknięcia.


Pomagam przy: HTML, CSS, PHP i MySQL.
Tworzę skrypty na zamówienie.

Pozostało 580 znaków

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