查找每月第一天的星期几

时间:2017-09-05 21:30:04

标签: python algorithm date math formula

如果我们知道每月第一天的天数,怎么可以计算一周中的哪一天? 可以说我们一周有1到7天 如果第一个= 5(星期五),那么我想得到月中第4天的数字,那么结果应该是1(星期一)。

   function drawChart($id) {
     var id=$id;
     var kwexist = (id + "_kw_exist");
     var kwexistvariable = $("#"+kwexist).html();

     var kwled = (id + "_kw_led");
     var kwledvariable = $("#"+kwled).html();

 var data = google.visualization.arrayToDataTable([
      ['Element', 'Density', { role: 'style' }, { role: 'annotation' } ],
      ['Existant kWh', parseFloat(kwexistvariable), '#3B7CC9', parseFloat(kwexistvariable)],
      ['LED kWh', parseFloat(kwledvariable), '#3B7CC9' , parseFloat(kwledvariable)]
    ]);


    var options = {

    };

      var numberFormat = new google.visualization.NumberFormat({
            groupingSymbol: ' '
        })

        numberFormat.format(data, 1);


    var chart_div = document.getElementById('chart_div_kw');
    var chart = new google.visualization.ColumnChart(chart_div);


    // Wait for the chart to finish drawing before calling the getImageURI() method.
    google.visualization.events.addListener(chart, 'ready', function () {
      chart_div.innerHTML = chart.getImageURI();
      var testokok = chart.getImageURI();
      console.log(chart_div.innerHTML);
    });


    chart.draw(data, options);
  }
  

(a = 4,b = 5)= 1

我试图计算通用公式:

1st - 5 Friday
2nd - 6 Saturday
3rd - 7 Sunday
4th - 1 Monday

因此它适用于除a = 3,10,17,24,31之外的所有情况,因为结果= 0,但应该是7。 为了让这个公式适用于所有日子,如何解决?

1 个答案:

答案 0 :(得分:3)

您需要避免结果为零。这是一种方式:

result = (a + b - 2) % 7 + 1

你从你的总和中减去一个,允许零并在前一天工作,然后你取模7的余数得到可以包括零的那一天,然后加一个得到想要的那天并避免零。请注意,操作顺序将在添加模数之前执行模数。如果您想更明确地说明,可以使用

result = ((a + b - 2) % 7) + 1