Главная Мой профиль Регистрация Выход Вход
Приветствую Вас Гость
Среда
24.04.2024
08:02
Clan hsm
Меню сайта
Альбомы
Мои фотографии [0]
Моя семья [0]
Мини-чат
Наш опрос
Оцените мой сайт
Всего ответов: 20
В настоящий момент 0 фотографий в 2 альбомах.

Новые фотографии фотоальбома

Форма входа
Друзья сайта
require 'mathn' runes = gets.downcase if runes.size > 1000 puts "Line too long." exit end rune_list = [ "No Rune", "El Rune", "Eld Rune", "Tir Rune", "Nef Rune", "Eth Rune", "Ith Rune", "Tal Rune", "Ral Rune", "Ort Rune", "Thul Rune", "Amn Rune", "Sol Rune", "Shael Rune", "Dol Rune", "Hel Rune", "Io Rune", "Lum Rune", "Ko Rune", "Fal Rune", "Lem Rune", "Pul Rune", "Um Rune", "Mal Rune", "Ist Rune", "Gul Rune", "Vex Rune", "Ohm Rune", "Lo Rune", "Sur Rune", "Ber Rune", "Jah Rune", "Cham Rune", "Zod Rune"].map{|x| x.downcase } getrunevalue = proc do |rune| index = rune_list.index(rune) exit unless index if index >= 21 #pul 2 ** (index - 21) else 3 ** (index - 21) end end sum = 0 runes_size = 0 runes = runes.split(/[\s]+/).map do |runestring| if runestring =~ /(\d+)(.*)/ sum += getrunevalue[$2 + " rune"] * ($1.to_i) runes_size += $1.to_i else sum += getrunevalue[runestring + " rune"] runes_size += 1 end end.flatten #p runes.sort{|a,b| rune_list.index(a+" Rune") <=> rune_list.index(b+" Rune")} puts "#{sum.to_f} Puls of #{runes_size} runes total. Avg: #{sum/runes_size.to_f}" sum1 = sum sum = sum1.floor sum1 -= sum rune = 21 ans = [] while sum > 0 if sum % 2 == 1 ans << rune_list[rune] end sum = (sum/2).floor rune += 1 break if rune == 33 end rune = 20 while rune > 0 sum1 = sum1 * 3 if sum1 >= 1 ans << rune_list[rune] sum1 -= 1 end if sum1 >= 1 ans << rune_list[rune] sum1 -= 1 end rune -= 1 end ans.sort!{|r1,r2| rune_list.index(r1) <=> rune_list.index(r2)} ans << "Zod Rune" if sum == 1 ans << "#{sum} Zod Runes" if sum > 1 puts "

This is #{ans.join(", ").split(" ").map{|x| x[0..0].upcase + x[1..-1]}.join(" ")}

"

 Copyright MyCorp © 2024
Сделать бесплатный сайт с uCoz