største fælles divisor (xcy, z)

S

smslca

Guest
kan vi finde værdien af ​​GCD (xcy, z) nemt og meget hurtigt ved hjælp af en computer. hvor 1. "C" repræsenterer "kombinationer", der anvendes i 'permutationer og kombinationer. 2. x er meget meget stort antal (ex: kan være på 100 eller 1000 numeriske cifre) 3. y er også store med 2 til 5 cifre er mindre end x. 4. z er også stort at have samme antal cifre som x.
 
Jeg håber, jeg får spørgsmålet rigtigt, men ja, kan du få et hurtigt og korrekt svar at finde den GCD af xCy og z. Skriv et program, helst i C / C + + (helst bare fordi jeg kan lide det: D). I koden, lave en funktion til xCy, for eksempel: int xCy (int x, int y). Retur værdien i en variabel, int kombi, (du kan selvfølgelig bruge float for) Så definere GCD funktion. Fx: int GCD (Combi, int z); Alternativt kan du også ringe xCy () fra GCD () direkte som en parameter.
 
GCD er triviel: int GCD (int a, int b) {while (1) {a = a% b, hvis (a == 0) returnere b b = b% a; if (b == 0) returnere et ;}} Dit problem er C + + gør matematiske beregninger på 32 eller 64 bit data. Hvad du behøver, er en lang række bibliotek til at understøtte 1000 cifret tal. Jeg anbefaler: https://mattmccutchen.net/bigint/
 

Welcome to EDABoard.com

Sponsor

Back
Top