§þłijŧȉǩȃɖəɹ

From Esolang
Jump to navigation Jump to search
The title of this article is also called Splitikader.
This is still a work in progress. It may be changed in the future.

Splitikader is invented by PSTF. Note that this Esolang will controls the uncomputable commands.

You are free to edit this Esolang.

Warning

  1. You can not define a command like these: [somecode: If the input is EAUIXEIUAOPEMRXOAMHDOAHUAIUASHDJAIEJXAUEMXEUMXOUMHDOHAEOUXAOP, delete Germany from this Universe].

Original Command

print(x) prints out x.

=========[Language name]========= will change the language to language name. This script will execute the command until =================================.

Alpha prints out the poem 《施氏食狮史》.

And all of the code in The craziest Esolang.

Examples

self-repeat

=========[   Python    ]=========
x = int(input())
print(str(x)*x)

Enigma encoding/decoding tool

=========[     C++     ]=========
#include<bits/stdc++.h>
using namespace std;
char wlr1[32] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
char wlr2[32] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
char wlr3[32] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
char wlr4[32] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
char wlr5[32] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
char wlr6[32] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
char rflr[32] = {'d', 'n', 'z', 'a', 'h', 'w', 'm', 'e', 'y', 'u', 'q', 's', 'g', 'b', 't', 'v', 'k', 'x', 'l', 'o', 'j', 'p', 'f', 'r', 'i', 'c'};

char wll1[32] = {'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'z', 'x', 'c', 'v', 'b', 'n', 'm'};
char wll2[32] = {'m', 'n', 'b', 'v', 'c', 'x', 'z', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'p', 'o', 'i', 'u', 'y', 't', 'r', 'e', 'w', 'q'};
char wll3[32] = {'q', 'e', 't', 'u', 'o', 'a', 'd', 'g', 'j', 'l', 'x', 'v', 'n', 'w', 'r', 'y', 'i', 'p', 's', 'f', 'h', 'k', 'z', 'c', 'b', 'm'};
char wll4[32] = {'b', 'n', 'm', 'v', 'c', 'z', 'x', 'g', 'h', 'j', 'k', 'l', 'f', 'd', 's', 'a', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'e', 'w', 'q'};
char wll5[32] = {'p', 'o', 'i', 'u', 'y', 't', 'r', 'e', 'w', 'q', 'l', 'k', 'j', 'h', 'g', 'f', 'd', 's', 'a', 'm', 'n', 'b', 'v', 'c', 'x', 'z'};
char wll6[32] = {'z', 'y', 'x', 'w', 'v', 'u', 't', 's', 'r', 'q', 'p', 'o', 'n', 'm', 'l', 'k', 'j', 'i', 'h', 'g', 'f', 'e', 'd', 'c', 'b', 'a'};
char rfll[32] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
int startp[8] = {0, 0, 0, 0, 0};

string str;
int len;

void jm10(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wll1[(i + startp[1]) % 26] == a)
        {
            cout << char(wlr1[i]);
            break;
        }
    }
}

void jm9(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wll2[(i + startp[2]) % 26] == a)
        {
            jm10(wlr2[i]);
            break;
        }
    }
}

void jm8(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wll3[(i + startp[3]) % 26] == a)
        {
            jm9(wlr3[i]);
            break;
        }
    }
}

void jm7(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wll4[(i + startp[4]) % 26] == a)
        {
            jm8(wlr4[i]);
            break;
        }
    }
}

void jm6(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wll5[(i + startp[5]) % 26] == a)
        {
            jm7(wlr5[i]);
            break;
        }
    }
}

void jm11(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wll6[(i + startp[5]) % 26] == a)
        {
            jm7(wlr6[i]);
            break;
        }
    }
}

void fsq(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (rflr[i] == a)
        {
            jm6(rfll[i]);
        }
    }
}

void jm5(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wlr5[(i + 26 - startp[5]) % 26] == a)
        {
            fsq    (wll5[i]);
            break;
        }
    }
}

void jm4(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wlr4[(i + 26 - startp[4]) % 26] == a)
        {
            jm5(wll4[i]);
            break;
        }
    }
}

void jm3(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wlr3[(i + 26 - startp[3]) % 26] == a)
        {
            jm4(wll3[i]);
            break;
        }
    }
}

void jm2(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wlr2[(i + 26 - startp[2]) % 26] == a)
        {
            jm3(wll2[i]);
            break;
        }
    }
}

void jm0(char a)
{
    for (int i = 0; i < 26; i++)
    {
        if (wlr6[(i + 26 - startp[2]) % 26] == a)
        {
            jm3(wll6[i]);
            break;
        }
    }
}

void jm1(char a)
{
    if ('A' <= a && a <= 'Z')
    {
        a += 32;
    }
    if ('a' <= a && a <= 'z')
    {
        for (int i = 0; i < 26; i++)
        {
            if (wlr1[(i + 26 - startp[1]) % 26] == a)
            {
                jm2(wll1[i]);
                break;
            }
        }
        startp[1] += 1;
        if (startp[1] == 26)
        {
            startp[2] += 1;
            startp[1] = 0;
            if (startp[2] == 26)
            {
                startp[3] += 1;
                startp[2] = 0;
                if (startp[3] == 26)
                {
                    startp[4] += 1;
                    startp[3] = 0;
                    if (startp[4] == 26)
                    {
                        startp[5] += 1;
                        startp[4] = 0;
                        if (startp[5] == 26)
                        {
                            startp[5] = 0;
                        }
                    }
                }
            }
        }
    }
    else
    {
        cout << a;
    }
}

/*
 * 所以jm11和jm0有何作用?
 */

// -----------------------------------------------------------

int main()
{
    cout << "输入加/解密内容" << endl;
    getline(cin, str);
    cout << endl;
    len = str.length();
    for (int i = 0; i < len; i++)
    {
        jm1(str[i]);
    }
    return 0;
}
=================================