All SolutionsAll Solutions

📅

Friday 13th

Week 7, 2026

Python - Datetime Lib | BMC | Python Solutions

#%% from datetime import date for year in range(1, 10000): for month in range(1, 13): if date(year, month, 13).weekday() == 4: print(f"{year:04d}-{month:02d}-13")

does not pad year with zeros though | Draw6 | C++ Solutions

//Paste your solution here if you want to share it publicly#include <iostream> #include <iomanip> #include <ctime> int main() { for (int year = 0001; year <= 9999; ++year) { for (int month = 0; month < 12; ++month) { std::tm time_in = {0, 0, 0, 13, month, year - 1900}; // 13th day std::time_t time_temp = std::mktime(&time_in); std::tm *time_out = std::localtime(&time_temp); if (time_out->tm_wday == 5) { // 5 corresponds to Friday std::cout << std::put_time(time_out, "%Y-%m-%d") << std::endl; } } } return 0; }

Using built-in datetime package | greenya | Odin Solutions

package main import "core:fmt" import "core:time/datetime" main :: proc () { first_day := datetime.Ordinal(1) last_day, _ := datetime.date_to_ordinal({ year=9999, month=12, day=31 }) for day in first_day..=last_day { weekday := datetime.day_of_week(day) if weekday == .Friday { date, _ := datetime.ordinal_to_date(day) if date.day == 13 { fmt.printfln("%4i-%2i-%2i", date.year, date.month, date.day) } } } }

No library, Write to file | THOMAS L | Python Solutions

//Paste your solution here if you want to share it publicly with open("example.txt", "w") as f: daysInMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] day = 0# loops from 0 - 6 for year in range(9999): for month in range(12): numDays = daysInMonth[month] if month == 1: if (year + 1) % 4 == 0: if (year + 1) % 100 == 0: if (year + 1) % 400 == 0: numDays = 29 else: numDays = 29 for date in range(numDays): if day == 4 and date == 12: yStr = str(year + 1) mStr = str(month + 1) dStr = str(date + 1) yStr = (4 - len(yStr)) * "0" + yStr mStr = (2 - len(mStr)) * "0" + mStr dStr = (2 - len(dStr)) * "0" + dStr f.write(yStr + "-" + mStr + "-" + dStr + "\n") day = (day + 1) % 7

curdy | Peiran D | Python Solutions

//Paste your solution here if you want to share it publiclyfrom datetime import date, timedelta def find_friday_13ths(): friday_13ths = [] for year in range(1, 10000): for month in range(1, 13): try: current_date = date(year, month, 13) if current_date.weekday() == 4: friday_13ths.append(current_date.strftime("%Y-%m-%d")) except ValueError: continue return friday_13ths results = find_friday_13ths() for date_str in results: print(date_str)

DataTime-Sys | KellerW | Python Solutions

import datetime import sys original_stdout = sys.stdout date = datetime.date(1, 1, 1) with open('output.txt', 'w') as f: sys.stdout = f while date.year <= 9999: if date.strftime("%A") == "Friday" and date.day == 13: print(date) date += datetime.timedelta(days=1)