Today I'd like to teach you all about one of my all time favorite constants: π!
Most likely, all of you know that π is the ratio of a circle's circumference to its diameter, and probably only know only 3 to 5 decimal digits of it. However, π is an irrational number, meaning it has no end! Let us go through all of the different formulae of π I have programmed, and explain what they mean! Let's dive in. (These are numbered in the order that they print when the attached code is run)
- The Monte Carlo Method
One way you can do this is by drawing a square, with a circle whose edges touch the 4 edges of that square within. Now imagine you were to draw many many dots randomly within the square-circle hybrid. If you take the number of points that fell within the circle, divide it by the total number of points, and multiply it by 4, you get (you guessed it) π!! More info can be found here:
- The Chudnovsky Algorithm
This is one of the fastest methods out there, being used in the world record, to calculate 50 trillion digits of π! I already explained it in a previous post, but the formula (and more cool information!) is here:
- The Basel Problem
This problem, posed by a man named Pietro Mengoli, asked for the exact sum of an infinite series, with proof. Mathematician Leonhard Euler answered this, with proof, finding it to equal exactly π^2/6. Further info and interesting facts here:
- The Wallis Product
Unlike the other formulae here, this one uses the Product Operator in its equation. If repeated over an infinite number of times, it will equal π/2. More information here:
- The Leibniz Formula
Last but certainly not least, I have here probably one of the slowest π-convergent methods out there. In fact, to get π accurately to 10 decimal places takes about 5 billion iterations, according to the Wikipedia page! This formula alternates between adding and subtracting fractions with odd denominators (meaning this is an example of an alternating series), and converges on π/4. For extra information, go here:
I plan to make more π approximation programs in the future, so stay tuned if these kinds of things interest you as much as they interest me!
Thank you. ^ ^
@LizFoster So, affine ciphers just follow the expression
ax+b mod 26 where
mod is the modulus function and
x is the alphanumeric code from the letter you are given. The alphanumeric code is where a=0, b=1, c=2, ... Monoalphabetic substitution is where every letter stands for another distinct letter (no two letters stand for the same letter) without any equation where you just have to guess and check. Vigenere is where you have a key that repeats along the length of the plaintext (text you are encrypting) or ciphertext (text you are decrypting) and you add the alphanumeric value of a letter in the plaintext with the corresponding letter of the key or subtract the alphanumeric value of the key letter from a the letter in the ciphertext. Then, RSA uses
v^e mod n where (e, n) is the public key and v is the value to encrypt. You also just change e to d (private key) to decrypt a value as well. Those are just the basics of some of the ciphers. Would you like me to explain further about how to do plaintext attacks and how to decode monoalphabetic ciphers?