База ответов ИНТУИТ

Web-программирование на PHP 5.2

<<- Назад к вопросам

Каким будет результат выполнения следующего кода, если в форму передать число 15,52?
	 <?phpclass NumToText{  var $Mant = array();   var $Expon = array();   function NumToText()  {  }  function SetMant($mant)  {     $this->Mant = $mant;  }   function SetExpon($expon)  {     $this->Expon = $expon;  }  function DescrIdx($ins)  {     if(intval($ins/10) == 1) // числа 10 - 19: 10 миллионов, 17 миллионов     return 2;     else     {        $tmp = $ins%10;        if($tmp == 1) // 1: 21 миллион, 1 миллион        return 0;        else if($tmp >= 2 && $tmp <= 4)        return 1; // 2-4: 62 миллиона        else        return 2; // 5-9 48 миллионов     }  }  function DescrSot(&$in, $raz, $ar_descr, $fem = false)  {     $ret = '';     $conv = intval($in / $raz);     $in %= $raz;     $descr = $ar_descr[ $this->DescrIdx($conv%100) ];     if($conv >= 100)     {        $Sot = array('сто', 'двести', 'триста', 'четыреста', 'пятьсот',        'шестьсот', 'семьсот', 'восемьсот', 'девятьсот');        $ret = $Sot[intval($conv/100) - 1] . ' ';        $conv %= 100;     }     if($conv >= 10)     {        $i = intval($conv / 10);        if($i == 1)        {           $DesEd = array('десять', 'одиннадцать', 'двенадцать', 'тринадцать',           'четырнадцать', 'пятнадцать', 'шестнадцать', 'семнадцать',           'восемнадцать', 'девятнадцать' );           $ret .= $DesEd[ $conv - 10 ] . ' ';           $ret .= $descr;           return $ret;        }        $Des = array('двадцать', 'тридцать', 'сорок', 'пятьдесят', 'шестьдесят',        'семьдесят', 'восемьдесят', 'девяносто' );        $ret .= $Des[$i - 2] . ' ';     }     $i = $conv % 10;     if($i > 0)     {        if( $fem && ($i==1 || $i==2) )        {           $Ed = array('одна', 'две');           $ret .= $Ed[$i - 1] . ' ';        }        else        {           $Ed = array('один', 'два', 'три', 'четыре', 'пять',           'шесть', 'семь', 'восемь', 'девять' );           $ret .= $Ed[$i - 1] . ' ';        }     }     $ret .= $descr;     return $ret;  }  function Convert($sum)  {     $ret = '';     $Kop = 0;     $Rub = 0;     $sum = trim($sum);     $sum = str_replace(' ', '', $sum);     $sign = false;     if($sum[0] == '-')     {        $sum = substr($sum, 1);        $sign = true;     }     $sum = str_replace(',', '.', $sum);     $Rub = intval($sum);     $Kop = $sum*100 - $Rub*100;     if($Rub)     {        if($Rub >= 1000000000)        $ret .= $this->DescrSot($Rub, 1000000000,        array('миллиард', 'миллиарда', 'миллиардов')) . ' ';        if($Rub >= 1000000)        $ret .= $this->DescrSot($Rub, 1000000,        array('миллион', 'миллиона', 'миллионов') ) . ' ';        if($Rub >= 1000)        $ret .= $this->DescrSot($Rub, 1000,        array('тысяча', 'тысячи', 'тысяч'), true) . ' ';        $ret .= $this->DescrSot($Rub, 1, $this->Mant) . ' ';        $ret[0] = chr( ord($ret[0]) + ord('A') - ord('a') );     }     if($Kop < 10)     $ret .= '0';     $ret .= $Kop . ' ' . $this->Expon[ $this->DescrIdx($Kop) ];     if($sign)     $ret = '-' . $ret;     return $ret;  }}class ManyToText extends NumToText{  function ManyToText()  {     $this->SetMant( array('рубль', 'рубля', 'рублей') );     $this->SetExpon( array('копейка', 'копейки', 'копеек') );  }}class MetrToText extends NumToText{  function MetrToText()  {     $this->SetMant( array('метр', 'метра', 'метров') );     $this->SetExpon( array('сантиметр', 'сантиметра', 'сантиметров') );  }}?><HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">   <title>Example from intuit.ru</title></HEAD><BODY><?phpif( isset($HTTP_POST_VARS['num']) ){  $mt = new ManyToText();  $nt = new MetrToText();  echo $mt->Convert($HTTP_POST_VARS['num']) . '<BR />';  echo $nt->Convert($HTTP_POST_VARS['num']) . '<BR />';}?><FORM ACTION ="<?php echo $HTTP_SERVER_VARS['PHP_SELF']; ?>" METHOD="post">Input number:<BR /><INPUT TYPE="text" NAME="num"><BR /><INPUT TYPE="submit" VALUE=" GET "></FORM></BODY></HTML>     

(Отметьте один правильный вариант ответа.)

Варианты ответа
сначала будет выведена строка: 'Пятнадцать рублей 52 копейки', а затем - 'Пятнадцать метров 52 сантиметра'(Верный ответ)
сначала будет выведена строка: 'Пятнадцать метров 52 сантиметра',а затем - 'Пятнадцать рублей 52 копейки'
будет выведена строка: 'Пятнадцать метров 52 сантиметра'
будет выведена строка: 'Пятнадцать рублей 52 копейки'
Похожие вопросы
Каким будет результат выполнения следующего кода, после первого запуска:
<html> <head>   <title>Example from intuit.ru</title> </head>  <body>   <?php  $string="Вася::Петров::25::"; $array=explode("::",$string); echo "Имя: ".$array[0].", Фамилия: ".$array[1].", Возраст:   ".$array[2];    ?> </body> </html>     
Каким будет результат выполнения PHP-кода:
	<html> <head>   <title>Example from intuit.ru</title> </head><?php   $input = array("red", "green", "blue", "yellow");   array_splice($input, 2);   print_r($input);   echo "<br>";      $input = array("red", "green", "blue", "yellow");   array_splice($input, 1, -1);   print_r($input);   echo "<br>";      $input = array("red", "green", "blue", "yellow");   array_splice($input, 1, count($input), "orange");   print_r($input);   echo "<br>";      $input = array("red", "green", "blue", "yellow");   array_splice($input, -1, 1, array("black", "maroon"));   print_r($input);   echo "<br>";      $input = array("red", "green", "blue", "yellow");   array_splice($input, 3, 0, "purple");   print_r($input);   echo "<br>";?> </body> </html>   		 
Что выведет в браузер следующий PHP-код:
<html> <head>   <title>Example from intuit.ru</title> </head>  <body>   <?php    $arr = array( array(‘Вася’, ‘слесарь’, 2500 ),                array(‘Миша’,’строитель’, 3000),                array(‘Андрей’, ‘шофер’, 2700)			 );   for ($i = 0; $i < 3; $i++)    {      for ($j=0; $j <3; $j++)       {         echo ' | '.$arr[$i][$j];       }     echo '.<br>';    }  ?> </body> </html>     
Что будет выведено в браузере, в результате выполнения следующего PHP-кода:
	<html> <head>   <title>Example from intuit.ru</title> </head><?php  $food = array('fruits' => array('orange', 'banana', 'apple'),              'veggie' => array('carrot', 'collard', 'pea'));  echo count($food, COUNT_RECURSIVE)."<br>";  echo count($food)."<br>";?> </body> </html>  	 
Какой результат будет выведен в браузере, в результате выполнения следующего PHP-кода:
	<html> <head>   <title>Example from intuit.ru</title> </head><?php  $a = array(2, 4, 6, 8);  echo "sum(a) = " . array_sum($a) . "<br>";  $b = array("a" => 1.2, "b" => 2.3, "c" => 3.4);  echo "sum(b) = " . array_sum($b) . "<br>";?> </body> </html> 	 
Каким будет результат выполнения следующего PHP-кода, если файл text.txt имеет следующую структуру:
    my_first_line - первая строка файла    my_second_line - вторая строка файла		my_third_line - третья строка файла	my_fourth_line - четвертая строка файла	my_fifth_line - пятая строка файла	my_sixth_line - шестая строка файла   
<html> <head>   <title>Example from intuit.ru</title> </head>  <body>   <?php     $file="text.txt";    $array=file($file);    echo $array[rand(0,count($array)-1)];  ?> </body> </html>     
Каким будет результат выполнения следующего PHP-кода:
<html> <head>   <title>Example from intuit.ru</title> </head>  <body>   <?php    $arr = array(9, 8, 7, 6, 5, 4, 3, 2, 1, 0);   unset($arr[0], $arr[2], $arr[4], $arr[6], $arr[8]);   for($i = 0; $i < 10; $i++)    {     if(isset($arr[$i])) echo "$"."arr[$i] = ".$arr[$i]." определен <br>";      else echo "$"."arr[$i] = ".$arr[$i]." не определен <br>";    }  ?> </body> </html>     
Каким будет результат выполнения следующего PHP-кода, если файл file1.txt имеет следующую структуру: first_record; file2.txt - second_record, file3.txt - third_record:
<html> <head>   <title>Example from intuit.ru</title> </head>  <body>   <?php    $files=array(      "file1.txt",      "file2.txt",      "file3.txt"     );  for($i=0;$i<count($files);$i++)   {     $array[]=file($files[$i]);   }  while(list(,$result)=each($array))   {    for($i=0;$i<count($result);$i++)     {       $new_array[]=$result[$i];     }   }  print_r($new_array);  ?> </body> </html>     
Каким будет результат выполнения следующего PHP-кода:
	<html> <head>   <title>Example from intuit.ru</title> </head> <body> <?php  $stack = array("orange", "banana", "apple", "raspberry");  $fruit = array_shift($stack);  print_r($stack);?> </body> </html>  		 
Каким будет результат выполнения следующего PHP-кода:
	<html> <head>   <title>Example from intuit.ru</title> </head> 	 <?php  $trans = array ("a" => 1, "b" => 1, "c" => 2);  $trans = array_flip ($trans);  print_r($trans);?> </body> </html>