[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Перевод из биты в килобайты
bob marley
Не много о себе,чтобы вам стала ясна причина создании эдакого кода :)
Мне 15лет,я учусь в 9классе...мы там замучились на информатике по 100500 раз каждый день разные числа из бита в килобайты переводить для решения задач вычисления скорости запроса,время выполнения запроса и тд..
Посмотреть как работает можно тут http://phpprog.hut2.ru/
А код вот он:
жду вашего мнения :)


<?php Error_Reporting(E_ALL & ~E_NOTICE);

if(isset($_POST['text']))
$pm = preg_match('/^[0-9]{1,}$/', $_POST['text']); /// Разрешить вводить только целые числа

if($pm == '1')
$return = ($_POST['text'] / 8) / 1024;

if($pm == '0')
$content = 'Вводить можно только целые числа';

?>
<html>
<
head>
<
title>В помощь!</title>
</
head>
<
body style="margin:0px;">
<
h3>Перевсти биты в килобайты:</h3>

<?php
if(isset($content))
echo $content;
?>

<form method="post" action="">
Бит:<input type="text" name="text"

<?php
if(isset($_POST['text']))
echo 'value="'.$_POST['text'].'"';
?>

>
<
input type="submit" value="Поехали">
</
form>
<
hr width="100%" color="black">
<?php
if(isset($return))
echo '<font color="gray"><i>Ответ:</i></font><h1><font color="red">'.$return.' килобайт</font></h1>';
?>

</body>
</
html>




Спустя 2 минуты, 2 секунды (31.01.2012 - 14:02) bob marley написал(а):
Кто не знает,чтобы проверить правильно ли работает скрипт:
чтобы перевести из бита в килобайты надо разделить то число на 8 получим байты и разделим на 1024 и получим килобайты! smile.gif

Спустя 13 минут, 43 секунды (31.01.2012 - 14:16) Invis1ble написал(а):
Цитата
<input type="text" name="text"

незакрытый тег упс, не понял сразу прикола )
Цитата
($_POST['text'] / 8) / 1024;

неправильно тоже протупил biggrin.gif
Цитата
$pm = preg_match('/^[0-9]{1,}$/', $_POST['text']);

регулярку можно убрать и юзать is_numeric() + round()
Цитата
Error_Reporting(E_ALL & ~E_NOTICE);

E_ALL
Цитата
    if(isset($_POST['text']))
        $pm = preg_match('/^[0-9]{1,}$/', $_POST['text']); /// Разрешить вводить только целые числа

        if($pm == '1')
            $return = ($_POST['text'] / 8) / 1024;

        if($pm == '0')
            $content = 'Вводить можно только целые числа';

блок if неправильно ограничен
Цитата
echo '<font color="gray"><i>Ответ:</i></font><h1><font color="red">'.$return.' килобайт</font></h1>';

font - устаревший тег

PS. А вообще конечно радует, что школьники чем-то полезным занимаются smile.gif

Спустя 2 минуты, 17 секунд (31.01.2012 - 14:18) sergeiss написал(а):
Код не смотрел и даже не вникал, думаю, что он работает совершенно корректно smile.gif Но вот это вот не понял " ...замучались по 100500 раз каждый день разные числа из бита в килобайты переводить...". Это что - основа информатики у вас там?

Спустя 2 минуты, 37 секунд (31.01.2012 - 14:21) bob marley написал(а):
sergeiss
ахах:)
нас на информатике такой фигне только и учат..
у нас училка молодая,она сама ещё учиться biggrin.gif

Спустя 2 минуты, 8 секунд (31.01.2012 - 14:23) Winston написал(а):
А теперь напиши конвертер для перевода чисел из/в разные системы счисления.
PS: только не спец. ф-ми, а свою напиши smile.gif

Спустя 3 минуты, 7 секунд (31.01.2012 - 14:26) bob marley написал(а):
Invis1ble
Error_Reporting(E_ALL & ~E_NOTICE);
здесь я поставил так потому,что у меня ошибка на переменные pm выдавалась,где сравнение..если регулярка не выполнялась..

мне писали что если условие одно то можно без {}

заместо FONT в CSS прописать?

P.S. Ну так smile.gif

Winston
ты чего?там мороки упасть можно будет..не по самому коду,а по форме..я не умею делать выпадающий список чтобы выбирали из чего во что конвертировать..а так вполне реально! smile.gif

Спустя 4 минуты, 6 секунд (31.01.2012 - 14:30) Winston написал(а):
Цитата (bob marley @ 31.01.2012 - 13:26)
здесь я поставил так потому,что у меня ошибка на переменные pm выдавалась,где сравнение..если регулярка не выполнялась

До регулярки определи переменную, как $pm = 0
Цитата (bob marley @ 31.01.2012 - 13:26)
мне писали что если условие одно то можно без {}

Можно.
Цитата (bob marley @ 31.01.2012 - 13:26)
заместо FONT в CSS прописать?

Вместо <font></font> пиши <span></span>
Цитата (bob marley @ 31.01.2012 - 13:26)
ты чего?там мороки упасть можно будет..не по самому коду,а по форме..я не умею делать выпадающий список чтобы выбирали из чего во что конвертировать..а так вполне реально!

Будет отличная практика, и повод научиться работать с селектом smile.gif

Спустя 1 минута, 41 секунда (31.01.2012 - 14:32) bob marley написал(а):
Winston
спасибо за подсказку про span и поставить изначально нуль!
работы с чем?с каким селектом?

Спустя 26 секунд (31.01.2012 - 14:32) Invis1ble написал(а):
Цитата
здесь я поставил так потому,что у меня ошибка на переменные pm выдавалась,где сравнение..если регулярка не выполнялась..

потому и ошибка, что if неправильно ограничен
никогда (в очень редких случаях это нужно, и то можно обойтись) не глуши ошибки

Спустя 2 минуты, 33 секунды (31.01.2012 - 14:35) Winston написал(а):
Цитата (bob marley @ 31.01.2012 - 13:32)
работы с чем?с каким селектом?

Спустя 16 секунд (31.01.2012 - 14:35) bob marley написал(а):
я написал с самого начала кода $pm=''; а то выбирается условие где $pm == '0'
и получается все ровно с E_ALL

Спустя 41 секунда (31.01.2012 - 14:36) bob marley написал(а):
Короче все ровно.

<?php Error_Reporting(E_ALL);$pm = '';

if(isset($_POST['text']))
$pm = preg_match('/^[0-9]{1,}$/', $_POST['text']); /// Разрешить вводить только целые числа

if($pm == '1')
$return = ($_POST['text'] / 8) / 1024;

if($pm == '0')
$content = 'Вводить можно только целые числа';

?>
<html>
<
head>
<
title>В помощь!</title>
</
head>
<
body style="margin:0px;">
<
h3>Перевсти биты в килобайты:</h3>

<?php
if(isset($content))
echo $content;
?>

<form method="post" action="">
Бит:<input type="text" name="text"

<?php
if(isset($_POST['text']))
echo 'value="'.$_POST['text'].'"';
?>

>
<
input type="submit" value="Поехали">
</
form>
<
hr width="100%" color="black">
<?php
if(isset($return))
echo '<font color="gray"><i>Ответ:</i></font><h1><font color="red">'.$return.' килобайт</font></h1>';
?>

</body>
</
html>



Спустя 51 секунда (31.01.2012 - 14:37) bob marley написал(а):
Winston
вот я сейчас сделаю и с тебе сто процентов плюс в карму потому,что ты меня надоумил!! wink.gif

Спустя 5 минут, 22 секунды (31.01.2012 - 14:42) Winston написал(а):
Цитата (bob marley @ 31.01.2012 - 13:37)
и с тебе сто процентов плюс в карму потому,что ты меня надоумил!!

Это с тебя за такую идею wink.gif

Спустя 3 минуты, 16 секунд (31.01.2012 - 14:45) Winston написал(а):
Достаточно так написать
if(isset($_POST['text']))
{
if(preg_match('/^[0-9]{1,}$/', $_POST['text'])) /// Разрешить вводить только целые числа
$return = ($_POST['text'] / 8) / 1024;
else
$content = 'Вводить можно только целые числа';
}
Цитата (bob marley @ 31.01.2012 - 13:00)
'1'

Цифры в апострофы брать не нужно.

Спустя 7 минут, 22 секунды (31.01.2012 - 14:53) bob marley написал(а):
Winston
набросал.только без формы..
биты в байты,килобайты,мегобайты

<?PHP ERROR_REPORTING(E_ALL);

FUNCTION BOBMARLEY($post, $select){
IF($select == 1)
RETURN $post / 8;
IF($select == 2)
RETURN $post / 8 / 1024;
IF($select == 3)
RETURN $post / 8 / 1024 / 1024;
}

ECHO BOBMARLEY(256000, 1).'байт<br>'; /// 256000 бит в байты
ECHO BOBMARLEY(256000, 2).'килобайт<br>'; /// 256000 бит в килобайты
ECHO BOBMARLEY(256000, 3).'мегобайт<br>'; /// 256000 бит в мегобайты
?>

Спустя 2 минуты, 16 секунд (31.01.2012 - 14:55) bob marley написал(а):
Winston
я в курсе:)
мне просто понравилось делать if-else с одним условием..ну без {} так красивше=Ъ

Спустя 2 минуты, 11 секунд (31.01.2012 - 14:57) Winston написал(а):
Свернутый текст
FUNCTION BOBMARLEY($post, $select){
IF($select == 1)
RETURN $post / 8;
ELSEIF($select == 2)
RETURN $post / 8 / 1024;
ELSE
RETURN
$post / 8 / 1024 / 1024;
}

ECHO BOBMARLEY(256000, 1).'байт<br>'; /// 256000 бит в байты
ECHO BOBMARLEY(256000, 2).'килобайт<br>'; /// 256000 бит в килобайты
ECHO BOBMARLEY(256000, 3).'мегобайт<br>'; /// 256000 бит в мегобайты

Спустя 3 минуты, 29 секунд (31.01.2012 - 15:00) bob marley написал(а):
Winston
А особой разницы не вижу!
Только то что из трех две!

Спустя 1 минута, 23 секунды (31.01.2012 - 15:02) bob marley написал(а):
<?PHP ERROR_REPORTING(E_ALL);

FUNCTION BOBMARLEY($post, $select){
IF($select == 1)
RETURN $post / 8;
IF($select == 2)
RETURN $post / 8 / 1024;
ELSE
RETURN
$post / 8 / 1024 / 1024;
}

ECHO BOBMARLEY(256000, 1).' байт<br>'; /// 256000 бит в байты
ECHO BOBMARLEY(256000, 2).' килобайт<br>'; /// 256000 бит в килобайты
ECHO BOBMARLEY(256000, 3).' мегобайт<br>'; /// 256000 бит в мегобайты
?>

Спустя 17 секунд (31.01.2012 - 15:02) redreem написал(а):
вот тебе более эргономичная "надоумка":

на экране 1 поле. вводится число - рядом выводится перевод во все системы сразу smile.gif

пользователь ведь заведомо знает в какой системе он хочет перевести число, просто пишет это число, а потом сразу смотрит нужную позицию в столбце переводов smile.gif

и не понятно зачем вообще сервак задействовать? smile.gif можно на JS написать и таскать файл с собой на флешке в случае отсутствия инета под рукой smile.gif

Спустя 10 минут, 52 секунды (31.01.2012 - 15:13) bob marley написал(а):
redreem
я не эгоист,я для одноклассников smile.gif

Спустя 4 минуты, 23 секунды (31.01.2012 - 15:17) redreem написал(а):
тем более smile.gif

Спустя 20 минут, 47 секунд (31.01.2012 - 15:38) sergeiss написал(а):
Следующий этап - сделать эту же штуковину с использованием аякса wink.gif Просто для практики. Очень будет полезно сосредоточиться не на алгоритме обработки, а на самом аяксе.

Спустя 1 час, 8 минут, 49 секунд (31.01.2012 - 16:47) bob marley написал(а):
Я пока учу php не хочу засорять голову ajax и тд..потом уже можно будет!

Спустя 1 час, 29 минут, 3 секунды (31.01.2012 - 18:16) sergeiss написал(а):
Я уже пришел домой и меня посетила одна мысль умная... Зачем аякс, зачем ПХП? Сделай это всё на JavaScript! Всё равно тебе придется с ним общаться, хотя бы по минимуму. Тут же просто нужна HTML страничка с небольшим JS кодом.

Считай, что это тебе задача для получения пятерки за четверть wink.gif

Спустя 1 час, 37 минут, 4 секунды (31.01.2012 - 19:53) bob marley написал(а):
sergeiss
а у меня и так халява biggrin.gif
я школе сайт делаю и мне ставят 5ки по тем предметам по которым директриса договорилась smile.gif

Спустя 54 минуты, 1 секунда (31.01.2012 - 20:47) Winston написал(а):
Цитата (bob marley @ 31.01.2012 - 18:53)
я школе сайт делаю и мне ставят 5ки по тем предметам по которым директриса договорилась

Почему у меня такого в свое время не было... sad.gif

Спустя 49 минут, 30 секунд (31.01.2012 - 21:37) bob marley написал(а):
Winston
biggrin.gif
не повезло.. cool.gif


_____________
伊戈尔
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.