|
|
|
|
|
для: 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;
?>
|
| |
|
|
|
|
|
|
|
для: 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");
?>
|
| |
|
|
|
|
|
|
|
для: Unkind
(03.02.2007 в 15:10)
| | >Вывести (циклом!!!) индексы тех его элементов, которые делятся на 5.
>
>ведь $arr[$i] % 5 может быть не только ноль.
>"Делится" - значит остаток равен нулю. То, что нулю НЕ равно, то нам по условию НЕ нужно.
Ну правильно. Если остаток не равен нулю, условие If не выполнится и индекс не напечатается. | |
|
|
|
|
|
|
|
для: Unknown
(31.01.2007 в 18:08)
| | Вывести (циклом!!!) индексы тех его элементов, которые делятся на 5.
ведь $arr[$i] % 5 может быть не только ноль.
"Делится" - значит остаток равен нулю. То, что нулю НЕ равно, то нам по условию НЕ нужно. | |
|
|
|
|
|
|
|
для: Unknown
(31.01.2007 в 18:08)
| | >> ведь $arr[$i] % 5 может быть не только ноль.
Воть именно, а по условию нужен толкьо ноль, т.е. остаток от деления равен нулю.
Скрипт выведет индексы ... | |
|
|
|
|
|
|
|
для: Unkind
(26.12.2006 в 14:31)
| | Unkind, твой предпоследний пример не понял. :)
ведь $arr[$i] % 5 может быть не только ноль. Этот скрипт не выведет ни одно из чисел 15, 25, 30, 10 и 5. Или я что-то не так понял. | |
|
|
|
|
|
|
|
для: 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(3, 8, 15, 25, 16, 11, 10, 5, 7, 30);
for($i = 0; $i < count($arr); $i++)
{
if($arr[$i] % 5 == 0) echo($i."<br />\n");
}
?>
|
Сгенерировать 3 случайных числа в диапазоне от 0 до 10. Если сумма этих чисел меньше 16, сгенерировать новую тройку.
<?php
do
{
$x = rand(0, 10);
$y = rand(0, 10);
$z = rand(0, 10);
}
while($x + $y + $z < 16);
?>
|
| |
|
|
|
|
|
|
|
для: AlexSol
(06.12.2006 в 20:58)
| | Поддерживаю... собствено из-за этого и спросил... | |
|
|
|
|
|
|
|
для: AlexSol
(06.12.2006 в 20:58)
| | >вы учитесь или вопросы собираете?
>решите сами и покажите ваш вариант, будут ошибки - поправим.
полностью поддерживаю :) | |
|
|
|
|
|
|
|
для: PatriotRus
(06.12.2006 в 19:05)
| | вы учитесь или вопросы собираете?
решите сами и покажите ваш вариант, будут ошибки - поправим. | |
|
|
|
|