Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <math.h>
- using namespace std;
- string KonwertujDoLiczbyBinarnej(int n)
- {
- string wynik="";
- while(n!=1)
- {
- if(n%2==0)
- {
- wynik='0'+wynik;
- n=n/2;
- }
- else
- {
- wynik='1'+wynik;
- n=n/2;
- }
- }
- wynik='1'+wynik;
- return wynik;
- }
- int KonwertujDoLiczbyDziesietnej(string n)
- {
- int i,d=n.size(),s=0;
- for(i=0;i<d;i++)
- {
- if(n[i]=='1')
- {
- s = s + pow(2, d-1-i);
- }
- }
- return s;
- }
- int ZnajdzNWDEuklides(int n, int m)
- {
- while(n != m){
- if(n > m){
- n = n - m;
- }
- else {
- m = m - n;
- }
- }
- return n;
- }
- int main ()
- {
- string a,b;
- int n,m, liczbaTestow;
- cout << "Podaj liczbe testow z przedzialu od 1 do 9" << endl;
- cin >> liczbaTestow;
- for(int i = 0; i < liczbaTestow; i++){
- cout << "Podaj dwie liczby zapisane w systemie binarnym dla ktorych chcesz wyznaczyc NWD" << endl;
- cin>>a>>b;
- n=KonwertujDoLiczbyDziesietnej(a);
- m=KonwertujDoLiczbyDziesietnej(b);
- cout << "NWD(" << a << ", " << b << ")= " << KonwertujDoLiczbyBinarnej(ZnajdzNWDEuklides(n, m)) << endl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement