Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Задача на PHP
 
 автор: PatriotRus   (05.12.2006 в 16:56)   письмо автору
 
 

Нужна помощь!!!Не могу осилить задачи, вот они:

"Для каждого из чисел от 7 до 17 вывести его остаток от деления на 3 в виде: "<число> % 3 = <остаток>"

и

"Используя конструкцию switch, написать функцию dummy, принимающую одно число в качестве аргумента. Если это число равно 2, функция должна вывести слово "Двойка", если 3 – "Тройка", в остальных случаях – "Шняга какая-то"


Заранее огромное спасибо!!!

   
 
 автор: ddhvvn   (05.12.2006 в 19:19)   письмо автору
 
   для: PatriotRus   (05.12.2006 в 16:56)
 

1.

<?php
 
for ($i 7$i <= 17$i++)
 {
  echo 
$i."%3=".bcmod('$i','3');
 }
?>

2.

<?php
 
function dummy($chislo)
 {
  switch(
$chislo)
   case 
2:
   {
     return(
"Двойка");
     break;
   }
  case 
3:
  {
     return(
"Тройка");
     break;
  }
  default:
  {
     return(
"Шняга какая-то");
     break;
  }
 }
?>


Только мне интересно, зачем Вам нужны такие "трудные" задачи?

   
 
 автор: PatriotRus   (06.12.2006 в 15:31)   письмо автору
 
   для: ddhvvn   (05.12.2006 в 19:19)
 

Не могли бы вы мне помочь с ещё рядом задач:

Создать HTML-форму, в которой пользователь может ввести три числа, являющихся длинами сторон треугольника. Скрипт, обрабатывающий форму, должен вывести сообщение, является ли треугольник прямоугольным.



Создать HTML-форму, в которой пользователь может ввести свое имя и пароль. Если пароль равен "secretkey", обрабатывающий форму скрипт должен поприветствовать пользователя. Если одно из полей пустое, должно быть выдано сообщение об ошибке. Если пароль неправильный, должно быть выдано соотв. уведомление.



Создать HTML-форму, в которой пользователь может ввести одно число. Скрипт, обрабатывающий форму, должен вывести факториал этого числа (считается, что пользователь не чайник и вводит только натуральные числа). Если число больше 10 – выдать сообщение об ошибке (слишком большое число).



Дан массив $arr = array(3,8,15,25,16,11,10,5,7,30). Вывести (циклом!!!) индексы тех его элементов, которые делятся на 5.



Сгенерировать 3 случайных числа в диапазоне от 0 до 10. Если сумма этих чисел меньше 16, сгенерировать новую тройку. Так продолжать до тех пор, пока не будет получена тройка с суммой больше 16 – ее нужно вывести в окно браузера.
ПРИМЕЧАНИЕ: для генерации случайных чисел нужно сначала один раз вызвать функцию srand(time()), после чего каждое новое число будет генерироваться функцией rand(0,10) (напр., $a = rand(0,10), $b=rand(0,10)).

   
 
 автор: DEM   (06.12.2006 в 18:45)   письмо автору
 
   для: PatriotRus   (06.12.2006 в 15:31)
 

Если не секрет, где вы достали эти вопросы? Просто некоторые чоень похожи на какой-то тест или что-то вроде этого

   
 
 автор: PatriotRus   (06.12.2006 в 19:05)   письмо автору
 
   для: DEM   (06.12.2006 в 18:45)
 

Я учусь во ВлГу.А вопросы для Лабораторных работ!!!

   
 
 автор: AlexSol   (06.12.2006 в 20:58)   письмо автору
 
   для: PatriotRus   (06.12.2006 в 19:05)
 

вы учитесь или вопросы собираете?
решите сами и покажите ваш вариант, будут ошибки - поправим.

   
 
 автор: ddhvvn   (07.12.2006 в 09:22)   письмо автору
 
   для: AlexSol   (06.12.2006 в 20:58)
 

>вы учитесь или вопросы собираете?
>решите сами и покажите ваш вариант, будут ошибки - поправим.

полностью поддерживаю :)

   
 
 автор: DEM   (07.12.2006 в 14:49)   письмо автору
 
   для: AlexSol   (06.12.2006 в 20:58)
 

Поддерживаю... собствено из-за этого и спросил...

   
 
 автор: Unkind   (26.12.2006 в 14:31)   письмо автору
 
   для: PatriotRus   (06.12.2006 в 15:31)
 

Создать HTML-форму, в которой пользователь может ввести три числа, являющихся длинами сторон треугольника. Скрипт, обрабатывающий форму, должен вывести сообщение, является ли треугольник прямоугольным.


<?php
    
if($_POST['action'])
    {
    
$first = (int) $_POST['first'];
    
$second = (int) $_POST['second'];
    
$third = (int) $_POST['third'];

    
$array = array($first$second$third);

    
$max max($first$second$third);

        for(
$i 0$i 3$i++)
        {
        if(
$array[$i] == $max) break;
        }

        switch(
$i)
        {
        case 
'0':
        
$x $array[1];
        
$y $array[2];
        break;

        case 
'1':
        
$x $array[0];
        
$y $array[2];
        break;
        
        case 
'2':
        
$x $array[0];
        
$y $array[1];
        break;
        }

        if((
$x $x $y $y) == $max $max)
        {
        echo(
"Треугольник прямоугольный.<br />\n");
        }
        else
        {
        echo(
"Треугольник не прямоугольный.<br />\n");    
        }
    }

echo(
"<form action='".$_SERVER['PHP_SELF']."' method='post'>\n");
echo <<< FORM
Первая сторона:<br />
<input type='text' name='first' /><br />
Вторая сторона:<br />
<input type='text' name='second' /><br />
Третья сторона:<br />
<input type='text' name='third' /><br />
<input type='hidden' name='action' value='true'>
<input type='submit' value='Проверить'><br />
</form>
FORM;
?>


Создать HTML-форму, в которой пользователь может ввести свое имя и пароль. Если пароль равен "secretkey", обрабатывающий форму скрипт должен поприветствовать пользователя. Если одно из полей пустое, должно быть выдано сообщение об ошибке. Если пароль неправильный, должно быть выдано соотв. уведомление.


<?php
    
if($_POST['action'])
    {
    
$username = (string) $_POST['username'];
    
$password = (string) $_POST['password'];

    
$error "";

    if(empty(
$username)) $error .= "Не введено имя пользователя.<br />\n";
    if(empty(
$password)) $error .= "Не введен пароль.<br />\n";

        if(!empty(
$error))
        {
        echo(
$error);
        }
        else
        {
            if(
$password == "secretkey")
            {
            echo(
"Привет, ".$username."!<br />\n");
            }
            else
            {
            echo(
"Неверный пароль.<br />\n");    
            }
        }
    }

echo(
"<form action='".$_SERVER['PHP_SELF']."' method='post'>\n");
echo <<< FORM
Имя пользователя:<br />
<input type='text' name='username' /><br />
Пароль:<br />
<input type='text' name='password' /><br />
<input type='hidden' name='action' value='true'>
<input type='submit' value='Проверить'><br />
</form>
FORM;
?>


Дан массив $arr = array(3,8,15,25,16,11,10,5,7,30). Вывести (циклом!!!) индексы тех его элементов, которые делятся на 5.


<?php
$arr 
= array(3815251611105730);
for(
$i 0$i count($arr); $i++)
{
if(
$arr[$i] % == 0) echo($i."<br />\n");
}
?>


Сгенерировать 3 случайных числа в диапазоне от 0 до 10. Если сумма этих чисел меньше 16, сгенерировать новую тройку.


<?php
do
{
$x rand(010);
$y rand(010);
$z rand(010);
}
while(
$x $y $z 16);
?>

   
 
 автор: Unknown   (31.01.2007 в 18:08)   письмо автору
 
   для: Unkind   (26.12.2006 в 14:31)
 

Unkind, твой предпоследний пример не понял. :)
ведь $arr[$i] % 5 может быть не только ноль. Этот скрипт не выведет ни одно из чисел 15, 25, 30, 10 и 5. Или я что-то не так понял.

   
 
 автор: kasmanaft   (31.01.2007 в 18:52)   письмо автору
 
   для: Unknown   (31.01.2007 в 18:08)
 

>> ведь $arr[$i] % 5 может быть не только ноль.
Воть именно, а по условию нужен толкьо ноль, т.е. остаток от деления равен нулю.
Скрипт выведет индексы ...

   
 
 автор: Unkind   (03.02.2007 в 15:10)   письмо автору
 
   для: Unknown   (31.01.2007 в 18:08)
 

Вывести (циклом!!!) индексы тех его элементов, которые делятся на 5.

ведь $arr[$i] % 5 может быть не только ноль.
"Делится" - значит остаток равен нулю. То, что нулю НЕ равно, то нам по условию НЕ нужно.

   
 
 автор: AlMag   (07.02.2007 в 20:35)   письмо автору
 
   для: Unkind   (03.02.2007 в 15:10)
 

>Вывести (циклом!!!) индексы тех его элементов, которые делятся на 5.
>
>ведь $arr[$i] % 5 может быть не только ноль.
>"Делится" - значит остаток равен нулю. То, что нулю НЕ равно, то нам по условию НЕ нужно.

Ну правильно. Если остаток не равен нулю, условие If не выполнится и индекс не напечатается.

   
 
 автор: AlMag   (07.02.2007 в 20:56)   письмо автору
 
   для: PatriotRus   (06.12.2006 в 15:31)
 

>Создать HTML-форму, в которой пользователь может ввести одно число. Скрипт, обрабатывающий форму, должен вывести факториал этого числа (считается, что пользователь не чайник и вводит только натуральные числа). Если число больше 10 – выдать сообщение об ошибке (слишком большое число).



<?php
 
echo("<Center>\n");
 if (isset(
$_POST['fact']))
 {
  
$n=(int)$_POST['fact'];
  
$fact=1;
  if (
$n>10) echo("Слишком большое число \n");
   else
  {
   for (
$i=1$i<=$n$i++) $fact*=$i;
   echo(
"Факториал числа $n равен $fact \n");
  }
  echo(
"<Br> <Br>");
 }
 echo(
"<Form action='' method='post'>\n");
 
printf("Введите число n <Input type='text' name='fact'> <Br>\n");
 
printf("<Br> <Input type='submit' value='Посчитать'>\n");
 
printf("</Form>\n");
 echo(
"</Center>\n");                                      
?>

   
 
 автор: AlMag   (07.02.2007 в 21:33)   письмо автору
 
   для: PatriotRus   (06.12.2006 в 15:31)
 


Создать HTML-форму, в которой пользователь может ввести три числа, являющихся длинами сторон треугольника. Скрипт, обрабатывающий форму, должен вывести сообщение, является ли треугольник прямоугольным.


проверку можно сделать немного проще, чем это сделал [u] Unkind [/u]


<?php
  
if ($_POST['action'])
  {
    
$z=$_POST['first'];
    
$y=&_POST['second'];
    
$x=$_POST['third'];
    
$t=z;
    if (
$z<$y) { $z=$y$y=$t; }
    if (
$z<$x) { $z=$x$z=$t; }
    if (
$z*$z==$x*$x+$y*$y) echo("Треугольник прямоугольный.<br />\n");
                       else echo(
"Треугольник не прямоугольный.<br />\n"); 
  }
echo(
"<form action='".$_SERVER['PHP_SELF']."' method='post'>\n"); 
echo <<< 
FORM 
Первая сторона
:<br /> 
<
input type='text' name='first' /><br /> 
Вторая сторона:<br /> 
<
input type='text' name='second' /><br /> 
Третья сторона:<br /> 
<
input type='text' name='third' /><br /> 
<
input type='hidden' name='action' value='true'
<
input type='submit' value='Проверить'><br /> 
</
form
FORM
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования