1
誰も私に時間の数の数式を作成する方法を教えてもらえますか?次のコードで実行されますか?ネストされたループから数学的表現を作成する
私は 'iループ'がn/P回繰り返すことを理解しており、合計++を知っています。 「iループ反復」*「jループ反復」の合計を実行します。しかし、私はnとPの点でこれから数学的表現を得る方法を知らない。
#include <iostream>
using namespace std;
int total = 0;
int n = 20;
int P = 2;
int id = 1;
int test = 0;
int main()
{
for (int i = id*n/P; i < ((1+id)*n/P); i++)
{
cout << i << endl;
test++;
for (int j = 1; j <= i-1; j++) {
total++;
}
}
cout << test << endl;
cout << total;
return 0;
}
ヒント:ネストされたループは、外側のループが実行されるたびにもう一度実行されます。 (sum1、n)= n *(n + 1)/ 2のよく知られた公式がある。ループは1から始まらないことに注意してください。 – Attila
ああ、このループはよくわかります、それはOです(宿題^ 2) –
外側のループが1回実行されるとどうなりますか?二倍? 3回?可能な一般的なルールが見えますか?あなたは誘導によってそれを証明できますか? –