Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int nwd(int a, int b);
- int najwieksza = 0;
- int main()
- {
- int liczbaLiczb;
- cin >> liczbaLiczb;
- int *liczby = new int[liczbaLiczb];
- for (int i = 0; i < liczbaLiczb; i++)
- {
- cin >> liczby[i];
- }
- for (int i = 0; i < liczbaLiczb; i++)
- {
- for (int j = 0; j < liczbaLiczb; j++)
- {
- if (i >= j)
- {
- continue;
- }
- else if (nwd(liczby[i], liczby[j]) > najwieksza)
- {
- najwieksza = nwd(liczby[i], liczby[j]);
- }
- }
- }
- cout << najwieksza;
- }
- int nwd(int a, int b) {
- int c; //tworzymy zmienną c o typie int
- while (b != 0) //tworzymy pętlę działającą gdy b ≠ 0
- {
- c = a%b; //zmienna c przyjmuje wartość a modulo b
- a = b; //przypisujemy b do a
- b = c; //przypisujemy c do b
- }
- return a; //zwracamy a, czyli żądane NWD(a,b)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement