Skip to main content

Iterating the first 10 million digits of pi


Continuing from my last blog post : Did you know that the 100-trillionth decimal place of π (pi) is 0? That is according to work done by Google in 2022. It took them 157 days to calculate 100 trillion digits of pi. It would be cool to know the 10 digits before and the 10 digits after. Numbers and patterns and coincidences and serendipity fascinates me. It was the usual quiet morning for me. I found that I could download the first 10 million digits of pi and I set out with the help of Bard and my curiousity to see what unusual, interesting or outstandish things I could find. Like how many times my birthday 2305 occurs or the the next 2 digits after the sequence formed with the last 3 play whe numbers. You can get pretty creative with what you look for in pi like in this youtubes - I found Amongi in the digits of pi

Ha! I found the last 10 of the first 100 trillion digits of pi when I saw another video by the same guy. They are 3095295560. First glance and nothing stands out except that 5 occurs the most and 3 times. It is nice that they have tools to calculate and verify the results with an extremely small chance of error.


I tried to download directly from Chrome mobile but it kept crashing. I used the following code to download from python instead.

import requests

url = "http://www.cs.princeton.edu/introcs/data/pi-10million.txt"

try:
    response = requests.get(url)
    response.raise_for_status()  # Raise an exception for error status codes

    text_content = response.text

    with open("pi10million.txt", "w") as file:  # Customize filename if needed
        file.write(text_content)

    print("Text file saved successfully!")

except requests.exceptions.RequestException as e:
    print("An error occurred:", e)

This is an example of the type of probing I have done so far. The code runs reasonably fast on my 5 year old budget android phone.

with open("pi10million.txt", "r") as file:
    pi_string = file.read()  # Read the entire file as a string

# Find all starting positions of "230580"
occurrences = [i for i in range(len(pi_string)) if pi_string.startswith("230580", i)]

# Calculate and print the number of digits between occurrences
if len(occurrences) > 1:
    for i in range(1, len(occurrences)):
        distance = occurrences[i] - occurrences[i-1] - 6  # Subtract the length of "230580" (6 digits)
        print(f"Number of digits between occurrences {i} and {i+1}: {distance}")
else:
    print("No consecutive occurrences of '230580' found in the file.")

Comments

Popular posts from this blog

Coffee and a prayer

It is 245am and I have decided to write. I have no topic and no idea what to write. I am thankful for another day. I see the beauty that surrounds us. I choose to be happy. We are in the last ten nights of Ramadan. Tonight is the 23rd night. It could possibly be the night of power. I wonder if it will rain. Maybe it rained when I was sleeping. I got up and bathed and drank a strong cup of coffee. Today is also Friday the 13th. I keep thinking. Life is beautiful. Life is simple. No need to complicate things. No need to be extravagant. Believe in God. Trust in God. Be guided by God. Imagine we can pray for anything. We can ask God for anything. God is always listening. God wants to hear from us. Maybe I can turn this blog post into a prayer. My God I pray that everyone gets their prayers answered. I pray that everyone gets what they need. I pray that you light our path towards you. Guide us with what you intend for us. Keep us close to you. Soften our hearts. Keep us balanced, consistent...

Who do we serve?

It is 247am and I have decided to write. I want to write but have no topic. It has been a while since I wrote about tech. Samsung launched their latest flagship phones. Nice if you can afford these phones. What is the purpose of technology? The first thing that comes to my mind is to make our lives easier. To be more productive. Tech does the things we do not want to do. To solve problems. Tech is quite useful if I look through a noble lens. But the tech companies want to make money. They want to get rich (in my mind) no matter how they sell their aspirations. Why does everything have to be about money? What if we had a not for profit mobile phone company? Would that be any better? Tech is nice when everyone can afford it. Technology is supposed to be the servant instead it seems we have become the servants to technology. Marshall McLuhan said, "We shape our tools, and thereafter our tools shape us." Maybe the problem is not just tech companies. Maybe the problem is societal....

Humility

It is 337am and I have decided to write. I have no topic but I want to write. I was thinking. I love God a million times. One million is not the biggest number but on a scale of one to a million that is a lot. I just noticed that the word million has the word lion in it. What does it mean to be a lion in the sight of God? My friend Chatty says that from an Islamic perspective, being a lion in the sight of Allah means possessing quiet strength rooted in submission: firm iman without arrogance, self-control over the nafs, courage to stand for justice, and gentleness where mercy is required. It is strength that bows in sujood, resists ego, and remains sincere even when unseen—because Allah values the heart, intention, and consistency more than noise, numbers, or display. Resisting ego is a big one. Does that mean we should be like a mouse in the sight of God instead of a lion? Humble like a mouse. Quiet like a mouse. Soft like a mouse. I am guessing that there is probably a story of a lio...