using System.Collections.Generic;
double[] input = {123, 893, 4, 12394};
string encodedString = encodeString(toBase, input);
Console.WriteLine(encodedString);
public string encodeString(double baseNum, double[] input)
throw new Exception("Can't use base higher that 62");
List<string> finalEncodedString = new List<string>();
foreach (double num in input)
List<double> remainders = new List<double>();
while (quotient >= baseNum)
remainder = quotient % baseNum;
quotient = Math.Floor(quotient / baseNum);
remainders.Add(remainder);
remainder = quotient % baseNum;
remainders.Add(remainder);
List<string> encodedString = new List<string>();
List<double> reverseRemainders = new List<double>();
for (var z = remainders.Count - 1; z >= 0; z--)
reverseRemainders.Add(remainders[z]);
foreach (double r in reverseRemainders)
int z = Convert.ToInt32(r);
char character = Convert.ToChar(z + 55);
encodedString.Add(character.ToString());
else if (z >= 36 && z < 62)
char character = Convert.ToChar(z + 61);
encodedString.Add(character.ToString());
encodedString.Add(r.ToString());
string result = String.Join("", encodedString);
finalEncodedString.Add(result);
finalResult = String.Join(",", finalEncodedString);