SHARE
TWEET

Untitled

a guest Jun 19th, 2019 57 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int nzd(int a, int b) {
  5.     int min = a < b ? a : b;    // manji broj
  6.     // trazimo najveci broj koji moze da podeli oba argumenta
  7.     for (int i = min; i > 0; i--) {
  8.         // vracamo prvi (najveci) na koji naidjemo
  9.         if (a % i == 0 && b % i == 0) {
  10.             return i;
  11.         }
  12.     }
  13.  
  14.     // ako nismo nasli ni jedan drugi,
  15.     // 1 uvek moze da podeli oba broja
  16.     return 1;
  17. }
  18.  
  19. // broj uzajamno prostih brojeva sa n
  20. // brojevi su izmedju 1 i n
  21. int ojler(int n) {
  22.     int rez = 0;        // broj uzajamno prostih brojeve
  23.     for (int i = 1; i < n; i++) {
  24.         // brojevi su uzajamno prosti
  25.         // ako im je nzd = 1
  26.         if (nzd(i, n) == 1) {
  27.             rez++;  // nasli smo uzajamno prost broj sa n
  28.         }
  29.     }
  30.  
  31.     return rez;
  32. }
  33.  
  34. int main() {
  35.     int m;
  36.     cout << "Unesite m: ";
  37.     cin >> m;
  38.  
  39.     cout << ojler(m) << endl;
  40.  
  41.     return 0;
  42. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top