مرتب سازی سه عدد
مثال 19 از فصل 2 که خیلی ها اشکال داشتند.
این سوال سه عدد را مرتب می کنه. سه عدد َA و B و C را می گیره و در صورت لزوم , مقادیرشون را جابه جا می کنه. اگر می خواهید این سوال را بفهمید قبلش باید حتما جابه جایی دو متغیر با کمک متغیر میانی که توی پست 23 بهش اشاره کردم و توی امتحان کلاس 103 ایی ها اومده بود را بلد باشید.
در این حل, به گونه ای مقادیر متغیرها عوض می شود که در A بزرگ ترین مقدار ذخیره شود و در C کوچک ترین مقدار.
برای راحتی فهم شما با عدد مثال می زنم. فرض کنید A=4 و B=5 و c=7 است. مرتب شده این سه عدد برابر4,5,7 است.
در لوزی اول بررسی می کند که آیا A کوچک تر از B هست یا خیر. اگر کوچک تر بود مقدار این دو را عوض می کند. مثلا در مثال ما B=4 می شود و A=5.
پس از این مرحله مطمئنیم که A حتما مقداری بزرگ تر از B دارد.
حالا باید جایگاه A و B را نسبت به C مشخص کنیم. در مرحله بعدی بررسی می کند که آیا A کوچک تر از C است. اگر چنین باشد مقدار این دو را باهم عوض می کند تا A دارای بزرگ ترین مقدار باشد. اگر هم چنین نباشد یعنی A کوچک تر از C نباشد لزومی به جابه جایی نیست چون A دارای مقدار بزرگ تر هست. در مثال ما چون A=5 شده و C=7 لازم است که جای این دو عوض شود. پس داریمA=7 و C=5 و B=4 باقی می ماند.
در مرحله بعدی جایگاه B و C با هم بررسی می شوند تا در صورت لزوم جابه حا شوند. اگر B کوچک تر از C شده باشد و یا باشد لازم است که مقدار این دو عوض شود. در مثال ما لازم است.پس A=7 همچنان باقی می ماند ولی B=5 و C=4 می شود.
پس از این مرحله, مطمئن هستیم که A دارای بییشترین مقدار و c دارای کمترین مقدار هست.
سعی کنید با اعداد دیگر هم اجرا کنید تا بهتر بفهمید.

* این وبلاگ، مکانی برای اطلاعرسانی به دانشآموزان کلاس اول دبیرستان فرزانگان کاشان (درس رایانه) بود! :)