PDA

View Full Version : سوال: تقسیم یک عدد به بزرگ ترین



Life24
چهارشنبه 20 مرداد 1395, 23:52 عصر
سلام
دوستان من یادم نیست اسم این مورد چیه
یک عدد دارم میخواهم به دو عدد که بالاترین هست بشه ، تقسیمش کرد
مثلا
47=7*7
48=6*8
72=9*8
چطور میشه این دو عدد میانبر زد و به دست اورد؟

nunegandom
پنج شنبه 21 مرداد 1395, 00:48 صبح
سلام واضح تر بیان کنید

Life24
پنج شنبه 21 مرداد 1395, 01:11 صبح
سلام واضح تر بیان کنید

عدد 47 رو میشه به صورت 7 در 7 نوشت میشه به صورت 47 در 1 نوشت
عدد 90 رو میشه 9 در 10 نوشت میشه 30 در 3 نوشت
من 9 در 10 و 7 در 7 رو در این دو مثال میخواهم
ماکسیمم دو عدد مکن

nunegandom
پنج شنبه 21 مرداد 1395, 01:33 صبح
ب م م


static int GCD(int[] numbers)
{
return numbers.Aggregate(GCD);
}

static int GCD(int a, int b)
{
return b == 0 ? a : GCD(b, a % b);
}

Life24
پنج شنبه 21 مرداد 1395, 01:48 صبح
نه عزیز ب م م نیست

nunegandom
پنج شنبه 21 مرداد 1395, 01:52 صبح
اسم این قضیه چی بود :لبخند:

دلتنگ اسمان
پنج شنبه 21 مرداد 1395, 07:41 صبح
با سلام
یه روش اینکه از اون عدد اصلی جذر بگیری(البته مقدار int رو حساب کنی).
و بعد داخل یه حلقه عدد اصلی رو بر این عدد بدست اومده(حاصل جذر) تقسیم کنی اگه حاصل تقسیم عدد int بود که جواب بدست اومده در غیر اینصورت یه واحد از اون عدد کم کن و بعد دوباره
عدد اصلی رو بر این عدد تقسیم کن و ....
البته در مثال شما یه اشتباه محاسباتی هم بود یعنی 7*7=49 میشه.
مثال:
90 رو جذر میگیریم میشه : 9.48 که قسمت صحیح میشه:9 . حالا باتقسیم 90 بر 9 عدد بعدی بدست میاد.
یا 49 رو جذر میگیریم که میشه :7 . با تقسیم عدد 49 بر 7 عدد بعدی هم بدست میاد.
البته در مثالهای بالا با یه تقسیم به جواب میرسیم در مثال زیر به تقسیم بیشتری نیاز داریم.
مثلا عدد50 رو در نظر بگیریم : با حاصلضرب اعداد زیر بدست میاد: 5*10 و 2*25 و 1*50 که منظور شما 5*10 هستش.
جذر 50 میشه :7 با احتساب int .
با تقسیم 50 بر 7 حاصل عدد صحیح نیست پس 50 رو بر 6 تقسیم میکنیم که باز هم جواب صحیح نیست و مجدد 50 رو بر 5 تقسیم میکنیم اینبار جواب صحیح بدست میاد.
امیدوارم کمکتون کرده باشم.

Life24
پنج شنبه 21 مرداد 1395, 11:36 صبح
ممنون از راهنمایی شما
کلا بخواهیم ، یک عدد به دو عدد تقسیم بشه که حاصلضربش هون عدد هست . چی؟
مثلا 90
حالا یا 15 در 2
یا 10 در 90
فرق نداره

دلتنگ اسمان
پنج شنبه 21 مرداد 1395, 14:54 عصر
ممنون از راهنمایی شما
کلا بخواهیم ، یک عدد به دو عدد تقسیم بشه که حاصلضربش هون عدد هست . چی؟
مثلا 90
حالا یا 15 در 2
یا 10 در 90
فرق نداره

لطفا بیشتر توضیح بدید.
بازهم اشتباه محاسباتی : فکر کنم منظورتون 15*6 یا 10*9 باشه درسته؟
اگه فقط دو عدد میخوای که از حاصلضربشون عدد اصلی بدست بیاد (بدون هیچ شرطی؟) خب میتونی عدد اصلی رو در داخل حلقه بر اعداد طبیعی بزرگتر از 1 تقسیم کنی.
مثلا 90 رو بر 2 تقسیم کنی عدد بعدی بدست میاد. (البته همه اعداد زوج رو میتونی بر 2 تقسیم کنی تا عدد بعدیش یدست بیاد).
برای اعداد فرد هم باید از تقسیم بر 3 شروع کنی تا زمانی که حاصل تقسیم، عدد اعشاری نباشه.

اگه منظورتون رو درست متوجه شده باشم.