PDA

View Full Version : عدد بزرگتر بین دو عدد بدون استفاده از شرط



amir master
دوشنبه 01 اسفند 1384, 14:49 عصر
با سلام
الگوریتم پیدا کردن عدد بزرگتر بین دو عدد بدون استفاده از شرط رو اگه کسی میدونه به ماهم بگه

small_programmer
شنبه 06 اسفند 1384, 06:37 صبح
قبلا در بخش برنامه نویسی به زبان c به آن پاسخ داده شده

اَرژنگ
دوشنبه 08 اسفند 1384, 13:04 عصر
قبلا در بخش برنامه نویسی به زبان c به آن پاسخ داده شده

اگر منظورتان از اینکه جواب داده شد اینه:

http://www.barnamenevis.org/forum/showthread.php?t=32991&highlight=%C8%CF%E6%E4+%C7%D3%CA%DD%C7%CF%E5+%C7%D 2+%D4%D1%D8

متاسفانه، خیر، جواب داده شده جوابی که معلمها به شاگردها بلغور میکنند و درست نیست.
برایه اینکه ببینید چرا درست نیست، به تعریف abs یک نگاه بندازید، متوجه میشید که هنوز هم از شرط داره استفاده میشه.
این سوال را میشه به ریاضی جواب داد، ولی از لیمیت و توان استفاده میشه که از حده آشنائی دانشجوهایه معمولی یکمی بالتره.

amir master
دوشنبه 08 اسفند 1384, 14:34 عصر
خوب اَرژنگ خوان شما جواب درست رو بدید که ما هم شاید اگه IQ مون اجازه داد بفهمیم

اَرژنگ
دوشنبه 08 اسفند 1384, 17:16 عصر
آقا شما شوخی میکنید؟ من الان ۱۵ ساله دنباله جواب درست این سوال میگردم، جوابی که اینجا عرضه شد را ۱۳ ساله پیش دیدم ( در یک کتاب دیدم ، یعنی اینکه خودم پیدا نکردم ).
وقی که گفتم جواب ریاضی از سطحه دانش جوهایه معمولی بیشتره منظورم این نبود که من سطحم از دانشجوهایه معمولی بالاتره، مطمعنم پائین تر هست ولی نه بالاتر. من یک دوست داشتم که رفت مدرسه تیزهوشان، مطمعنم که اون (یا هر تیز هوش دیگری) جواب این سوال را یکضرب میده. من فقط میدونم که جواب درست نیست، ولی اینکه جواب درست چیه از سطح من، یک تا صد کیلومتر بالاتره.
جواب ریاضی ( که من در یک کتاب دیدم ، یعنی اینکه خودم پیدا نکردم و بعد از کلی تلاش تازه یکمی سر دراوردم که چرا درسته ) این بود:



lim n->inf (a^n+b^n)^(1/n)


منتها من فکر نمیکنم که جواب این سوال به بالا یا پائین بودن IQ ربط داشته باشه، بعضیها مخشان یک جوره دیگه فکر میکنه، فقط همان، شاید بعد از ۱۵ ساله دیگه چیزی را که برایه انجور ادمها واضح و مشخص است را با کلی سختی و مشقت پیدا کنم.

sh_roohani
دوشنبه 08 اسفند 1384, 19:22 عصر
سلام،
ببخشید آرژنگ جان، ممکنه ما رو هم راهنمایی کنین، شاید سر در بیاریم (همون یه کمی که خودتون سر درآوردین، اگه ممکنه به ما هم بگین). آخه اینطوری که به نظر می رسه، جواب این حد باید صفر بشه.

ممنون.

mehdi_394
دوشنبه 08 اسفند 1384, 23:43 عصر
max=(a >b)*a+ (b>a)*b
این عبارت برای همه ی کامپایلر ها جواب درست می ده فقط بر حسب اینکه کامپایلر برای true چه مقداری را برگشت می دهد یک تغییر اندکی می کند.من فرض کردم که کامپایلر برای true عدد 1 و برای false عدد 0 را بر می گرداند.

حال اگر کامپایلر بخصوصی برای true عدد -1 (منهای یک) عبارت به صورت زیر تغییر خواهد کرد :
(max =((a>b)*a+2a)+((b>a)*b+2b

ab_ba
سه شنبه 09 اسفند 1384, 08:09 صبح
چطور میشه که abs شرطه و لی (a>b ) شرط نیست
این مساله جواب ندارد چرا که بالاخره یکجا باید a , b باید باهم مقایسه شوند

اَرژنگ
سه شنبه 09 اسفند 1384, 14:06 عصر
سلام،
ببخشید آرژنگ جان، ممکنه ما رو هم راهنمایی کنین، شاید سر در بیاریم (همون یه کمی که خودتون سر درآوردین، اگه ممکنه به ما هم بگین). آخه اینطوری که به نظر می رسه، جواب این حد باید صفر بشه.

ممنون.


Assume b>a
(a^n+b^n)^(1/n)= ( (a^n+b^n)*b^n/b^n )^(1/n)
= ( (a^n/b^n + 1 )^(1/n) ) *b
= ( ( (a/b)^n + 1 )^(1/n) ) *b
lim n->inf (( (a/b)^n + 1 )^(1/n) = 1 ( remember a<b )

hence
lim n->inf (a^n+b^n)^(1/n)= 1 * b = b ( thats is max(a,b) )


در ضمن برایه تفریح به این نکته که


lim n->inf ( 1 + 1/n )^n = e
and not = 0 or 1

یکمی تمرکز کنید.
من هم اول که اینها را دیدم فکر کردم جواب ۱ یا صفر باشه.

seyedof
سه شنبه 09 اسفند 1384, 22:03 عصر
سلام
آره ولی اینکه باید عددی حل بشه ! یعنی اصولا یک راه حل ریاضی است نه برنامه نویسی. شما توی مثلا سی دستوری برای حد گرفتن دارید؟ باید کلی کد نوشته بشه تاحد رو بشه محاسبه کرد.
ممنون علی

اَرژنگ
چهارشنبه 10 اسفند 1384, 15:49 عصر
سلام
آره ولی اینکه باید عددی حل بشه ! یعنی اصولا یک راه حل ریاضی است نه برنامه نویسی.

سلام
جوابی که داده شده عددی هست، الگریتم یعنی راهه حل، راهه حل ریاضی یا برنامه نویسی نداره، برایه مثال یک نگاه به این کتاب بندازید:
http://www.introductiontoalgorithms.com



شما توی مثلا سی دستوری برای حد گرفتن دارید؟ باید کلی کد نوشته بشه تاحد رو بشه محاسبه کرد.
ممنون علی
برایه بدست آوردن حد هیچ کدی لازم نیست نوشته بشه فقط از اعداد مختلف باید استفاده بشه.

small_programmer
جمعه 12 اسفند 1384, 06:14 صبح
سلام خدمت دوستان
آدرس اون تاپیکی که می گفتم اینه
http://www.barnamenevis.org/forum/showthread.php?t=18826
البته اگه اون تاپیک رو کامل خونده باشید متوجه شدید که من اونجا گفتم این کار به نظر من قابل انجام نیست اگه شما می گید قابل انجامه کدی ارائه بدید که اون کار رو انجام می ده اونوقت می
شه حرف شما رو قبول کرد
واقعیتش من که ریاضی ام زیاد قوی نیست از کجا معلوم این فرمول درسته
ممنون

اَرژنگ
یک شنبه 14 اسفند 1384, 14:07 عصر
سلام خدمت دوستان
آدرس اون تاپیکی که می گفتم اینه
http://www.barnamenevis.org/forum/showthread.php?t=18826
البته اگه اون تاپیک رو کامل خونده باشید متوجه شدید که من اونجا گفتم این کار به نظر من قابل انجام نیست


بر چه اصلی و یا مبنائی میگید که نمیشه، دلیل و یا منطق نشدن چیه. در ریاضیات یاد میدن که چطوری قابل انجام نبودن کاری را اثبات کرد، برایه مثال یک نگاه به Halting Problem بیاندازید.



اگه شما می گید قابل انجامه کدی ارائه بدید که اون کار رو انجام می ده اونوقت می
شه حرف شما رو قبول کرد
واقعیتش من که ریاضی ام زیاد قوی نیست از کجا معلوم این فرمول درسته
ممنون

۱. اسمه این بخش ، بخش الگیتمه، الگریتم با کد ربط نداره.
۲. با ماشین حساب میشه امتحان کرد، الگریتمی که اراعه شد با امتحان چند عدد نوشتن کدش واضح میشه.
۳. این حرف من نیست که کسی بخواد قبول یا رد کنه، واقعیت ریاضیه.
۴. برایه دیدن اثبات این رابطه ( نه فرمول) در کتابهایه Mathematical Analysys جستجو کنید پیدا میکنید، من این مثال را از http://www.amazon.com/gp/product/0387907211/qid=1141556776/sr=1-1/ref=sr_1_1/002-1997610-4995263?s=books&v=glance&n=283155 به یادم مانده بود.در ضمن نهوه اثباتش را هم که فرستادم.
۵. بعد از امتحان کردن چند عدد در ان فرمول اینکه n باید تقریبی چی انتخواب بشه که جواب نزدیک باشه واضح میشه.
۶. ریاضیاتتان را قوی کنید، روزی نیم ساعت وقت بگذارید بسه، از کجا معلوم شما استعداد خوبی برایه ریاضیات نداشته باشید؟ حداقل یک امتحان بکنید، تنها اشکال، سعی کردن یادگرفتن از کتابهایه فارسی است، برایه کلماتی که ندارند چرندیات میبافند و یا از لغات عربی استفاده میکنند، بهترین زبان برایه یاد گرفتن ریاضی انگلیسی است.

small_programmer
دوشنبه 15 اسفند 1384, 20:51 عصر
آقا آرژنگ ممنونم از اینکه به حرفهام توجه کردی وجوابم رو دادی
در مورد نصیحتت در مورد یادگیری ریاضی خودم که چشمم آب نمیخوره
ممنون