ฉันไม่แน่ใจด้วยซ้ำว่าจะทำเช่นนี้โดยไม่ใช้โซลูชันที่น่ากลัวสำหรับลูป / เคาน์เตอร์ นี่คือปัญหา:
ฉันได้รับวันที่สองวันที่เริ่มต้นและวันที่สิ้นสุดและตามช่วงเวลาที่ระบุฉันต้องดำเนินการบางอย่าง ตัวอย่างเช่น: สำหรับทุกวันที่ระหว่าง 3/10/2552 ในทุก ๆ วันที่สามจนถึงวันที่ 3/26/2009 ฉันต้องสร้างรายการในรายการ ดังนั้นอินพุตของฉันจะเป็น:
DateTime StartDate = "3/10/2009";
DateTime EndDate = "3/26/2009";
int DayInterval = 3;
และผลลัพธ์ของฉันจะเป็นรายการที่มีวันที่ดังต่อไปนี้:
3/13/2009 3/16/2009 3/19/2009 3/22/2009 3/25/2009
แล้วผมจะทำยังไงกับเรื่องนี้ ฉันคิดเกี่ยวกับการใช้ for for loop ที่จะวนซ้ำระหว่างทุกวันในช่วงที่มีตัวนับแยกเช่น:
int count = 0;
for(int i = 0; i < n; i++)
{
count++;
if(count >= DayInterval)
{
//take action
count = 0;
}
}
แต่ดูเหมือนว่าจะมีวิธีที่ดีกว่า