Нужно выяснить количество тестовых случаев, чтобы достичь этой программы
Банк предлагает следующие ипотечные ставки:
Термин Скорость
10 лет 3.00%
30 лет 4,50%
Со следующими модификаторами, основанными на кредитном балле клиента:
Модификатор Ставки Кредитного Балла
От 300 до 699 2.00%
От 700 до 799 0.00%
От 800 до 850 -0,50%
Фактическая ставка по ипотеке рассчитывается с использованием как срока, так и кредитного балла. Например, если человек нуждается в 10-летней ипотеке и имеет кредитный рейтинг 550, то ставка будет равна: 3% + 2% = 5%. Если другой человек нуждается в такой же ипотеке, но имеет кредитный рейтинг 810, ставка составит 3% - 0,50% = 2,50%.
float calculaterate(int term, int score)
{
плавающая ставка = 0;
если (термин = = 10)
скорость = 0,03 f;
иначе если (термин = = 30)
скорость = 0,045 f;
если (оценка >= 800)
норма возврата-0.005 f;
иначе если (оценка >= 700)
скорость возврата ;
иначе если (оценка >= 300)
скорость возврата + 0,02 f;
бросить новое исключение argumentoutofrangeexception();
}
Количество тестовых случаев, необходимых для достижения 100% покрытия кода, составляет
Что я уже пробовал:
I оценка: 10, Оценка: 300, результат:
0.05
оценка: 10, Оценка: 700, результат:
0.03
оценка: 10, Оценка: 850, результат:
0.025
оценка: 30, оценка: 300, результат:
0.065
ставки: 30, рейтинг: 700, результат:
0.045
оценка: 30, оценка: 850, результат: