Monday, December 13, 2010

8 ရွစ္လံုးနဲ႔ 1000 ရေအာင္ ကြန္ပ်ဴတာနဲ႕ တြက္ ၾကည့္ခ်င္

8 ရွစ္လံုးနဲ႔ 1000 ရေအာင္ ကြန္ပ်ဴတာနဲ႕ တြက္ၾကည့္ခ်င္တယ္။
ဘယ္လိုတြက္ရင္ ေကာင္းမလဲ ဥာဏ္နီဥာဏ္နက္ မ်ားၾကည့္ေနတာ...

နည္းနည္းေတာ့ လမ္းစရၿပီ စဥ္းစားၾကည့္ရေအာင္

ေပးခ်က္။
88888888

အေျဖ။
888+88+8+8+8 = 1000

ေပါက္ေဖာ္အေျဖပါ (အဟဲ..ခ်တြက္ၾကည့္ရင္ သိပီးသားေပါ့)

အေျဖကေန တဆင့္ ေလ့လာၾကည့္မိတယ္

8 8 8 8 8 8 8 8
8 8 8+8 8+8+8+8
8 8 8+8+8+8+8 8
8+8+8+8 8+8 8 8

ဒီေတာ့ ေပးခ်က္ 8 8 8 8 8 8 8 8 ရဲ႕ ၾကားထဲမွာ (+,-,*,/) ၄ခုတည္းက တစ္ခုခုရေအာင္ ထည့္ၿပီး တြက္ၾကည့္ရင္ ရၿပီပဲ...

ပူးေရးမည့္ ဂဏန္းၾကားကေနရာအတြက္လည္း မွတ္စရာ တစ္ခု ေပးဦးမွ...ေဗ်ာင္သေကၤတေနရာအတြက္ကိုေလ | လို႔ မွတ္လိုက္မယ္။
ဒီေတာ့ စမ္းထည့္ၾကည့္ရမည့္ MathSymbol သေကၤတတစ္ခုတိုးမယ္။ အားလံုးေပါင္း ၅ခုျဖစ္မယ္။
|,+,-,*,/ ေပါ့

8 8 8 8 8 8 8 8

+ + + +

8 8 8+8 8+8+8+8

ၾကားေနရာထဲ ထည့္မွာက MathSymbol ၅ခုထဲက တစ္ခုခု ျဖစ္ရမွာ
| + - * /
တစ္ေနရာမွာ ထည့္ရမွာ ၅ခုထဲက တစ္ခုခု..စုစုေပါင္း ေနရာက ခုႏွစ္ေနရာဆိုေတာ့

အားလံုး အကြက္က ၅ ခုႏွစ္ထပ္ = အကြက္ေပါင္း ၇၈၁၂၅ ကြက္ စမ္းတြက္ရမွာ
(* ခ်ဲနဲ႕ဆင္တူပဲ ခ်ဲက ဂဏန္း၁၀လံုး ၃ေနရာဆိုေတာ့ ၁၀ သံုးထပ္ = အကြက္ေပါင္း ၁၀၀၀ ကြက္)

8 8 8 8 8 8 8|8 = ?
8 8 8 8 8 8 8+8 = ?
8 8 8 8 8 8 8-8 = ?
8 8 8 8 8 8 8*8 = ?
8 8 8 8 8 8 8/8 = ?
.
.
.
.
စသျဖင့္ေပါ့ ေဖာ္နည္းကား (ေဖာ္ျမဴလာ ကို ဆိုလိုပါသည္) ေတာ့ ရသြားၿပီ။
က်န္တာ စက္ေပၚတင္ ကိုယ္ အားသန္တဲ့ နည္းနဲ႕ ေရးခ်တြက္ရံုပဲ
ႀကိဳက္တဲ့နည္းနဲ႕ ျပန္ေၾကာ့ (loopingပတ္ၾကည့္)။ ရတဲ့ စာေၾကာင္းကို တြက္ထုတ္ၾကည့္။
အႀကိမ္ 78125 မွာ အေျဖ 1000 ရတဲ့ စာေၾကာင္း ဘယ္၂ေၾကာင္း ရမလဲ ေပၚလာပါလိမ့္မယ္။

ခုေလာေလာဆယ္ေတာ့ ဒီခ်ဥ္းကပ္နည္း သေဘာတရားကို
အရင္းတည္ၿပီး တြက္ထုတ္ၾကည့္တာ အႀကိမ္ 78125 ကို

3 မိနစ္ ေလာက္ၾကာတယ္။ vb.net နဲ႕ေပါ့။

(* 8 ႐ွစ္လံုးကေန 1000ရေအာင္တြက္တာေလာက္ပဲဆိုရင္ေတာ့
ဒီ႕ထက္ပိုျမန္ပါတယ္ ဘာလို႔လဲဆိုေတာ့ MathSymbol အေနနဲ႕

+ နဲ႕ ေဗ်ာင္ ႏွစ္ခုပဲ လိုတာဆိုေတာ့ေလ...)

ဒီထက္ ျမန္ေအာင္ တြက္ၾကည့္ခ်င္တယ္။
flexibility အေနနဲ႕ ေပးခ်က္ဟာ ကိန္းရွင္ေတြ ျဖစ္ရမယ္။

ဥပမာ။ ။
8 ရွစ္လံုးနဲ႔ 1000 ရေအာင္ ဘယ္လို တြက္ရမလဲ...ကေန
9 ရွစ္လံုးနဲ႔ 1000 ရေအာင္ ဘယ္လို တြက္ရမလဲ..တို႔
1234567890 နဲ႕ 51 ရေအာင္ ဘယ္လို တြက္ရမလဲ..တို႔
1112234 နဲ႕ 100 ရေအာင္ ဘယ္လို တြက္ရမလဲ..တို႔ ဘာပဲလာလာ ရွိသမွ် အေျဖ အကုန္ ထုတ္ႏိုင္ရမယ္။

ဦးေဏွာက္ေသြးတဲ့ သေဘာေပါ့ေလ...

အဆင့္တစ္က MathSymbol ကို loop ပတ္ျဖည့္ၿပီး ကိန္းတန္းေတြ ေဆာက္တာ
အဆင့္ႏွစ္က ရလာတဲ့ ကိန္းတန္းေတြကို evaluate လုပ္ၾကည့္တာ
ဒါေလးပဲ

ဒီလို ျပႆနာကို အျခားေသာ ပိုေကာင္းမြန္မည့္ ခ်ဥ္းကပ္နည္း ရွိမယ္ဆိုရင္လည္း ေလ့လာလိုပါတယ္။

နီးစပ္ရင္ ျပန္ေဆြးေႏြးေပးပါဦး :)
ေလးစားစြာျဖင့္ /ဧးသိမ္း/

No comments :

Post a Comment

ကြန္းမန္႔ေလး ထားခဲ့ပါလား