int main(){ int n, a, b, c, d; char op; int max, min, res; scanf("%d\n",&n); for(int i = 0; i < n; i++){ scanf("%d / %d %c %d / %d",&a,&b,&op,&c,&d); if(op == '/'){ max = b*c; res = a*d; printf("%d/%d = ",res,max); min = mdc(res,max); printf("%d/%d\n",res/min,max/min); } else{ max = b*d; if(op == '+') res = a*(max/b) + c*(max/d); else if(op == '-') res = a*(max/b) - c*(max/d); else if(op == '*') res = a*c; printf("%d/%d = ",res,max); min = mdc(res,max); if(min < 0) min = -1*min; printf("%d/%d\n",res/min,max/min); } } return 0; }
int mdc (int a, int b) { if (a == b) return a; if (a > b) return mdc(b, a-b); else return mdc(a, b-a); }
int mdc(int x, int y) { if (x < y) return mdc(y,x); if (x % y == 0) return y; return mdc(y, x % y); }
uint64_t Prime::mdc(uint64_t a, uint64_t b){ if (a < b) return mdc(b, a); uint64_t resto = a % b; if (resto == 0) return b; else return mdc(b, resto); }
int mdc(int x, int y) { if (x > y) { return mdc(x-y, y); } else if (x < y) { return mdc(y, x); } else { return x; } }
ZZ BlumBlumShub::generate_number() { ZZ p, q; do p = large_prime_generator(nbits); while (p % 4 != 3); do q = large_prime_generator(nbits); while (q % 4 != 3); ZZ n, s; n = p*q; do s = RandomLen_ZZ(nbits); while (mdc(n, s) != 1); vector<ZZ> X; vector<bool> B; X.push_back((s*s) % n); for (int i = 1; i < nbits; ++i) { X.push_back(X[i-1]*X[i-1] % n); int bit = ZZtoi(X[i] & 1); B.push_back(bit); } ZZ num; for (int i = 0; i < B.size(); ++i) { ZZ j; j = i; num += Power(2, B[i]*j); } return num; }
bool wxJigsawEditorCanvas::CreateDragImage(wxJigsawShape * shape) { DestroyDragImage(); do { if(!m_View || !shape) break; double scale = m_View->GetScale(); wxSize shapeSize = shape->GetSize(); wxBitmap bmp(shapeSize.GetWidth() * scale, shapeSize.GetHeight() * scale); wxMemoryDC mdc(bmp); wxFont font = GetFont(); font.SetPointSize(font.GetPointSize()*m_View->GetScale()); mdc.SetFont(font); mdc.SetBackground(wxBrush(wxColour(255, 0, 255))); mdc.Clear(); mdc.SetPen(*wxBLACK_PEN); //mdc.DrawRectangle(0, 0, bmp.GetWidth(), bmp.GetHeight()); wxSize offset(-shape->GetPosition().x*scale, -shape->GetPosition().y*scale); wxLogTrace(wxTraceMask(), _("DragShape offset = (%i,%i)"), offset.GetWidth(), offset.GetHeight()); wxPoint oldPos = shape->GetPosition(); shape->SetPosition(wxPoint(0,0)); shape->RequestSizeRecalculation(); shape->Draw(mdc, wxSize(0,0), m_View->GetScale()); shape->RequestSizeRecalculation(); shape->SetPosition(oldPos); mdc.SelectObject(wxNullBitmap); bmp.SetMask(new wxMask(bmp, wxColour(255, 0, 255))); m_DragImage = new wxDragImage(bmp); return true; } while(false); return false; }
int main() { int n, n1, n2, d1, d2; char b, o; scanf("%d", &n); for (int i = 0; i < n; i++) { int a, b, mdcc; scanf("%d %c %d %c %d %c %d", &n1, &b, &d1, &o, &n2, &b, &d2); switch(o) { case '+': a = (n1*d2 + n2*d1), b = (d1*d2); break; case '-': a = (n1*d2 - n2*d1), b = (d1*d2); break; case '*': a = n1*n2, b = d1*d2; break; case '/': a = n1*d2, b = n2*d1; break; default: break; } mdcc = mdc(a, b); if (mdcc < 0) { mdcc = -mdcc; } printf("%d/%d = %d/%d\n", a, b, a/mdcc, b/mdcc); } return 0; }
int mdc(int n , int m) { if (n % m == 0) { return m; } else { return mdc (m , n % m); } }
int mmc(int num1,int num2) { int div; if(num2 == 0) return num1; else div = (num1*num2)/(mdc(num1,num2)); return (div); }
/* MDC Máximo Divisor Comum,dois números inteiros é o maior número inteiro que divide ambos sem deixar resto. */ int mdc(int a,int b) { if(!b) return a; else return mdc(b,a%b); }
int mdc(int a, int b){ if(b == 0){ return a; } else{ return mdc(b,a%b); } }
/* MMC = mínimo múltiplo comum entre dois números é representado pelo menor valor comum pertencente aos múltiplos dos números. */ int mmc(int a,int b) { int formula; if(!b) return a; else formula = (a*b)/(mdc(a,b)); return (formula); }
int escolha_e(fi_n){ int e = 3; while((1>=e)&&(mdc(e,fi_n) != 1)) e++; return e; }
int main(){ int a, b, casos; scanf("%d",&casos); while(casos--){ scanf("%d %d",&a,&b); printf("%d\n",mdc(a,b)); } return 0; }
int mdc (int x, int y) { if ((y<=x) && (x % y ==0)) { return y; } else { if (x < y) { return mdc(y,x); } else { return mdc(y,(x % y));; } } }
int main (void) { int n, m; fflush (stdin); scanf ("%d",&n); fflush (stdin); scanf ("%d",&m); printf("%d",mdc(n,m)); return EXIT_SUCCESS; }
int main(){ int a,b,c; printf("entre com dois números para que calculemos o máximo divisor comum :\n"); scanf("%i",&a); scanf("%i",&b); printf("O máximo divisor comum entre %d e %d é %d.\n",a,b,(mdc(a,b))); printf("O máximo divisor comum entre %d e %d é %d.\n",a,b,(mdc_recursivo_sub(a,b))); printf("O máximo divisor comum entre %d e %d é %d.\n",a,b,(mdc_recursivo_resto(a,b))); }
int euler_phi(int x){ if(isprime(x)) return x-1; int i, result = 1; for (i=2; i<x; i++){ if (mdc(i, x) == 1){ result++; } } return result; }
main(){ int x,y; printf("Digite dois números inteiros para calcular o MDC entre eles\n"); printf("x: "); scanf("%d",&x); printf("\ny: "); scanf("%d",&y); printf("O mdc é: %d",mdc(x,y)); }
main(){ int num1, num2; do{ printf("\nEntre com dois numeros inteiro positivos: "); scanf("%d, %d", &num1, &num2); }while((num1<=0) || (num2<=0)); printf("O MDC entre %d e %d eh %d",num1, num2, mdc(num1, num2)); getchar(); }
int mdc(int m, int n) { m = ABS(m); n = ABS(n); if(m % n == 0) return n; else return mdc(n, m % n); }
int main () { int a = 0, b = 1, num, n; printf ("entre com n: "); scanf ("%d", &n); printf ("entre com n numeros: "); scanf ("%d%d", &a, &b); num = mdc (a, b); n -= 2; for ( ; n > 0; -- n) { scanf ("%d", &b); num = mdc (num, b); } printf ("o mdc dos n numeros eh %d\n", num); return 0; }
int main () { int n, a, b, i; scanf("%d", &n); for (i = 0; i < n; i++) { scanf("%d", &a); scanf("%d", &b); printf("%d\n", mdc(a,b)); } return 0; }
virtual void run() { long i = 0; while (true) { ENDC ndc("abc"); EMDC mdc("x1", "v1"); mdc.put("x2", "v2"); ELOG_I(logger, "i=%d", i++); ELOG_W(logger, "i=%d", i++); ELOG_E(logger, "i=%d", i++); EThread::sleep(100); } }
int main(){ long x, y, i, j, k; char p1[8]; double db1; int dh, dv; in = stdin; out = stdout; while(42){ fscanf(in, "%ld%ld\n", &x, &y); if (!x || !y) break; fscanf(in, "%s\n", &p1[0]); if (p1[0]=='N') { dh = 0; dv = 0; } else if (p1[0]=='S') { dh = 1; dv = 1; } else if (p1[0]=='L') { dh = 1; dv = 0; } else { dh = 0; dv = 1; } for (i=x, j=y; ((!(i%2)) && (!(j%2))); i /= 2, j /= 2 ); if (i%2) dh = !dh; if (j%2) dv = !dv; k = mdc(x, y); db1 = 100.0/(double)k; i = floor(100.0/(double)k); if (db1-(double)i > 0.5) i++; j = x/k + y/k -2; fprintf(out, "%3ld%%%10ld", i, j); if (dh){ if (dv) fprintf(out, " Sul\n"); else fprintf(out, " Leste\n"); } else { if (dv) fprintf(out, " Oeste\n"); else fprintf(out, " Norte\n"); } } return 0; }
void tests(){ cerr << "#open mdc_arrays BRONZE IF FOR" << endl; cerr << (mdc({2, 4}) == 2); cerr << (mdc({3, 5}) == 1); cerr << (mdc({15, 21}) == 3); cerr << (mdc({15, 45}) == 15); cerr << (mdc({15, 45, 10}) == 5); cerr << (mdc({15, 45, 150}) == 15); }
main() { int x, y; printf("MDC(X, Y)\n\n"); printf("Insira x: "); scanf("%d", &x); printf("Insira y: "); scanf("%d", &y); //Saída printf("\nMDC(%d, %d) = %d", x, y, mdc(x, y)); }
int geraCoprimo( int randonQ){ int aux; do{ printf("\nElelmento entre 1 e %d: ",randonQ); printf("\nSe o elemento nao for coprimo entre com outro numero!"); scanf("%d",&aux); if( aux < 1 || aux > randonQ ){ printf("\nNumero invalido"); aux = 0; printf("%d",aux);} }while( aux == 0 && mdc(aux,randonQ) == 0 ); return aux; }
int * makeTest(int m, int print = 0){ if (print) printf("Exist %d values for a\n", euler_phi(m)); int * ret = (int *) calloc(euler_phi(m), sizeof(int)); int nTest,i =0; for (nTest = 0; nTest < m; ++nTest) { int result = mdc(m, nTest); if(result == 1){ if(print) printf("a = %d\n", nTest); ret[i++] = nTest; } } return ret; }