تریس الگوریتم صورت سوال 97:
دو مقدار فرضی:
a=5 , b=2
1. start
2. input a(5),b(2)
3. m ← a(5)
4. a ← b(2)
5. a ← m(5)
6. output a(5),b(2)
7. end
🔎 بیایم دقت کنیم:
• گام 3: مقدار a رو میریزیم توی m.
m=5
• گام 4: مقدار b رو میریزیم توی a.
a=2
• گام 5: مقدار m (که همون a اولیه
بود) رو میریزیم توی a دوباره!
a=5
👉 یعنی در واقع مقدار b که توی مرحله 4 گذاشته بودیم، از بین میره.
پس خروجی چی میشه؟
• a = مقدار اولیهی a(5)
• b = مقدار اولیهی b (اصلاً تغییر نکرده).(2)
ما فرض میگیریم که در گام 5 ، مقدار m که حاوی مقدار متغیر a بود رو میخواسته در متغیر b , انتساب دهد✅
⸻
حالا الگوریتمهای گزینهها رو چک کنیم:
الف
مقدار a (5) را در b (2) ضرب میکند و حاصل را که 10 میشود به متغیر a انتساب میدهد.
مقدار الان a=10
در گام چهارم, a (10) را تقسیم بر b (2) میکند و خارج قسمت آن را (5) به متغیر a انتساب میدهد.
مقدار الان a=5
در گام پنجم ، مقدار متغیر a (5) را تقسیم بر b (2) میکند و خارج قسمت آن را (2) به متغیر b انتساب میدهد.
مقدار الان b=2
در اصل هیچ جابجایی از انجام نداده است.
پس رد گزینه های ۲ و ۴
ب
• w ← a(5)
• m ← b(2)
• a ← m (یعنی a = b)«a=2»
• b ← w (یعنی b = a اولیه)«b=5»
👉 پس این دقیقاً جابجایی a و b هست.
ج
• a ← a+b«5+2=7»
• b ← a-b (یعنی b = a اولیه)
«7-2=5»
• a ← a-b (یعنی a = b اولیه)
«7-5=2»
مقدار نهایی:
a=2
b=5
👉 این هم روش معروف جابجایی با جمع و تفریق هست.
⸻
@KonkorFanni
⭕️⭕️🔴⭕️