LINUX.ORG.RU

Доля Linux игр в вашей библиотеке Steam

 , ,


0

2

В связи с увеличением количества игр всевозможных жанров, интересно узнать соотношение количества игр, доступных под Linux к общему количеству игр.

У меня сейчас round(40.88%) -> 41%:

#!/usr/bin/env node

q = { "GAMES": 137, "STEAMOS + LINUX": 56  }
console.log(Math.round(
    q["STEAMOS + LINUX"] / q["GAMES"] * 100
))

  1. NaN 386 (39%)

    ********************************************************************************************************************************************************************************************************************************************************************************************************************************

  2. 100% 156 (16%)

    *********************************************************************************************************************************

  3. меньше 10% 72 (7%)

    ***********************************************************

  4. 90..99% 61 (6%)

    **************************************************

  5. 40..49% 50 (5%)

    *****************************************

  6. 30..39% 49 (5%)

    ****************************************

  7. 80..89% 46 (5%)

    **************************************

  8. 60..69% 45 (5%)

    *************************************

  9. 50..59% 38 (4%)

    *******************************

  10. 20..29% 35 (4%)

    *****************************

  11. 70..79% 35 (4%)

    *****************************

  12. 10..19% 25 (3%)

    ********************

Всего голосов: 998

★★★★★

Проверено: beastie ()
Последнее исправление: KennyMinigun (всего исправлений: 4)

Traceback (most recent call last):
  File "<stdin>", line 3, in <module>
ZeroDivisionError: float division by zero
te111011010
()
Ответ на: комментарий от KennyMinigun

te111011010, Почини

Подожди, что ты починил? Может неправильно понял мой псто? Смысл у него был примерно такой же, как и у поста beastie.

te111011010
()
Ответ на: комментарий от snoopcat

кстати, давайте уж тогда нодосрач устроим.

annelin@nevermore ~ » time ./igor.sh 
40.87591240875912408700

real	0m0.002s
user	0m0.000s
sys	0m0.002s
annelin@nevermore ~ » time ./igor.js 
40.87591240875913

real	0m0.038s
user	0m0.034s
sys	0m0.005s
snoopcat ★★★★★
()
Ответ на: комментарий от KennyMinigun
annelin@nevermore ~ » cat igor.sh 
#!/bin/bash

round()
{
echo $(printf %.$2f $(echo "scale=$2;(((10^$2)*$1)+0.5)/(10^$2)" | bc))
};


total=137
linux_and_steamos=56
round `echo "$linux_and_steamos/$total*100" | bc -l` 0


annelin@nevermore ~ » time ./igor.sh 
41

real	0m0.004s
user	0m0.002s
sys	0m0.002s

where is your god now? ☺

snoopcat ★★★★★
()
Последнее исправление: snoopcat (всего исправлений: 1)
Ответ на: комментарий от snoopcat

ну и на всякий случай

function math.round(value, precision)
	local mult = 10^(precision or 0)
 	return math.floor(value * mult + 0.5) / mult
end

total=137
linux=56

print(math.round(linux/total*100, 0))
annelin@nevermore ~ » time lua igor.lua 
41

real	0m0.001s
user	0m0.000s
sys	0m0.001s
snoopcat ★★★★★
()
Ответ на: ну и на всякий случай от snoopcat

Тогда нестареющая классика:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

void usage(const char *name, int rc) {
    fprintf(stderr, "%s [total] [steamos+linux]\n", name);
    exit(rc);
}

int main(int argc, char *argv[]) {
    if (argc < 3) {
        usage(argv[0], EXIT_FAILURE);
    }

    long all = atol(argv[1]);
    long steamos = atol(argv[2]);

    if (all != 0) {
        long part = (long)round((double)steamos / all * 100);
        printf("%ld\n", part);
    } else {
        puts("N/A");
    }

    return EXIT_SUCCESS;
}
$ gcc -std=c99 -Wall -Wextra -pedantic -O3 math.c -o c_math -lm
$ time ./c_math 137 56
41

real    0m0.002s
user    0m0.000s
sys     0m0.000s

KennyMinigun ★★★★★
() автор топика
Ответ на: комментарий от beastie

ну и как же тут без однострочника на перле?

perl -e 'printf "%.0f\n", 56 / 137 * 100
41

Только вот случай "мимокрокодил" не отрабатывается :)

KennyMinigun ★★★★★
() автор топика
Ответ на: комментарий от KennyMinigun

лол, чому у тебя на сишечке медленнее, чем у меня на луа?
алсо, я думал, мы тут за скриптовые языки разговариваем.

snoopcat ★★★★★
()
Ответ на: комментарий от snoopcat

Нудк, Эдик было предлагал скриптовать на сишечке :)

лол, чому у тебя на сишечке медленнее, чем у меня на луа?

Не знаю, у самого баттхерт.

UPD Хотя, у меня аргументы парсит, а у тебя хардкод

KennyMinigun ★★★★★
() автор топика
Последнее исправление: KennyMinigun (всего исправлений: 1)
Ответ на: комментарий от KennyMinigun

не убедил

function math.round(value, precision)
	local mult = 10^(precision or 0)
 	return math.floor(value * mult + 0.5) / mult
end

function usage()
	io.stderr:write("./test.lua <total> <steamos+linux>\n")
	os.exit()
end

-- argv --
if #arg < 2 then usage() end
-- main --
local all = tonumber(arg[1])
local steamos = tonumber(arg[2])
local result = 'N/A'

if all ~= 0 then result = math.round(steamos/all*100, 0) end
print(result)
annelin@nevermore ~ » time lua test.lua 137 56
41

real	0m0.001s
user	0m0.000s
sys	0m0.001s
snoopcat ★★★★★
()
Ответ на: :( от snoopcat

Всё, справедливость восстановлена. Можно идти спать :)

KennyMinigun ★★★★★
() автор топика
Ответ на: комментарий от snoopcat

Заради NaN. Там изначально питон был, но для мимокрокодилов он ошибку выкидывал. На быструю руку починил

KennyMinigun ★★★★★
() автор топика
Ответ на: комментарий от KennyMinigun

Мну было лень. ;) Но, лови: http://play.golang.org/p/plycPZe1bv

$ time ./games 
Ratio 41%

real    0m0.002s
user    0m0.000s
sys     0m0.000s

Ну и, для моего случая: ;)

$ time ./games -games 0 -steam 0
Ratio NaN%

real    0m0.001s
user    0m0.004s
sys     0m0.000s

beastie ★★★★★
()
Последнее исправление: beastie (всего исправлений: 1)

50% — одна игра из GoG, вторая в Steam, которую хочу заменить на DRM-Free.

Ещё есть HL2 под вайном, но она уже не в счёт, ибо вайн я снёс.

r3lgar ★★★★★
()

100% ибо куплена только CS 1.6

kas501 ★★★
()
4 июня 2015 г.

35% Советую попробовать Sid Meier's Civilization® V и Cities: Skylines

neon1ks ★★
()
Ответ на: комментарий от backburner

Ты тролль или просто не видишь, что в коде написано?

RevenantX ★★★★
()

У меня только DOTA 2 из всех игр в steam

rezedent12 ☆☆☆
()
Ответ на: комментарий от Amet13

Питоно-версия опросного скрипта насчитала 25% (48/194).

justAmoment ★★★★★
()
Python 3.4.3 (default, Mar 25 2015, 17:13:50) 
[GCC 4.9.2 20150304 (prerelease)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> linux = 29
>>> all = 81
>>> linux/all
0.35802469135802467
>>> 
user_id_68054 ★★★★★
()

Лень считать, но думаю «90..99%». win-only игорей по идее одна или две, купленных за копейки на распродаже в надежде что когда-нибудь их портанут.

MrClon ★★★★★
()

11/16 = 0.6875

69%

Оффтопик-онли игры получены на халяву и ни разу не запускались, покупал только нативные.

Psych218 ★★★★★
()
Последнее исправление: Psych218 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.