C++ ALGORYTMY POMOCY!!!
NWD WIELU LICZB

Zadanie
Napisz program, który oblicza największy wspólny dzielnik ciągu liczb naturalnych.

Wejście
W pierwszym wierszu znajduje się liczba naturalna n, nie większa od 100000.
W drugim wierszu znajduje się ciąg n liczb naturalnych, nie większych od 1015.

Wyjście
Liczba równa największemu wspólnemu dzielnikowi wszystkich liczb z ciągu.

Przykład
Dla danych wejściowych

4
21 224 84 1050
poprawną odpowiedzią jest
7


PROSZĘ O POMOC


Odpowiedź :

#include <iostream>

#include <vector>

int nwd(int a, int b){

   int reszta;

   while (true){

       reszta = a%b;

       if (reszta == 0) return b;

       a = b;

       b = reszta;

   }

}

int main(){

   std::vector <int> liczby = {21, 224, 84, 1050};

   int nwd_liczb = liczby[0];

   for (int i = 1; i < liczby.size(); i++){

       nwd_liczb = nwd(nwd_liczb, liczby[i]);

   }

   std::cout << nwd_liczb;

   return 0;

}