Алгоритм. Получаю IP адрес Нахожу точки, точки являются разделителем между будущими числами Если число одно, добавляю перед ним два нуля Если числа два, добавляю перед ним один нуль пример 192.168.1.1 будет как 192 168 001 001 Первые два числа складываю 192+168 Вторые два числа складываю 001+001 Полученные числа вычитаю друг из друга, если результат = 0, то Ip счастливый В пхп не силен, остановился на замене. Код (Text): $ip2 = str_replace(".", "", $ip); $content = "<table width='100%' border='0'><tr align='center'> <td>".$ip."</td> <td>".$ip2."</td> </tr></table>"; Есть ли у кого какие мысли по этому поводу?
Прикольно explode(".", $ip) - разобьет IP на массив с 4мя элементами sprintf("%03d", число) - делает все числа одинаковой длинны (Они преобразовываются в строки) Только зачем прибавлять нули, если между числами в группе нет операций?
Да, действительно зачем =). А я уже хотел писать циклы. А полученные строки надо приводить к типу int ? Ну это я сам сделаю. Видимо с IP будет даже проще чем с номером кошелька. Спасибо за помощь Kreker.
Вот рабочий код. PHP: $ipishnik = explode(".", $ip); $a = (int) $ipishnik[0]; $b = (int) $ipishnik[1]; $c = (int) $ipishnik[2]; $d = (int) $ipishnik[3]; $delta = ($a + $b) - ($c + $d); $result = ($delta==0) ? "<h1>Поздравляем, Ваш IP СЧАСТЛИВЫЙ</h1>" : "<h1>К сожалению, Ваш IP не счастливый</h1> Не огорчайтесь."; Спасибо за участие =)
PHP: <?php list($a,$b,$c,$d) = explode(".", $ip); $result = ((($a + $b) - ($c + $d))==0) ? "<h1>Поздравляем, Ваш IP СЧАСТЛИВЫЙ</h1>" : "<h1>К сожалению, Ваш IP не счастливый</h1> Не огорчайтесь."; гм .. акакие еще варианты оптимизаци и кто может придумать ? задача сократить ;-)
PHP: <?php $v = explode(".",$ip); $result = ($v[0] + $v[1]) == ($v[2] + $v[3]) ? "Ништяк!" : "Пипец!"; ?>