Нездоровые ассоциации
Вот это на Венской Ратуше висит плакат, который приглашает голосовать на выборах мэра.
Э-э-э... у меня у одной при взгляде на этот плакат какие-то нездоровые ассоциации?
Я бы выложила рядом фото, с чем ассоциации, но российская цензура не пропустит.
А уж с учетом того, что там победили ультраправые...
Aagira 4 года назад #
Хорошо, что там абстрактных толкователей с какого-то конкурса еще нет…
Мария Фомальгаут 4 года назад #
Все, молчу, молчу…
Aagira 4 года назад #
Мария Фомальгаут 4 года назад #
Мария Фомальгаут 4 года назад #
Вот у меня в генераторе текстов есть некоторые функции, например, функция истинности/ложности какой-то информации:
function prawda()
{
$x_false = rand(1,2);
if ($x_false==1) {
echo 'Это была правда.';
}
if ($x_false==2) {
echo 'Это была неправда. Герой шел по ложному следу. Герой узнал, что идет по ложному следу. ';
}
}
И вот хочется не заморачиваться и вызывать раз за разом эту функцию:
prawda()
… Но в одном случае это ложная инфа одна, в другом случае другая… Как их можно пронумеровать, чтобы программа не путалась, что это не та же самая инфа, а другая?
Aagira 4 года назад #
Или ты имеешь в виду, какой текст может выскакивать? Тогда можно, наверное, тексты запихнуть в два массива (правда и ложь) и таким же методом рандомно вызывать.
Типа так:
$prav = array(«Текст1», «Текст2», «Текст3»);
$lozh = array(«Текст1», «Текст2», «Текст3»);
$x_false_prav = array_rand ($prav, 1);
$x_false_lozh = array_rand ($lozh, 1);
if ($x_false==1) {
echo $x_false_prav;
}
if ($x_false==2) {
echo $x_false_lozh;
}
Ну, что-то вроде этого… Могу напутать много, но смысл ты поняла.
Мария Фомальгаут 4 года назад #
И нужно пояснить программе, что первая правда/неправда — это не вторая, и не третья, и не пятая, и не десятая правда/неправда.
Aagira 4 года назад #
Мария Фомальгаут 4 года назад #
Ему говорят — призрачная собака.
Это ложь.
Второй раз ищет герой инфу, как поехать в Баскервиль-холл.
Ему говорят дорогу.
Это правда.
Третий раз ищет, кто все-таки угробил сэра Чарльза.
По окружающей обстановке решил — Бэрримор виноват.
Это неправда.
Четвертый раз Ватсон искал, как попасть в домик на болоте, где Холмс.
Ему показали дорогу.
Это правда.
Пятый раз Ватсон получил от Холмса инфу, что сэра Чарльза убил Степлтон.
Это правда.
Вот. Суть во всех случаях одна — поиск инфы и её истиность/ложность. А инфа разная.
Aagira 4 года назад #
Мария Фомальгаут 4 года назад #
Aagira 4 года назад #
Мария Фомальгаут 4 года назад #
По-хорошему еще всем этим функциям надо дать номера, чтобы программа запомнила, что первый вызов функции — это такая-то инфа, второй — такая-то… И потом на чистовике будет писать, что первая инфа про собаку, вторая — где баскервиль-холл
Aagira 4 года назад #
Мария Фомальгаут 4 года назад #
Алгоритмы реализованы в программы.
Программы работают.
Осталось ограничить число вызова функций.
И дать индексы каждому вызову функций, чтобы потом плести сюжет
Aagira 4 года назад #
Здесь, например, вместо единицы можно поставить другую цифру, по числу значений, которые можно брать из массива. А вот как эти значения переработать в рандом по твоей задаче — можно что-то придумать (хотя, плодить сущности, навешивая рандом на рандом, наверное, стремно).
Мария Фомальгаут 4 года назад #
Aagira 4 года назад #
Aagira 4 года назад #
Мария Фомальгаут 4 года назад #
Aagira 4 года назад #
Мария Фомальгаут 4 года назад #
function poisk ()
{
function prawda()
{
$x_false = rand(1,2);
if ($x_false==1) {
echo 'Это была правда.';
}
if ($x_false==2) {
echo 'Это была неправда. Герой шел по ложному следу. Герой узнал, что идет по ложному следу. ';
}
}
prawda();
}
poisk ();
Работает. Если вызвать poisk (); один раз. А если второй раз:
poisk ();
echo "
";
poisk ();
Программа начинает косячить, при повторном вызове функции как будто перестает видеть, что там в функции…