-5
概要:2つの整数(num1、num2)が与えられた場合、num1 ... num2で割り切れる数の数を返す関数を書く。 例:count(3,15)は5(3,6,9,12,15)を返します。 注:インクルーシブ範囲を考慮する必要があります 入力:2つの数値num1、num2。 num1、num2> = 0与えられた数値で割り切れる数を数えるプログラム
OUTPUT:num1..num2の間でnum1で割り切れる数を返します。
エラーの場合:エラーの場合は-1を返します。 これは私のコードです:
int count(int num1, int num2) {
int temp;
int i, j,k;
i = num1;
j = num2;
temp = 0;
for (k = 1; k <= j;k++)
{
if (k%i == 0)
temp++;
}
return temp;
}
Visual Studioでテストケースを実行している唯一のテストが渡され、別のテストはテストのために渡されていないが。 私が強調した部分は、失敗したテストです。 (countzeroテストケース)
以下は、ツールで実行しようとしたときにスローされるエラーです。
助けてください
テキストの画像を投稿しないでください。 [ask]を読んでください。 – Olaf
あなたができる最も有用なことは、言葉で言えば、あなたのコードがいくつかの簡単なテストケースのために何をすると思いますか自分自身に語りかけることです。それが簡単な場合は、失敗したテストケースから始めることができます。あなたは失敗したケースが何であるかを示していませんが、 'count(9、10)'を試してみましょう。返される答えは "0"でなければならないと思いますが、実装は "1"になります。 'num1'が9で' num2'が10であるときのコードを歩いていく。 –
画像が表示されません。とにかく、あなたが挿入された数字の間の数字を数えたいと言ったように、あなたは 'for'ループで1から始まります。'for(k = num1; k = num2; k ++){if(k%num1 == 0)temp ++;} –