Hej, napisałem program, który ma obliczyć liczbę liczb względnie pierwszych dla podanej liczby. Tzn. wczytuję liczbę np. 10. Na wyjściu ma być 4, ponieważ mamy 4 liczby mniejsze niż 10, które wraz z nią są liczbami pierwszymi (tu 1, 3, 7, 9). Programik niby prosty, ale w systemie oceniania dostaję 2/3 punkty nie wiem na jakim teście się nie zgadza.
#include <iostream>
using namespace std;
int nwd (int a, int b){
int tmp;
while (b != 0) {
tmp = a % b;
a = b;
b = tmp;
}
return a;
}
int main () {
int n, licznik=0;
cin >> n;
for (int i=1; i<n; i++) {
if (nwd(n, i)==1) {
licznik++;
}
}
cout << licznik;
return 0;
}