#include <iostream>
#include <cmath>
using namespace std;
int main()
{
unsigned short n_max_przekatna_akwarium;
cin >> n_max_przekatna_akwarium;
float przekatna;
unsigned long long odp = 0;
for (unsigned short a = 1; a < n_max_przekatna_akwarium; a++) {
for (unsigned short b = a; b < sqrt(pow(n_max_przekatna_akwarium, 2) - pow(a, 2) - 1); b++) {
for (unsigned short h = b; h < n_max_przekatna_akwarium; h++) {
przekatna = sqrt(pow(a, 2) + pow(b, 2) + pow(h, 2));
if (przekatna <= n_max_przekatna_akwarium) {
if (ceilf(przekatna) == przekatna) {
odp++;
//cout << "Podstawa " << a << " na " << b << ", wysokosc " << h << ", przekatna " << przekatna << endl;
if (h != a) {
odp++;
//cout << "+" << endl;
}
if (h != b && a != b) {
odp++;
//cout << "+" << endl;
}
}
}
else {
break;
}
}
}
}
cout << odp;
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | #include <iostream> #include <cmath> using namespace std; int main() { unsigned short n_max_przekatna_akwarium; cin >> n_max_przekatna_akwarium; float przekatna; unsigned long long odp = 0; for (unsigned short a = 1; a < n_max_przekatna_akwarium; a++) { for (unsigned short b = a; b < sqrt(pow(n_max_przekatna_akwarium, 2) - pow(a, 2) - 1); b++) { for (unsigned short h = b; h < n_max_przekatna_akwarium; h++) { przekatna = sqrt(pow(a, 2) + pow(b, 2) + pow(h, 2)); if (przekatna <= n_max_przekatna_akwarium) { if (ceilf(przekatna) == przekatna) { odp++; //cout << "Podstawa " << a << " na " << b << ", wysokosc " << h << ", przekatna " << przekatna << endl; if (h != a) { odp++; //cout << "+" << endl; } if (h != b && a != b) { odp++; //cout << "+" << endl; } } } else { break; } } } } cout << odp; return 0; } |
English