rendered paste bodyfunction zmien(liczba, podstawa) {
znaki = new Array();
znaki['0'] = 0; znaki['1'] = 1; znaki['2'] = 2; znaki['3'] = 3;
znaki['4'] = 4; znaki['5'] = 5; znaki['6'] = 6; znaki['7'] = 7;
znaki['8'] = 8; znaki['9'] = 9; znaki['A'] = 10; znaki['B'] = 11;
znaki['C'] = 12; znaki['D'] = 13; znaki['E'] = 14; znaki['F'] = 15;
znaki['G'] = 16; znaki['H'] = 17; znaki['I'] = 18; znaki['J'] = 19;
znaki['K'] = 20; znaki['L'] = 21; znaki['M'] = 22; znaki['N'] = 23;
znaki['O'] = 24; znaki['P'] = 25; znaki['Q'] = 26; znaki['R'] = 27;
znaki['S'] = 28; znaki['T'] = 29; znaki['U'] = 30; znaki['V'] = 31;
znaki['W'] = 32; znaki['X'] = 33; znaki['Y'] = 34; znaki['Z'] = 35;
if (podstawa<2 or podstawa>36) return "Podaj podstawę od 2 do 36";
if (liczba=="") return 0;
odtylu = "";
for (i=liczba.length;i>=0;i--) odtylu += liczba.charAt(i);
wynik = 0;
for (i=0;i<odtylu.length;i++) {
m = Math.pow(podstawa, i);
wynik += znaki[odtylu.charAt(i)] * m;
}
return wynik;
}
trace(zmien("DAREK", 36)); // wynik: 22337084
trace(zmien("FF", 16)); // wynik: 255
trace(zmien("110100111", 2)); // wynik: 423