👤

Doua numere sunt prime între ele dacă cel mai mare divizor comun al lor este 1. Scrieți un program care citește de la tastatură un număr natural n ș afișează toate numerele mai mici si prime cu el .
Exemplu: pentru n = 10 se afișează 1,3,7,9


Răspuns :

#include <iostream>
using namespace std;
int d, i, r, n, j;
int main()
{
    cin >> n;
    cout << 1 << " ";  // nr 1 este prim cu oricare numar
    for(j = 2; j < n; j ++)
    {
        d = n;
        i = j;
        r = d % i;
        while(r != 0)
        {
            d = i;
            i = r;
            r = d % i;
        }
        if(i == 1) cout << j << " ";
    }
    return 0;
}