Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth
Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

42,623 questions

55,358 answers

573 users

How to compute the day of the week for January 1st of any given year in Go

1 Answer

0 votes
package main

import (
    "fmt"
    "time"
)

/*
    This program determines the day of the week for January 1st of a given year.

    Approach:
    ---------
    Go provides built‑in date/time handling through the time package:
        - time.Date(year, month, day, hour, min, sec, nsec, location)
        - t.Weekday() : returns a time.Weekday value (Sunday..Saturday)

    Weekday values:
        time.Sunday, time.Monday, time.Tuesday, time.Wednesday,
        time.Thursday, time.Friday, time.Saturday

    This avoids manual calendar arithmetic and uses efficient built‑in routines.
*/

// Convert time.Weekday to a readable string
func weekdayName(wd time.Weekday) string {
    return wd.String() // Already returns "Monday", "Tuesday", etc.
}

// Compute weekday of January 1st for a given year
func jan1Weekday(year int) string {
    // January 1st at midnight, using the local system timezone
    dateValue := time.Date(year, time.January, 1, 0, 0, 0, 0, time.Local)

    return weekdayName(dateValue.Weekday())
}

func main() {
    year := 2026

    result := jan1Weekday(year)
    fmt.Printf("January 1st, %d falls on a %s.\n", year, result)
}


/*
run:

January 1st, 2026 falls on a Thursday.

*/

 



answered Jul 11 by avibootz

Related questions

...