using System.Globalization;
public static void Main()
Console.WriteLine(GetWeeksInMonth(new(2025, 6, 1)));
private static int GetWeeksInMonth(DateTime date)
Calendar calendar = CultureInfo.CurrentCulture.Calendar;
DateTime firstDay = new(date.Year, date.Month, 1);
int days = DateTime.DaysInMonth(date.Year, date.Month);
DateTime lastDay = new(date.Year, date.Month, days);
Console.WriteLine(lastDay);
int firstWeek = calendar.GetWeekOfYear(firstDay, CalendarWeekRule.FirstDay, DayOfWeek.Monday);
Console.WriteLine(firstWeek);
int lastWeek = calendar.GetWeekOfYear(lastDay, CalendarWeekRule.FirstDay, DayOfWeek.Monday);
Console.WriteLine(lastWeek);
return (lastWeek - firstWeek) + 1;