প্রস্তাবনা:
আমি পরীক্ষার কেসগুলি তৈরির প্রশিক্ষণ দিতে চেয়েছিলাম, তাই আমি তাদের সহজ কিছুতে চেষ্টা করব।
চ্যালেঞ্জ:
কোনও প্রদত্ত (স্ট্রিং) ইনপুট নিন (দৃশ্যমান ASCII সীমার মধ্যে) এবং যদি এটির একটি সংখ্যা এবং আউটপুট এমন কিছু হয় যা মূল্যায়নের জন্য ব্যবহৃত হতে পারে ded
নিয়মাবলী:
- একটি সংখ্যাতে কেবল অক্ষর থাকবে
-0123456789,.
- উত্তরগুলি কেবলমাত্র -1000000000 এবং 1000000000 (একচেটিয়া) এর মধ্যে সংখ্যাগুলি সনাক্ত করতে হবে তবে তারা নির্বিচারে বড় সংখ্যাটি সনাক্ত করতে পারে।
- আপনি একটি সম্পূর্ণ প্রোগ্রাম বা একটি ফাংশন লিখতে পারেন।
- যদি একটি সংখ্যা থাকে তবে তা সনাক্ত করতে এবং বর্ণনায় আউটপুট নথিভুক্ত করার জন্য ব্যবহৃত হতে পারে এমন কোনও কিছু ফিরিয়ে দিন (উদাঃ
My program outputs T if a number, F if not.
)। - ইনপুটটি ASCII ব্যাপ্তির মধ্যে ফাঁকা বা খালি (কোনও নম্বর না হলে আউটপুট যা যা খালি তা ফিরিয়ে দিলে) হবে।
- সংখ্যা দশমিক বিন্দু অন্তর্ভুক্ত করতে পারে (উদা।
3.14
)। যদি তারা তা করে থাকে তবে তাদের অবশ্যই দশমিক পয়েন্টের আগে কমপক্ষে একটি অঙ্ক এবং তারপরে কমপক্ষে একটি অবশ্যই থাকা উচিত। - সংখ্যায় নেতৃস্থানীয় বা পিছনে জিরো থাকতে পারে (প্রাক্তন
000001.00000
)। - কোনও সংখ্যার পূর্ণসংখ্যার অংশটি পাঠযোগ্যতার জন্য কমা (প্রাক্তন
1,000.23456
) দিয়ে তিন অঙ্কের অংশে ভাগ করা যায় । এই ক্ষেত্রে তারা বাম ডান দিক থেকে প্রতি তিন ডিজিট বিভক্ত করা আবশ্যক (উদা।1,234,567
,10,000.202
,123,234.00
,0,123.293
)। - নেতিবাচক সংখ্যাগুলি একটি শীর্ষস্থানীয়
-
(প্রাক্তন-1.23
) দ্বারা নির্দেশিত ।+
ইতিবাচক সংখ্যাকে নির্দেশ করার জন্য নেতৃত্বের অনুমতি নেই এবং ফলস্বরূপ আউটপুট তৈরি হওয়া উচিত। - ব্যতিক্রমগুলি বৈধ এবং বিবেচনাযোগ্য আউটপুট হিসাবে গণনা করা হয় না (যখন তারা স্ট্যান্ডার্ড আউট স্ট্রিমটিতে
Exception on line N [...]
স্ট্রিংটি রাখে তবে স্ট্যান্ডার্ড আউট স্ট্রিমে আউটপুট পাস করতে পারলে ( উদাহরণস্বরূপ একটি সংখ্যা / ননম্বরের আউটপুট হিসাবে রাখা যেতে পারে except
পরীক্ষার কেস:
( My program outputs T if a number, F if not.
সংস্করণ অনুমান করে )
123 -> T [on integer]
-123 -> T [negative numbers need to be handled]
0 -> T [on zero]
123.456 -> T [on floating point]
123,456.789 -> T [on evenly divided by 3 digits with comas]
123456789 -> T [thousand separators are not required]
0000001.00000 -> T [on leading/trailing zeros]
00.00 -> T [on zero and leading/trailing zeros]
999999999.9999999999999999999999999999999999999999999999999999 -> T [on close to the maximum value]
-999999999.9999999999999999999999999999999999999999999999999999 -> T [on close to the minimum value]
-> F [on empty]
lolz -> F [on non-number value]
n4melyh4xor -> F [on non-number with digits]
1.2 -> F [on space-padded]
9.3 1.3 -> F [on anyhow separated multiple numbers]
1e5 -> F [no scientific notation]
50cl05e.buty3ts0f4r -> F [on input with letters obscuring the number]
1,2,3,4.5678 -> F [on badly readability-divided number]
1,234.5,678 -> F [on readability-divided floating point part]
.234 -> F [on no leading zero]
+1 -> F [no leading + sign]
1.234.3 -> F [only one decimal point]
12345,678 -> F [on separator stopping mid-way]
কোড-গল্ফ , কমপক্ষে অক্ষরগুলি বিজয়ী।
-123
ঠিক থাকে তবে +456
-> ভাল কি খারাপ। নাকি +
দল থেকে বাদ পড়েছে?