Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Самый изврощенный(лучший) Hello World на РНР, Кто напишет самым извращенным способом? 
:(
    Опции темы
IZ@TOP
  Дата 13.11.2003, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес




САБЖ. Я тоже сюда выложу свой вариант.
Просьба писать код с коментариями.

Примечание:

Код меньше 100 строк в конкурсе не участвует biggrin.gif hehe.gif
Главная задача - вывести строку Hello World.
Используется все, как базы данных так и файловый ввод вывод.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
IZ@TOP
Дата 13.11.2003, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес




Извиняюсь за опечатку %)


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Alex101
Дата 13.11.2003, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник Клуба
Сообщений: 891
Регистрация: 8.4.2002
Где: Москва




А почему только на PHP?
Может и другие языки/системы можно использовать?


--------------------
С уважением, А. Фролов.
PM MAIL ICQ   Вверх
IZ@TOP
Дата 13.11.2003, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес




Ну давайте, просто изначально эту идею предложид Master в форуме по РНР ... хотя можно наверное и по всем, только тогда язык указывайте.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
MuToGeN
Дата 13.11.2003, 15:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва




мля.... уже полчаса в своем варианте этого Hello, world! багу ищу...


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
MuToGeN
Дата 13.11.2003, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва




Воть... cool.gif
Код
<?
$debug=false;

function dbg($string,$success){
   global $debug;
   if($debug){
       switch($success){
           case 1:
               echo "<font color=\"green\">";
               break;
           case 0:
               echo "<font color=\"red\">";
               break;
       }
       echo $string."</font><br />\n";
   }
}

class _char{
   var $asciiCode;
   var $char;
   
   function initFromChar($c){
       if($this->char==NULL){    
           dbg("<i>_char:</i> Initializing _char from character...",1);
       }else{
           dbg("<i>_char:</i> Reinitializing _char from character...",1);
       }
       if(strlen($c)!=1){
           dbg("<i>_char:</i> Failed to initialize: given parameter is not a character. Returning false.",0);
           return false;
       }
       $this->char=$c;
       $this->asciiCode=ord($c);
       dbg("<i>_char:</i> Initialized. Returning true.",1);
       return true;
   }
   
   function initFromAsciiCode($c){
       if($this->char==NULL){    
           dbg("<i>_char:</i> Initializing _char from ascii code...",1);
       }else{
           dbg("<i>_char:</i> Reinitializing _char from ascii code...",1);
       }
       if(!ereg("^[0-9]{1,}$",$c)){
           dbg("<i>_char:</i> Failed to initialize: given parameter is not a number. Returning false.",0);
           return false;
       }
       if($c>255||$c<0){
           dbg("<i>_char:</i> Failed to initialize: given number is out of range. Returning false.",0);
           return false;
       }
       $this->asciiCode=$c;
       $this->char=chr($c);
       dbg("<i>_char:</i> Initialized. Returning true.",1);
       return true;
   }
   
   function init($c,$type=NULL){
       if($this->char==NULL){    
           dbg("<i>_char:</i> Initializing _char...",1);
       }else{
           dbg("<i>_char:</i> Reinitializing _char...",1);
       }
       if($type==NULL){
           dbg("<i>_char:</i> Type not specified, default is character.",1);
           $type="char";
       }
       switch($type){
           case "char":
               dbg("<i>_char:</i> Will be initialized as character.",1);
               return $this->initFromChar($c);
           case "ascii":
               dbg("<i>_char:</i> Will be initialized as ascii code.",1);
               return $this->initFromAsciiCode($c);
           default:
               dbg("<i>_char:</i> Invalid type specified. Returning false.",0);
               return false;
       }
   }
   
   function getChar(){
       dbg("<i>_char:</i> getChar called...",1);
       if($this->char==NULL){
           dbg("<i>_char:</i> Instance not initialized. Returning false.",0);
           return false;
       }
       dbg("<i>_char:</i> Returning character.",1);
       return $this->char;
   }
   
   function _char(){
       $this->asciiCode=NULL;
       $this->char=NULL;
       dbg("<i>_char:</i> Instance of _char created.",1);
   }
}

class _string{
   var $lenght;
   var $string;
   
   function _string(){
       $this->lenght=NULL;
       $tihis->string=Array();
       dbg("<i>_string:</i> Instance of _string created.",1);
   }
   
   function appendChar($c){
       dbg("<i>_string:</i> Appending a character to _string instance...",1);
       $char=new _char;
       if(!$char->init($c)){
           dbg("<i>_string:</i> Initialization of _char instance failed. Returning false.",0);
           return false;
       }
       if($this->lenght==NULL){
           $this->lenght=0;
       }
       $this->string[$this->lenght]=$char;
       $this->lenght++;
       dbg("<i>_string:</i> Appended successfully. Returning true.",1);
       return true;
   }

   function loadString($s){
       dbg("<i>_string:</i> Loading string...",1);
       if($this->lenght!=0&&$this->lenght!=NULL){
           dbg("<i>_string:</i> Deleting previous string.",1);
           for($i=0;$i<$this->lenght;$i++){
               unset($this->string[$i]);
           }
       }
       for($i=0;$i<strlen($s);$i++){
           if(!$this->appendChar($s[$i])){
               dbg("<i>_string:</i> Failed to append character. Returning false.",0);
               return false;
           }
       }
       dbg("<i>_string:</i> String loaded. Returning true.",1);
       return true;
   }
   
   function printString(){
       dbg("<i>_string:</i> Printing the string...",1);
       if($this->lenght==NULL){
           dbg("<i>_string:</i> String not initialized. Returning false.",0);
           return false;
       }
       for($i=0;$i<$this->lenght;$i++){
           $c=$this->string[$i]->getChar();
           if($c===false){
               dbg("<i>_string:</i> Failed to read character. Returning false.",0);
               return false;
           }
           echo $c;
       }
       dbg("<i>_string:</i> String printed. Returning true.",1);
       return true;
   }
}

class _izvratNaTemuHelloWorld{
   var $hwString;
   
   function _izvratNaTemuHelloWorld(){
       dbg("<i>_izvratNaTemuHelloWorld:</i> Instance created.",1);
       $this->hwString=new _string;
   }
   
   function init($a){
       dbg("<i>_izvratNaTemuHelloWorld:</i> Initializing...",1);
       if(sizeof($a)==1){
           dbg("<i>_izvratNaTemuHelloWorld:</i> Given parameter is not an array. Returning false.",0);
           return false;
       }
       for($i=0;$i<sizeof($a);$i++){
           if($a[$i]-$i<0){
               $a[$i]=chr($a[$i]-$i+256);
           }else{
               $a[$i]=chr($a[$i]-$i);
           }
           $x=$a[$i].$x;
       }
       if(!$this->hwString->loadString($x)){
           dbg("<i>_izvratNaTemuHelloWorld:</i> Failed to load string. Returning false.",0);
           return false;
       }
       dbg("<i>_izvratNaTemuHelloWorld:</i> Initialized successfully. Returning true.",1);
       return true;
   }
   
   function printHelloWorld(){
       dbg("<i>_izvratNaTemuHelloWorld:</i> Attempting to print Hello World...",1);
       if(!$this->hwString->printString()){
           dbg("<i>_izvratNaTemuHelloWorld:</i> Failed to print string. Returning false",0);
           return false;
       }
       dbg("<i>_izvratNaTemuHelloWorld:</i> Hello World printed sucessfully. Returning true.",1);
       return true;
   }
}
$hw=new _izvratNaTemuHelloWorld;
$helloWorldString=Array(33,101,110,117,115,92,38,118,116,117,111,83);
if(!$hw->init($helloWorldString)){
   dbg("<i>main:</i> Failed to init _izvratNaTemuHelloWorld instance.",0);
}else{
   dbg("<i>main:</i> _izvratNaTemuHelloWorld instance initialized successfully.",0);
}
if(!$hw->printHelloWorld()){
   dbg("<i>main:</i> Failed to print Hello World.",0);
}else{
   dbg("<i>main:</i> Hello World printed successfully.",1);
}
?>



--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
IZ@TOP
Дата 14.11.2003, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес




Боже правый smile.gif))) Вот это да %))) Действительно изврат smile.gif скоро свой вариант напишу smile.gif


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Master
Дата 14.11.2003, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia




ОДА.
Это круто Мутоген завернул.
но я думаю, что у нас с Изотопом варианты будут не хуже smile.gif


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
IZ@TOP
Дата 17.11.2003, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес




Ага, если будут smile.gif


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Master
Дата 17.11.2003, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1530
Регистрация: 13.5.2003
Где: Mother Russia




Мой код уже на 70% готов... правда надо ещё дозаморочить...

кстати кто будет оценивать рзелутаты? smile.gif

Серега наверное... так как не участвует smile.gif


--------------------
Вавилон, Вавилон
Что ты построил, что разрушил?
Вавилон, Вавилон
Плавятся души дьявольским огнем.
PM WWW ICQ   Вверх
IZ@TOP
Дата 19.11.2003, 03:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес




Ага smile.gif


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
NightGoblin
Дата 19.11.2003, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1021
Регистрация: 24.11.2002
Где: 127.0.0.1




Хм.... была мысль сделать как клиент-серверную систему, но, боюсь, времени не хватит smile.gif


--------------------
Kernel panic: /dev/null overflow!
GCS/IT/MU/O d-@ s: a- C++$>++++$ ULSB(+++) P+++ L+++>++++ !E W++(-) N o? K w-- O? M>+ V? PS+ PE Y+ PGP+>+++ t- 5 X+ R- !tv b+ DI+ D+ G e++ h--- r++ y?
B4F1 54B6 8738 26CD 5125 0581 B923 9273 FE59 1981
PM MAIL WWW ICQ   Вверх
HalkaR
Дата 19.11.2003, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пуфыстый назгул
****


Профиль
Группа: Экс. модератор
Сообщений: 2132
Регистрация: 8.12.2002
Где: В Москве




Подумал написать, но не стал. У меня воображение не так извращено. Хотя пара мыслей есть.
PM MAIL   Вверх
IZ@TOP
Дата 21.11.2003, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес




HalkaR, ну так выкладывай эти пару мыслей smile.gif


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
MuToGeN
Дата 21.11.2003, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва




Iz@top, ты когда свою скриптину выложишь-то?


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила раздела «Флейм»
Sneg0k

Добро пожаловать в «Флейм».

В разделе не действуют многие правила:

  • Можно оффтопить(умеренно)
  • Можно общаться на темы, не только связанные с программированием.

Строго запрещено:

  • Размещать рекламу
  • Обсуждать политику
  • Оскорблять друг-друга и переходить на личности
  • Наезжать, провоцировать других участников форума
  • Материться
  • Троллить

Напоминаем о существовании волшебной кнопочки "Репорт". Если вы увидели сообщение, несовместимое с жизнью, просьба подвести на нее курсор и клацнуть левой клавишей мышки. Тем самым вы сможете призвать злого, но жутко справедливого джина-модератора, который нашлет порчу на злостного нарушителя. Кстати - счётчик сообщений здесь не растёт.


Глас Винграда:


Глас Философии:


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Sneg0k

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Флейм | Следующая тема »


 




[ Время генерации скрипта: 0.0691 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.