আপনি একটি রাজনৈতিক ওয়েবসাইট চালান , এবং নির্ধারণ করেছেন যে কোনও শতাংশে ("%১%" প্রকাশিত হওয়ার তুলনায় কোনও নির্বাচনে জয়ী হওয়ার বা হারার সুযোগকে অনুপাত হিসাবে ("5 %" ) হিসাবে প্রকাশ করা হলে লোকেরা আরও ভাল স্বজ্ঞাত জ্ঞান রাখে )।
তবে আপনি "৮৮৮ তে ৫৮" এর মতো বিভ্রান্তিকর অনুপাতও প্রদর্শন করতে চান না, আপনি চাইবেন যে এগুলি আরও যথাযথ না হলেও এমনকি তাদের আরও সহজে বোঝা যায়।
সুতরাং, 0.1% এবং 99.9% এর মধ্যে শতাংশ দেওয়া , নীচের নিয়মগুলি ব্যবহার করে নিকটতম "সহজে বোঝার" অনুপাত " এক্স ইন y " প্রদান করুন :
- সর্বাধিক মান (নীচে ব্যতিক্রম দেখুন) 10 বা তার চেয়ে কমের মধ্যে নিকটতম অনুপাতটি ফিরিয়ে আনতে হবে । 55% "" 9-এ 5 "ফিরে আসবে," 20 এ 11 "নয়।
- অনুপাতগুলি তাদের সর্বনিম্ন শর্তে হ্রাস করা উচিত । 65% এর "3 ইন 2" ফিরিয়ে নেওয়া উচিত, "6 ইন 4" নয়।
- 10% অধীনে মানগুলি ফেরত পাঠাবেন "ফর্ম এর নিকটতম অনুপাত মধ্যে n 1 " কোথায় এন (10,12,15,20,30,40,50,60,70,80,90,100) অন্যতম । উদাহরণস্বরূপ, 6% "15 এ 1" ফেরত আসবে।
- 90% এর চেয়ে বেশি মানগুলি " n-1 এ " ফর্মের নিকটতম অনুপাতটি ফেরত পাঠাতে হবে যেখানে n (10,12,15,20,30,40,50,60,70,80,90,100) এর মধ্যে একটি । উদাহরণস্বরূপ, 98.7% "80 এ 79" প্রত্যাবর্তন করা উচিত।
- 1% অধীনে মানগুলি আসতে উচিত " <100 জনের মধ্যে 1 জন "
- 99% উপর মানগুলি আসতে উচিত " > 99 100 "
বা, অন্যভাবে এটি সম্পর্কে চিন্তা করার জন্য, আপনার প্রোগ্রামটি নিম্নলিখিত সম্ভাব্য ফলাফলগুলি থেকে নিকটতম অনুপাতটি ফিরিয়ে আনবে (আমি আপনার সুবিধার জন্য তাদের আনুমানিক মানগুলি অন্তর্ভুক্ত করেছি):
<1 in 100
1 in 100 = 1.00%
1 in 90 = 1.11%
1 in 80 = 1.25%
1 in 70 = 1.43%
1 in 60 = 1.67%
1 in 50 = 2.00%
1 in 40 = 2.50%
1 in 30 = 3.33%
1 in 20 = 5.00%
1 in 15 = 6.67%
1 in 12 = 8.33%
1 in 10 = 10.00%
1 in 9 = 11.11%
1 in 8 = 12.50%
1 in 7 = 14.29%
1 in 6 = 16.67%
1 in 5 = 20.00%
2 in 9 = 22.22%
1 in 4 = 25.00%
2 in 7 = 28.57%
3 in 10 = 30.00%
1 in 3 = 33.33%
3 in 8 = 37.50%
2 in 5 = 40.00%
3 in 7 = 42.86%
4 in 9 = 44.44%
1 in 2 = 50.00%
5 in 9 = 55.56%
4 in 7 = 57.14%
3 in 5 = 60.00%
5 in 8 = 62.50%
2 in 3 = 66.67%
7 in 10 = 70.00%
5 in 7 = 71.43%
3 in 4 = 75.00%
7 in 9 = 77.78%
4 in 5 = 80.00%
5 in 6 = 83.33%
6 in 7 = 85.71%
7 in 8 = 87.50%
8 in 9 = 88.89%
9 in 10 = 90.00%
11 in 12 = 91.67%
14 in 15 = 93.33%
19 in 20 = 95.00%
29 in 30 = 96.67%
39 in 40 = 97.50%
49 in 50 = 98.00%
59 in 60 = 98.33%
69 in 70 = 98.57%
79 in 80 = 98.75%
89 in 90 = 98.89%
99 in 100 = 99.00%
>99 in 100
অন্যান্য শর্তাদি:
- সংখ্যার ইনপুট 0.1 থেকে 99.9 এর মধ্যে বা 0.001 থেকে 0.999 এর মধ্যে হতে পারে , যার মধ্যে আরও সুবিধাজনক। আপনাকে অবশ্যই কমপক্ষে 3 টি উল্লেখযোগ্য অঙ্ক পরিচালনা করতে হবে।
- আপনাকে অবশ্যই একটি অনুপাত আউটপুট করতে হবে ("3 ইন 4"), সমান ভগ্নাংশ নয় ("3/4")।
- যদি ইনপুটটির সমানভাবে দুটি অনুপাত থাকে তবে আপনার প্রোগ্রামটি যে কোনও একটিতে ফিরে আসতে পারে। 7.5% "12-এ 1" বা "15-এ 1" ফিরে আসতে পারে।
- শীর্ষস্থানীয় / পিছনে সাদা স্থান এবং / অথবা নতুন লাইনগুলি ভাল
উদাহরণ :
Input : Output
0.5 : <1 in 100
1.0 : 1 in 100
1.5 : 1 in 70
7.5 : 1 in 15 or 1 in 12 (either is acceptable)
9.2 : 1 in 10
13.1 : 1 in 8
29.2 : 2 in 7
29.3 : 3 in 10
52.7 : 1 in 2
52.8 : 5 in 9
72.0 : 5 in 7
73.9 : 3 in 4
88.8 : 8 in 9
90.8 : 9 in 10
94.2 : 19 in 20
98.7 : 79 in 80
98.9 : 89 in 90
99.0 : 99 in 100
99.1 : >99 in 100
এটি একটি কোড-গল্ফ চ্যালেঞ্জ, প্রতিটি ভাষার জয়ের মধ্যে সংক্ষিপ্ততম কোড।
(এর অনুরূপ, তবে এর সদৃশ নয়) দশমিককে ভগ্নাংশে রূপান্তর করুন , নিকটতম ভগ্নাংশ , আনুমানিক ভাসমান পয়েন্ট সংখ্যাটি এন-অঙ্কের যথার্থতার সাথে রূপান্তর করুন )
If there are two ratios equally close to the input, your program can return either one. 7.5% could return "1 in 12" or "1 in 15"
তার মানে কি আমরাও ফিরে আসতে পারি7 in 100
? বিটিডব্লিউ,1 in 14
এই ক্ষেত্রে ইনপুট কাছাকাছি।