PDA

نسخه کامل مشاهده نسخه کامل : یه برنامه جالب به زبان c



zahra 67
05-05-2007, 09:27
برنامه ای -به زبان سی یا سی ++ -که 15 عدد رو ازورودی دریافت کند واون اعداد روصعودی به نزولی-بزگ به کوچک - مرتب کنه .مساله مهم این
برنامه اینه که می بایست بدون استفاده از آرایه ها نوشته بشه
فکر می کنم باید از یک چیز جدیدی در نوشتن این برنامه استفاده کنیم
نمی دونم چطور میشه این اعداد رو در حافظه کامپیوتر ذخیره کرد وبا هم مقایسه شون کرد. آیا میشه با استفاده از چندین "if" ،
در برنامه اعداد را از کوچک به بزرگ مرتب کرد


من خودم این برنامه رو با استفاده از آرایه ها به راحتی نوشتم ولی خوب مشکلم اینه که باید با یک خلاقیتی این برنامه هارو بدون آرایه ها نوشت .


ممکنه منو راهنمایی بفرمایید .

zahra 67
05-05-2007, 09:38
راه اول اینه که 15 تا متغیر تعریف کنید و با if های متوالی اونها رو مرتب کنبد. این مساله در وهله اول ساده به نظر می یاد. اما مرتب کردت خود متغیرها که داخل آرایه نیستن کار می بره.
راه دوم استفاده از لیبت پیوندیه.
اینها تنها دو راهی هستن که به ذهن من رسیدن. هر کدوم ویژگی های مخصوص خودش رو داره. راه اول علیرغم ظاهر ساده خودش خیلی خیلی طولانیه. چرا که نیاز به بررسی تمام حالات ممکنه بین متغیرها رو داره. راه دوم هم مربوط به مباحث ساختمان داده هاست .

نمی دونم ،نظر شما چیه . .؟؟ فکر می کنید می شه این برنامه رو نوشت . .؟

peyman1987
07-05-2007, 08:47
خيلي راهها داره مثلا استفاده از فايل يا همين دو راهي که شما گفتين.

zahra 67
08-05-2007, 11:03
به نام پروردگار
با سلا م

این هم چند تا دیگه از نظرات دوستان که برام نوشتند . گفتند :

1.اگر بخوای با if بنویسی که خیلی زیاد میشه .فکر می کنم 15! بار if می خواهد .... !! نمی دونم ..؟

2.از روش ricorsive ویا حلقه بازگشتی استفاده کنید ،بد نیست .

** معلومه از فایل نمی خواهم استفاده کنم .

tahir66
13-05-2007, 00:28
سلام دوست من.شما می تونین از روش های مرتب سازی استفاده کنید
مثلbucket sort
این سایت هم می تونه کمکتون کنه البته برنامه هاش به پاسکاله اما می دونم که واستون کاری نداره به c بنویسین.موفق باشین
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

zahra 67
14-05-2007, 17:51
با سلام .
ممنوم از شما دوست گرامی

نه ،من متاسفانه پاسکال بلد نیستم . :41:
البته دارم کم کم دارم سعی می کنم بنویسمش .

با سپاس فراوان . zahra 67