# CS and Number Theory Concepts that Might Help (Difficulty đźźĄ not for in gimkit terms, but in real world terms)

This guide is going to help people to more easily make games or heavy computational maps.

Number Theory: Base N

This is a number theory concept. In base n, there are n different digits, from 0 to n-1. Our base 10 system has 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. Each successive digit represents a value of n^(position from right-1). In 465, the 4 represents the 100s place because it is in the 3rd spot and 10^(3-1) is 100. What use does this have for us then? A keyboard can use this concept to make infinite backspaces. It has n different numbers, so the number property will have to be in base n.

However, the interface only uses base 10. How can we encode base n? Well, we multiply each successive digit by an additional power of n to encode it. When we decode it, we factor out the largest digit and go on from there. This should have lots of applications in gimkit, since it is also very useful in the real world!

CS: Loops

In CS, there are 2 types of loops. For loops and while loops. For loops run for a specified amount of repetitions, and while loops run until a condition turns to false. I will focus on while loops because for loops can be built from a while loop. The basic idea of a loop is to have a condition and a block of code to repeat. The variable in the condition will be changed with each repetition. The system moves on to the next part of code when the condition is false. Now how do we repeat things a certain number of times? We set up a dummy variable (i=0). We then make the condition: â€śIs i less than the amount of times I want it to repeat?â€ť. If it is yes, it runs the code and increments i by 1. If it is yes, then it just moves on.

Now, based on this, in Gimkit, the variable will be a property or item amount, and we will use a trigger or checker based on the variable type. We have to edit the property with each repetition. Here is an example of a for loop:

This is overly complicated for granting multiple items and can very much simplified, but the purpose is to make simple for loops. While loops are done in a similar fashion, but the block code is different, and using true/false(boolean) values might be superior in certain cases.

10 Likes

This will be good. #UOTM

3 Likes

1 Like

Bitwise operations.

1 Like

Those arenâ€™t established in gimkit without having lots of lag though.

1 Like

What about loops? Recursion can cause lag, but even only generating 30 random samples in a statistical calculator wonâ€™t cause much lag.

3 Likes

@Blackhole927 what are your thoughts for ideas?

1 Like

Probablyâ€¦

1 Like

Can you specify what a statistical calculator does?

1 Like

Mean, median, mode, standard deviation, variance, confidence interval, z-score, other stuff

3 Likes

Probability distributions

1 Like

I didnâ€™t make one, but I was able to generate random samples and stuff.

2 Likes

Ok. That stuff. My AP Stats class is actually so boring. So is my AP Computer Science class. Theyâ€™re both way too slow for me.

1 Like

Eh, do you find calc-based stats harder?

1 Like

Like using integrals and stuff for probability, and linear regression, and least-squares stuff, and correlation, and stuff (most arenâ€™t calc based)

1 Like

School started 3 weeks ago. We have our Unit 1 test on Monday. So no calc-based stats for now. Also, calc starts next year for me.

1 Like

blackhole is facingâ€¦ problems right now

1 Like

What problems?

1 Like

im not gonna explain it because its business and i donâ€™t know if he wants anyone to share it, but if u wanna find it, he said it in the discord

1 Like

where in the discord?

1 Like