Посещаемость интернет-сайтов ведущих СМИ резко падает

M3
На сайте с 09.02.2022
Online
115
#111
WIKIMEO #:
К сожалению (или нет), Алиса, Маруся, Гигачаты и прочие - не конкуренты гигантам буржа.
гигачат хорошая модель, с учетом её пейсплатности
еще т-тех забыл в этот список добавить, который для русского языка превосходит квены с дипсиками)
Artisan
На сайте с 04.03.2005
Offline
380
#112
nash300 #:
Учитывая, что Алиса задолго появилась до того же чатжпт, то яндекс тоже кое что может.


Алису вырастили не яндексоиды, а другие люди,

около тридцати лет назад, без модных нейросетей.


en.wikipedia.org/wiki/Artificial_Linguistic_Internet_Computer_Entity

ru.wikipedia.org/wiki/A.L.I.C.E.



nash300 #:
Вот Алиса тетрис накодила,


Не накодила, а нашла чужой код.

www.leak.info / ДАРОМ линки конкурентов и забытых доменов
N3
На сайте с 04.07.2016
Offline
108
#113
Artisan #:
Алису вырастили не яндексоиды, а другие люди,

около тридцати лет назад, без модных нейросетей.

получается и боинг 747 братья Райт построили?


Artisan #:

Не накодила, а нашла чужой код.

именно накодила, не плохо в нем разбирается и может прекрасно вносить правки которые ты просишь, это уже не просто найти чужой код

Openso
На сайте с 09.11.2016
Offline
100
#114

А что не так с оборудованием у алисы? Мало байкалов поставили? :)

WIKIMEO
На сайте с 20.05.2015
Offline
320
#115
nash300 #:

именно накодила, не плохо в нем разбирается и может прекрасно вносить правки которые ты просишь, это уже не просто найти чужой код


А теперь запусти свой тетрис ( никому не нужный) по "ее коду".  Скрины начала работ, середины и конца скинешь сюда, посмотрим. 

⭐⭐⭐ Увеличу доход в Adsense, РСЯ, тизерках по своей методике: https://searchengines.guru/ru/forum/1015646 . Telegram: @DiamantG ( https://t.me/DiamantG ) ⭐⭐⭐
P
На сайте с 26.04.2010
Offline
423
#116
nash300 #:
Вот Алиса тетрис накодила, вполне рабочий для первой версии уже не плохо, только скорость слишком высокая
Она не кодила, скопировала решение с сайтов. И не факт, что имена переменных поменяла. А вот Гугл такое может.
N3
На сайте с 04.07.2016
Offline
108
#117
WIKIMEO #:

А теперь запусти свой тетрис ( никому не нужный) по "ее коду".  Скрины начала работ, середины и конца скинешь сюда, посмотрим. 

Что ты мне доказать пытаешься?

Алиса не плохо справляется с кодом, я её использую и вполне доволен.

Вот код который написан мной никуда не смотрел писал сам, переменные специально одной буквой обозначил, что бы ИИ не могли по названию угадать.

что делает этот код
function pager(int $P, int $C, int $N = 2, bool $E = true)
{
        if($C<=2*$N+3) $result = range(1, $C);
        elseif($P-$N>2 && $P+$N<$C-1) $result = array_merge([1, null], range($P-$N, $P+$N), [null, $C]);
        elseif($P-$N>2) $result = array_merge([1, null], range($C-(2*$N+1), $C));
        elseif($P+$N<$C-1) $result = array_merge(range(1, 1+(2*$N+1)), [null, $C]);
        if (!$E) {
                $L = count($result)-1;
                if ($result[$L-1]===null && $result[$L]-$result[$L-2]==2) $result[$L-1] = $result[$L]-1;
                if ($result[1]===null && $result[2]-$result[0]==2) $result[1] = $result[2]-1;
        }
        return $result;
}

ответ алисы

Этот код реализует функцию пагинации (разбиения на страницы) — формирует массив номеров страниц для постраничного вывода с учётом текущего положения и настроек отображения.

Параметры функции
$P (int) — номер текущей страницы (позиция пользователя);

$C (int) — общее количество страниц (capacity);

$N (int, по умолчанию 2) — количество соседних страниц вокруг текущей, которые нужно показать;

$E (bool, по умолчанию true) — флаг, управляющий коррекцией «дыр» (null‑элементов) в последовательности.

Логика работы
1. Базовый случай: мало страниц
Если страниц немного (C≤2N+3), возвращаем полный список от 1 до C:

php
if ($C <= 2*$N + 3) $result = range(1, $C);
Пример: при N=2, C=722+3=7, значит, выведем [1,2,3,4,5,6,7].

2. Средний случай: текущая страница вдали от краёв
Если текущая страница P находится достаточно далеко от начала и конца (P−N>2 и P+N<C−1), показываем:

первую страницу (1);

«дыру» (null) — обозначение пропущенных страниц;

диапазон [P−N,P+N] (текущая ±N страниц);

ещё одну «дыру» (null);

последнюю страницу (C).

php
elseif ($P-$N > 2 && $P+$N < $C-1)
    $result = array_merge([1, null], range($P-$N, $P+$N), [null, $C]);
Пример: P=10, C=20, N=2 → [1, null, 8,9,10,11,12, null, 20].

3. Близко к концу
Если P−N>2, но P+N≥C−1 (страница близка к концу), показываем:

первую страницу (1);

«дыру» (null);

последние 2N+2 страницы.

php
elseif ($P-$N > 2)
    $result = array_merge([1, null], range($C-(2*$N+1), $C));
Пример: P=18, C=20, N=2 → [1, null, 15,16,17,18,19,20].

4. Близко к началу
Если P+N<C−1, но P−N≤2 (страница близка к началу), показываем:

первые 2N+2 страницы;

«дыру» (null);

последнюю страницу (C).

php
elseif ($P+$N < $C-1)
    $result = array_merge(range(1, 1+(2*$N+1)), [null, $C]);
Пример: P=3, C=20, N=2 → [1,2,3,4,5,6, null, 20].

5. Коррекция «дыр» (если $E = false)
Если флаг $E выключен, функция пытается «заполнить» null-элементы, если между соседними числами разрыв всего в 1:

Для последнего null: если предпоследний элемент null, а разница между последним и предпредпоследним равна 2, заменяем null на число между ними.

Для первого null: аналогично, если второй элемент null и разница между третьим и первым равна 2, заменяем null на среднее.

php
if (!$E) {
    $L = count($result)-1;
    if ($result[$L-1] === null && $result[$L] - $result[$L-2] == 2)
        $result[$L-1] = $result[$L] - 1;
    if ($result[1] === null && $result[2] - $result[0] == 2)
        $result[1] = $result[2] - 1;
}
Пример: [1, null, 3, ..., 19, null, 21] → [1, 2, 3, ..., 19, 20, 21].

Итог
Функция возвращает массив номеров страниц для отображения в интерфейсе пагинации, например:

[1, null, 8,9,10,11,12, null, 20] — с «дырами» для пропуска дальних страниц;

[1,2,3,4,5,6, null, 20] — когда текущая близко к началу;

[1, null, 15,16,17,18,19,20] — когда текущая близко к концу.

Такой подход экономит место и улучшает UX, показывая только релевантные номера страниц.

Ответ дипсик

Функция возвращает массив чисел (и null в качестве разделителя), который показывает, какие кнопки страниц отображать, чтобы пагинатор не был слишком длинным.

Параметры:
$P — текущая страница (Page)

$C — общее количество страниц (Count)

$N — сколько страниц показывать слева и справа от текущей (по умолчанию 2)

$E — разрешать "дырки" с двух сторон (Ellipsis), по умолчанию true

Логика работы:
Случай 1: Если страниц немного ($C <= 2*$N+3)
Просто показываем все страницы от 1 до $C

Пример ($C=5, $N=2): [1, 2, 3, 4, 5]

Случай 2: Если текущая страница где-то в середине (отделена с двух сторон)
Показываем: 1, дырка (null), несколько страниц вокруг текущей, дырка, последняя страница

Пример ($C=100, $P=50, $N=2): [1, null, 48, 49, 50, 51, 52, null, 100]

Случай 3: Если текущая страница близко к началу
Показываем: первые страницы, дырка, последняя страница

Пример ($C=100, $P=3, $N=2): [1, 2, 3, 4, 5, null, 100]

Случай 4: Если текущая страница близко к концу
Показываем: первая страница, дырка, последние страницы

Пример ($C=100, $P=97, $N=2): [1, null, 96, 97, 98, 99, 100]

Особенность с параметром $E = false:
Если $E = false, функция "заполняет дырки", когда рядом с ними должны быть последовательные числа.

Пример работы $E = false:

Было бы: [1, null, 48, 49, 50, 51, 52, null, 100]

Но если дырка рядом с последовательными числами (например [1, null, 3, 4, 5]), то null заменяется на 2

Результат: [1, 2, 3, 4, 5] (дырка исчезает)

Ответ чатжпт

Это PHP-функция для построения пагинации (списка номеров страниц с «…»), обычно для вывода вида:

14 5 620

Разберём по шагам.

Сигнатура функции
public function pager(int $P, int $C, int $N = 2, bool $E = true)


Параметры:

$P — текущая страница (Page)

$C — общее количество страниц (Count)

$N — сколько страниц показывать слева и справа от текущей (Neighbors), по умолчанию 2

$E — показывать ли «разрывы» (null → обычно рисуют как ...), по умолчанию true

Что возвращает

Функция возвращает массив номеров страниц, где:

числа — реальные страницы

null — пропуск (обычно отображается как ...)

Основная логика
1️⃣ Если страниц мало — показываем все
if ($C <= 2*$N + 3)
    $result = range(1, $C);


📌 Например:
C = 7 → [1,2,3,4,5,6,7]

2️⃣ Текущая страница где-то в середине
elseif ($P-$N > 2 && $P+$N < $C-1)


📌 Результат:

[1, null, P-N ... P+N, null, C]


Пример:

pager(5, 10)


Результат:

[1, null, 3, 4, 5, 6, 7, null, 10]

3️⃣ Ближе к концу
elseif ($P-$N > 2)


📌 Показывает последние страницы:

[1, null, C-(2N+1) ... C]


Пример:

[1, null, 6, 7, 8, 9, 10]

4️⃣ Ближе к началу
elseif ($P+$N < $C-1)


📌 Показывает первые страницы:

[1, 2, 3, 4, 5, null, C]

Логика $E = false

Если $E === false, функция убирает null, когда пропуск равен всего одной странице.

Например:

[1, null, 3]


превратится в:

[1, 2, 3]


Чтобы не показывать ..., если можно показать число.

Хуже всех справился чатжпт и допустил ошибки, дипсик получше но тоже с ошибками.

Алиса одна справилась без ошибок и все понятно объяснила.

Так что сначала сам попользуйся алисой, а потом мнение свое объективное высказывай, а так это не мнение а фантазии.

M3
На сайте с 09.02.2022
Online
115
#118
nash300 #:
Хуже всех справился чатжпт и допустил ошибки
хуже, потому что указал на ошибки в коде или почему?
Проблемы в текущем коде:
1) При E=false и маленьком C (например C=1 или C=2) будут Undefined offset из-за обращений к $result[$L-1], $result[$L-2], $result[1], $result[2].
2) Нет валидации входа (P может быть вне 1..C, N может быть <0, C может быть <=0) → странный вывод/предупреждения.
3) Нет финального else на случай нетипичных входных (в теории $result может остаться не определённым).


WIKIMEO
На сайте с 20.05.2015
Offline
320
#119
nash300 #:

Что ты мне доказать пытаешься?


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



softerra
На сайте с 02.10.2023
Offline
120
#120
Не знаю как другие, я когда вижу интересную глобальную новость, проверяю наличие этой новости на серьезных информационных сайтах ..

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий