Server Banner

BBya World

Объявление

Мы переехали на новый форум: forum.bbyaworld.com

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » BBya World » Флуд » Свеженафлуженный флуд


Свеженафлуженный флуд

Сообщений 681 страница 700 из 979

681

OcelotJungle написал(а):

Как-то так наверное

+

682

Один из сотрудников картографической службы Ordnance Survey воссоздал с помощью MinecraftКраткая информация об игре подробную карту Великобритании, потратив на это две недели и более 22 миллиардов блоков.

скачать можно на странице, щелкнув на картинке
http://www.ordnancesurvey.co.uk/collateral/images/wc4/RS1386_minecraft-map-of-great-britain.jpg


Here are some locations to get you started:

Southampton Water --- X = 9000 Y = 100 Z = 26000
London -------------- X = 10632 Y = 100 Z = 24422
Mt Snowdon ---------- X = 5218 Y = 200 Z = 20913
Outer Hebrides ------ X = 2110 Y = 100 Z = 10000
Shetland Islands ---- X = 8900 Y = 100 Z = 4969
Poole Harbour ------- X = 8020 Y = 100 Z = 26235
Weymouth ------------ X = 7300 Y = 100 Z = 26440
Foulness Essex------- X = 12000 Y = 100 Z = 24174
Lake Windermere------ X = 6800 Y = 100 Z = 18080
Ordnance Survey ----- X = 8745 Y = 100 Z = 25695

Отредактировано Bress Oster (24-09-2013 23:53:54)

683

OcelotJungle написал(а):

Как-то так наверное

чем это отличается от того, что сейчас работает?

case yt == 100 есть и у тебя и в существующем варианте

если я правильно понял, то ты переписал только условие для 95-99

в чём именно ошибка действующего кода?

684

Вроде вот так.
В чем ошибка старого кода только не спрашивай!

Кстати, если учитывать високосные годы (y = (age / 365.25)) - то столетие еще не пришло ))) Так что у нас есть шанс еще раз отпраздновать все с огромным размахом.

Код

<div align="center" style="color:#000066; font-size: 6pt"><b>Возраст нашего мира:
    <script language="javascript" type="text/javascript"><!--

        var y, m, d, age = 0;
        var mt, dt, yt=0;
        var yname, mname, dname;
                var ytt, ytt1;
                var dtt1;

        Begin3 = new Date("May 5, 2012 19:58:21");
        Today = new Date();

        age = (Today - Begin3) / 1200000;
        y = (age / 365.25);
        m = (1 - (Math.ceil(y) - y)) / (1 / 12);
        d =31 * (m - Math.floor(m));
 
        mt=Math.floor(m);
        dt=Math.floor(d);
        yt=Math.floor(y);
 

                if(mt>10 && mt<20) mname = "месяцев";
                else if(mt>1 && mt<5) mname = "месяца";
                else if(mt == 1) mname = "месяц";
                else mname = "месяцев";

                dtt1 = dt%10;

                if(dtt1>10 && dtt1<20) dname = "дней";
                else if(dtt1>1 && dtt1<5) dname = "дня";
                else if(dtt1 == 1) dname = "день";
                else dname = "дней";
               
               
                ytt = Math.abs(yt)%100;
                ytt1 = yt%10;

                if(ytt>10 && ytt<20) yname = "лет";
                else if(ytt1>1 && ytt1<5) yname = "года";
                else if(ytt1 == 1) yname = "год";
                else yname = "лет";

        document.write(Math.floor(y) + " " + yname + " " + Math.floor(m) + " "  + mname + " " + Math.floor(d) + " " + dname );
        //--></script></b></div>
    </div>
</div>
</div>

685

Ziraelle написал(а):

Вроде вот так.

почему-то тебе я доверяю больше, чем Оцелоту и готов не вникать в код - он мне просто нравится своей компактностью ))))

завтра попробую заменить его )

Только одно маленькое уточнение: а этот код рассчитан на какой возраст - до бесконечности и как-то проверяет кратность "возраста"??

686

Код рассчитан на любой срок, он просто проверяет последнюю цифру (две в случае 10-20) и подставляет соотв. слово.
Немного ошиблась в пред. версии в днях.

Код

<div align="center" style="color:#000066; font-size: 6pt"><b>Возраст нашего мира:
    <script language="javascript" type="text/javascript"><!--

        var y, m, d, age = 0;
        var mt, dt, yt=0;
        var yname, mname, dname;
                var ytt, ytt1;
                var dtt1;

        Begin3 = new Date(2012, 04, 05);
        Today = new Date();

                age = (Today - Begin3) / 1200000;
   
                y = (age / 365.25);
        m = (1 - (Math.ceil(y) - y)) / (1 / 12);
        d =31 * (m - Math.floor(m));
 
        mt=Math.floor(m);
        dt=Math.floor(d);
        yt=Math.floor(y);
 

                if(mt>10 && mt<20) mname = "месяцев";
                else if(mt>1 && mt<5) mname = "месяца";
                else if(mt == 1) mname = "месяц";
                else mname = "месяцев";

                dtt1 = dt%10;

                if(dt>10 && dt<20) dname = "дней";
                else if(dtt1>1 && dtt1<5) dname = "дня";
                else if(dtt1 == 1) dname = "день";
                else dname = "дней";
               
               
                ytt = Math.abs(yt)%100;
                ytt1 = yt%10;

                if(ytt>10 && ytt<20) yname = "лет";
                else if(ytt1>1 && ytt1<5) yname = "года";
                else if(ytt1 == 1) yname = "год";
                else yname = "лет";

        document.write(Math.floor(y) + " " + yname + " " + Math.floor(m) + " "  + mname + " " + Math.floor(d) + " " + dname );
        //--></script></b></div>
    </div>
</div>
</div>

687

waw, waw, waw, Марго )))

688

Ziraelle написал(а):

Код рассчитан на любой срок, он просто проверяет последнюю цифру (две в случае 10-20) и подставляет соотв. слово.
Немного ошиблась в пред. версии в днях.

мисс конгениальность!!

запустил, тестим, спасибо: что-нибудь хочешь в подарок? :)

689

VELVET написал(а):

в чём именно ошибка действующего кода?

Там вроде бы всё было нормально, и даже условие case yt == 100 было на "лет"
Незнаю, я в этом в принципе не разбираюсь, но понятно что глюк у кода произошёл

Ziraelle написал(а):

Вроде вот так.

Как этот работает уже не понятно =)

690

VELVET написал(а):

запустил, тестим, спасибо: что-нибудь хочешь в подарок?

Да нет, что ты, мне просто было интересно )

OcelotJungle написал(а):

Как этот работает уже не понятно =)

Если тебе это действительно интересно могу обьяснить

691

Ziraelle написал(а):

Если тебе это действительно интересно могу обьяснить

Давай

692

Ну вот смотри на примере годов

Склонение идет в основном по последней цифре (т.е. 45 склоняется как 55 и как 135), отличие только для диапазона 10-20 (110-120)
Сотни никакого значения в склонении не играют, поэтому мы в первую очередь убираем их:

[yt - это года, остальное - временные переменные]

ytt = Math.abs(yt)%100;
Тут мы получаем  остаток от деления на 100 - т.е. в случае 115 лет остаток будет 15.

ytt1 = yt%10;
Это - получение последней цифры (остаток от деления на 10) - т.е. для 115 это будет 5

Дальше проверяем

if(ytt>10 && ytt<20) yname = "лет";
Если десятки входят в диапазон 10-20 - возвращаем значение "лет"

else if(ytt1>1 && ytt1<5) yname = "года";
Если нет, то смотрим по последней цифре (ytt1)  - диапазон 2-4 - возвращаем "лет"

else if(ytt1 == 1) yname = "год";
если не входит в этот диапазон - то проверяем не цифра ли это 1 (тогда на выходе год)

else yname = "лет";
во всех остальных случаяч, не перечисленных выше (т.е. 6-9) возвращаем также лет.

693

Ziraelle написал(а):

Ну вот смотри на примере годов

Склонение идет в основном по последней цифре (т.е. 45 склоняется как 55 и как 135), отличие только для диапазона 10-20 (110-120)
Сотни никакого значения в склонении не играют, поэтому мы в первую очередь убираем их:

[yt - это года, остальное - временные переменные]

ytt = Math.abs(yt)%100;
Тут мы получаем  остаток от деления на 100 - т.е. в случае 115 лет остаток будет 15.

ytt1 = yt%10;
Это - получение последней цифры (остаток от деления на 10) - т.е. для 115 это будет 5

Дальше проверяем

if(ytt>10 && ytt<20) yname = "лет";
Если десятки входят в диапазон 10-20 - возвращаем значение "лет"

else if(ytt1>1 && ytt1<5) yname = "года";
Если нет, то смотрим по последней цифре (ytt1)  - диапазон 2-4 - возвращаем "лет"

else if(ytt1 == 1) yname = "год";
если не входит в этот диапазон - то проверяем не цифра ли это 1 (тогда на выходе год)

else yname = "лет";
во всех остальных случаяч, не перечисленных выше (т.е. 6-9) возвращаем также лет.

Супер, я бы до такого не додумался!

694

Гугл в помощь )

695

Ziraelle написал(а):

Гугл в помощь )

Не-не - до этого реально мало, кто додумывается: я же даже за деньги просил мне помочь!!
(на размер оплаты в 50-200 р. не обращай внимания - всё равно идей/предложений больше не было)

Ты сделала то, что мне нужно было - компактный и простой бесконечный учёт всех лет с правильным отображением окончаний.
Но до этого я не мог найти человека, который мог бы разъяснить, что эту задачу надо решать именно таким подходом/алгоритмом.

696

VELVET написал(а):

основном по последней цифре (т.е. 45 склоняется как 55 и как 135), отличие только для диапазона 10-20 (110-120)
Сотни никакого значения в склонении не играют, поэтому мы в первую очередь убираем их:
[yt - это года, остальное - временные переменные]

Ех... А я в колледже такие проги пачками писал... И про эти "Лет, Год" тоже... А щас на своей "любимой" работе отупел ((((

697

NewOldMax написал(а):

Обратный эффект х108

Где ты столько этого песка выкапываешь?

698

norcrel написал(а):

Где ты столько этого песка выкапываешь?

Да его в аду просто завались, уже железо кончилось лопаты делать

699

Так, чуваки - сегодня на нашем "любимом" федеральном канале собирают бабло для помощи пострадавшим при наводнении на востоке РФ.
Быстренько включили телек и отправили пару смсок ))

Кто не отправит, может больше не высказывать своё мнение на этом сервере о том, в какой он стране живёт  :D

P.S.: мы с женой отправили чуть больше 500 р - не бог весть что, но всё-таки...

700

VELVET написал(а):

Кто не отправит, может больше не высказывать своё мнение на этом сервере о том, в какой он стране живёт 

Молодцы. Мы тоже в стороне не остались!!!


Вы здесь » BBya World » Флуд » Свеженафлуженный флуд