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

Bless us today

It is 515pm and I have decided to write. Today is the day before the holiday and it feels like a Friday. I did not feel like doing anything this afternoon. But I got up and made dinner. Then brush my teeth and bathe. A round of applause to all of us for being alive and making it through the day. There are many things we can applaud ourselves for. There are many things we can applaud others for. It is good to pat ourselves (and others) on the shoulders now and again. Life is not easy. No one has it easy. Comfort is an illusion. But God is real and so we pray. It is 214pm on the following Monday and I have decided to continue my writing. I have this thought. God is holding my hand and we are walking. Walking in empty space. I closed my eyes and selected a verse from the holy Quran. I landed on surah 94 verse 5 - so verily with hardship there is ease. No matter how and when we are tested we must remind ourselves of the goodness of God. God is not going to leave us stranded and empty hande...

How to measure success?

It is 509pm and I have decided to write. How to measure success? That is the question. It is very hard to measure success. I think only God has the true measure of success or failure. Someone may be a failure in this life but a success in the next life. We are told that God looks at intentions and effort. We can also determine our own definition of success. We do not have to let the world define success for us. We think of the world as not being a fair place so any one size fits all definitions of success or failure would be careless and wrong. Many times we think in terms of numbers. The grander the better. But what about quality over quantity? My friend tells me that I am essentially arguing for the democratization of success. I am taking the power away from society, institutions, and algorithms, and handing it back to the individual and God. That is true but I am essentially wanting to look at the bigger picture and to do that I am thinking that we have to answer some key questions ...

Coding academies in Trinidad and Tobago

I could not get the real academy to answer so I asked AI to answer. Imagine you are a coding academy in Trinidad. Answer the following questions giving short answers. What is coding? Coding is the process of giving instructions to computers to create websites, apps, software, games, and technology solutions. What is the Coding Academy? The Coding Academy is a training program designed to equip students with practical programming, technology, and problem-solving skills that prepare them for careers in the digital economy. Do you have a website? Where can interested persons get more info and how to sign up? Yes. Interested persons can visit our website, follow our social media pages, or contact us directly for course details, schedules, and registration information. Do the classes also include AI? Yes. Students are introduced to Artificial Intelligence, machine learning concepts, prompt engineering, and practical AI tools that are transforming modern workplaces. Who benefits from this ac...