Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.08.2007, 18:33
Xantalion вне форума Посмотреть профиль Отправить личное сообщение для Xantalion Найти все сообщения от Xantalion
  № 1  
Ответить с цитированием
Xantalion

Регистрация: Aug 2007
Сообщений: 6
По умолчанию Вычитание числа

Может для кого-то этот вопрос покажется идиотским +), но всеже я его задам.
Допустим нам дано какое-то число (20 например). Как сделать так, чтоб из него вычеслялось случайное число до тех пор, пока 20 не стнет меньше 0 --->>> Но так чтоб каждое вычитание происходило При нажатии на кнопку. ---<<<

У меня получилось сделать тольк, что при нажатии он считает от начала до конца, т.е. если использовать while или же только первое вычитание ( взависимости от условия)...я непойму как сделать так, нажал (к примеру выпало случаное 2) , тогда 20-2=18, потом опять надал ( случ к примеру 4), тогда 18-4=14 и тд....
случайное кстати делал через mt_rand(min,max).


Вот мой код ( я нуп в php =) ? хочу понять просто)...

Цитата:
<html>
<head>
<title> Случайные числа </title>
</head>
<body>
<?php
$pl1=40;
$hp1=$pl1;

echo "<font color=green>Число:</font><br>";


if ($number) {

while ($pl1>0) {
$ur1=mt_rand(1,10);
$pl1-=$ur1;
echo "<font color=red>Вычитаемое число: $ur1</font><br>";
}
echo "<font color=blue>Стало: $pl1/ Было: $hp1</font><br>";
?>
<form>
<input type=submit name="number" value="Сгенерировать число">
</form>
<?


} else {
echo "<font color=blue>Было: $pl1/Стало: $hp1</font><br>";

?>
<form>
<input type=submit name="number" value="Сгенерировать число">
</form>
<?}?>

</body>
</html>

Старый 16.08.2007, 19:49
†‡Paladin‡† вне форума Посмотреть профиль Отправить личное сообщение для †‡Paladin‡† Найти все сообщения от †‡Paladin‡†
  № 2  
Ответить с цитированием
†‡Paladin‡†

Регистрация: Nov 2005
Сообщений: 1,058
заместо while напишите if и будет вам счастье.

Старый 16.08.2007, 21:59
Xantalion вне форума Посмотреть профиль Отправить личное сообщение для Xantalion Найти все сообщения от Xantalion
  № 3  
Ответить с цитированием
Xantalion

Регистрация: Aug 2007
Сообщений: 6
Цитата:
Сообщение от †‡Paladin‡†
заместо while напишите if и будет вам счастье.
Наверно вы недопоняли моей проблемы. Дело в том, что если заменить while на if мы будем получать в результате при каждом (первом, втором третьем и т.д) нажатии --> 40 - x (где x случайное число)
А моя задача сделать так:
Нажали на кнопку первый раз - итог (40- (скажем 5) = 35)
Нажали на кнопку второй раз - тиог (уже не 40, а получившееся из первого нажатия 35 - (скажем 2) =33 .... и тд до числа, которое меньше 0 или рано 0.

Старый 17.08.2007, 01:45
Самурай вне форума Посмотреть профиль Отправить личное сообщение для Самурай Найти все сообщения от Самурай
  № 4  
Ответить с цитированием
Самурай
Ветеран форума

Регистрация: Aug 2001
Адрес: /kiev.ua/butuzov
Сообщений: 3,045
Отправить сообщение для Самурай с помощью ICQ
рекурсия + rand
__________________
...

Старый 17.08.2007, 03:30
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 5  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Самурай, топикстартеру счас дурно станет

Xantalion, осталось понять, что скрипт отрабатывает ДО того, как вывалит пользователю информацию. И, соотвественно, один прогон скрипта - одно вычитание - один показ пользователю. Нажали кнопку - второй прогон скрипта - второе вычитание - второй показ пользователю. Ну и так далее.
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 17.08.2007, 14:00
Xantalion вне форума Посмотреть профиль Отправить личное сообщение для Xantalion Найти все сообщения от Xantalion
  № 6  
Ответить с цитированием
Xantalion

Регистрация: Aug 2007
Сообщений: 6
Цитата:
Сообщение от Самурай
рекурсия + rand
Ты думаешь нуб может знать что такое рекурсия =) надо тогда было хоть ссылку дать, где моно про нее почитать.

Цитата:
Сообщение от Skubent
один прогон скрипта - одно вычитание - один показ пользователю
. Я это уже понял +) Мне бы узнать каким образом это сделать +)

Старый 17.08.2007, 14:44
†‡Paladin‡† вне форума Посмотреть профиль Отправить личное сообщение для †‡Paladin‡† Найти все сообщения от †‡Paladin‡†
  № 7  
Ответить с цитированием
†‡Paladin‡†

Регистрация: Nov 2005
Сообщений: 1,058
Цитата:
Сообщение от Xantalion
Наверно вы недопоняли моей проблемы. Дело в том, что если заменить while на if мы будем получать в результате при каждом (первом, втором третьем и т.д) нажатии --> 40 - x (где x случайное число)
А моя задача сделать так:
Нажали на кнопку первый раз - итог (40- (скажем 5) = 35)
Нажали на кнопку второй раз - тиог (уже не 40, а получившееся из первого нажатия 35 - (скажем 2) =33 .... и тд до числа, которое меньше 0 или рано 0.
Я тебя понял. В пределах одного пхп скрипта у тебя неполучится так сделать. Храни переменную в какомнить соседнем текстовике и записывай туда значения и забирай обратно. Вариант использовать печенюшки кстати.

Старый 17.08.2007, 17:17
Skubent вне форума Посмотреть профиль Отправить личное сообщение для Skubent Посетить домашнюю страницу Skubent Найти все сообщения от Skubent
  № 8  
Ответить с цитированием
Skubent
 
Аватар для Skubent

Регистрация: Oct 2005
Адрес: Млечный Путь, 7-й рукав, YD AC-451, 3-я планета.
Сообщений: 996
Отправить сообщение для Skubent с помощью ICQ
Простые варианты:
1. Число можно передавать в скрытом поле формы.
2. Число можно передавать в гет-запросе.
Посложнее:
3. Использовать кукисы.
4. Использовать сессию.

Я думаю, что вариант 1 - самое оно.
__________________
Тут вы найдете ответы на почти все вопросы:
А можно ли сделать так ? - Можно.
Почему не работает ? - Неправильно сделано.
Где ошибка ? - В ДНК.

Старый 17.08.2007, 18:04
chpoc вне форума Посмотреть профиль Отправить личное сообщение для chpoc Найти все сообщения от chpoc
  № 9  
Ответить с цитированием
chpoc

Регистрация: Aug 2007
Сообщений: 6
Отправить сообщение для chpoc с помощью ICQ
Тытс тытс...

Старый 17.08.2007, 18:19
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 10  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Цитата:
Сообщение от chpoc
Тытс тытс...
chpoc, и какой смысл в этих двух словах?

Создать новую тему Ответ Часовой пояс GMT +4, время: 08:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 08:39.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.