2016-04-09 2 views
0

Я довольно новичок в программировании, и у меня есть трудное время с завершением функции, используемой в моем домашнем задании. Ниже у меня есть код для функции, которая предназначена для того, чтобы принять введенный месяц, вычесть из нее 1 и добавить количество введенных дней. Возврат общего количества дней. Например, если m = 4, days = 3, то он пройдет через цикл for и добавит 31 + 28 + 31 + 4. Я был бы очень признателен за вашу помощь. Спасибо за ваше время!MATLAB- Добавление терминов в массив

function bday=daysinmonth(m, d) 

    array=[31 28 31 30 31 30 31 31 30 31 30 31]; 

    for i=1:m-1 

     md=sum(array(i)) 

    end 

    %sum=md+d 
end 

ответ

0

Массив, содержащий количество дней для каждого месяца, является хорошей отправной точкой. Тогда я не понимаю, почему вы повторяете до месяца. То, что вы ищете сумму до текущего месяца, так что-то вроде:

md=sum(array(1:m-1)); 

И да, то вы можете добавить текущий день накопленных дней от предыдущих месяцев с

sum=md+d; 

Вы также хотите убедиться, что вы вернете этот номер с помощью

function sum=daysinmonth(m, d) 
Смежные вопросы