অপ্রয়োজনীয় বুলিয়ান


19

ভূমিকা

শাস্ত্রীয়ভাবে, বুলিয়ানগুলি এক বিট; trueবা false, 1বা 0। শীর্ষস্থানীয় শূন্যগুলি কেবল অতিরিক্ত কাজ হবে। উদাহরণস্বরূপ, 001একই 00001বা ন্যায়সঙ্গত মানে 1

32-বিট বুলিয়ান

সত্যবাদী / মিথ্যা মান দেওয়া, একটি স্ট্রিং হিসাবে সমতুল্য 32-বিট বুলিয়ান আউটপুট। (বা কোনও কারণে যদি কোনও কারণে আপনার ভাষা নেতৃস্থানীয় শূন্যকে সমর্থন করে।)

আপনার প্রোগ্রামটি প্রতিটি সত্যবাদী / মিথ্যা প্রকারের জন্য কাজ করে না, কেবলমাত্র আপনার প্রোগ্রামিং ভাষার জন্য সবচেয়ে ভাল কাজ করে।

উদাহরণ i / o

Input >> Output

truthy >> 00000000000000000000000000000001
falsey >> 00000000000000000000000000000000

এটি , তাই সর্বনিম্ন বাইটস জয়!


6
আমাদের কি কোনও সম্ভাব্য সত্য বা মিথ্যা মান, বা কেবল বুলিয়ানগুলি পরিচালনা করতে হবে?
xnor

যদি আমার ভাষা প্রকারগুলি সমর্থন করে এবং বুলিয়ান থাকে আমি কি 1 এর (অন্তর্) সত্যকে ব্যবহার করতে পারি?
LiefdeWen

@ লিফড ওয়েইন অবশ্যই
গ্রাভিটন

1
সত্য বা মিথ্যা ইনপুট হিসাবে সদৃশ আর নকল প্রতিটি উত্তর / ভাষার জন্য পৃথক হতে পারে না।
গ্রাভিটন

আমি কেন দেখছি না তবে হাহ, ঠিক আছে ~
ভি। কর্টয়েস

উত্তর:


10

পাইথন 3 , 33 25 18 15 বাইট

টিপটির জন্য ধন্যবাদ @ জুরজন-বোস __mod__

'%.32d'.__mod__

এটি অনলাইন চেষ্টা করুন!


চান lambda b:'%0.32d'%bকাজ করে?
ბიმო

ওহ, None সত্যবাদী নাকি মিথ্যা ?
ბიმო

@ ব্রুসফোর্ড ফ্যালসি
রাইমাগ করুন

1
এছাড়াও 25 বাইট, তবে পাইথন 3.6 + এর জন্য: lambda b:f'{bool(b):032}'বাlambda b:f'{not b<1:032}'
ফিলিপ

1
শীর্ষস্থানীয় শূন্যটি ভিতরে রেখে আপনি 1 বাইট সঞ্চয় করতে পারবেন 0.32d
গ্যারেথপিডাব্লু

9

x86-16 মেশিন কোড (ডস), 16 বাইট

B4 02          mov  ah,  2
B2 30          mov  dl, '0'
B9 1F 00       mov  cx, 31

            PrintZeros:
CD 21          int  0x21
E2 FC          loop PrintZeros

00 CA          add  dl, bl
CD 21          int  0x21
C3             ret

উপরের ফাংশনটি রেজিস্টারে একটি বুলিয়ান মান (0 == মিথ্যা, 1 == সত্যবাদী) গ্রহণ করে BL(কম বাইট BX), এবং স্ট্যান্ডার্ড আউটপুটে একটি "রিডানড্যান্ট বুলিয়ান" স্ট্রিং প্রিন্ট করে।

এটি ডস ফাংশন কল করতে একটি বাধা (0x21) ডেকে কাজ করে ( AH2 সেট করে নির্বাচিত ) যা DLস্ট্যান্ডার্ড আউটপুটে একক অক্ষর (ইন ) মুদ্রণ করে ।

প্রথমত, ASCII অক্ষর '0' এ লোড করা হয় DL, কাউন্টারটি ( CX31) সেট করা থাকে এবং এটি "রিডানড্যান্ট" বাইটগুলি মুদ্রণ করতে লুপ হয়। তারপরে, ইনপুট বুলিয়ান মানটি যুক্ত করা হয় DL(যদি BLমিথ্যা হয় তবে 0 যুক্ত DLকরা ASCII '0' হিসাবে অপরিবর্তিত থাকবে ; যদি BLসত্য DLহয় তবে একজনকে ASCII '1' এ বাড়ানো হবে), এবং চূড়ান্ত বাইটটি মুদ্রিত হবে।

ফাংশনটি কোনও মান দেয় না।

সত্যিকারের স্ট্রিংগুলি না করে এমন ভাষার জন্য অত্যন্ত শালীন।


সম্পূর্ণ প্রোগ্রাম, 21 বাইট

আপনি যদি এটি একটি সম্পূর্ণ প্রোগ্রামে পরিণত করতে চান তবে আরও 5 বাইট প্রয়োজন। কোনও রেজিস্টারে ইনপুট পাস করার পরিবর্তে, আবেদনটি করার সময় কমান্ড লাইনে পাস হওয়া আর্গুমেন্টগুলি থেকে ইনপুটটি পড়ে reads 0 টির একটি যুক্তি মিথ্যা হিসাবে ব্যাখ্যা করা হয়, যেমন তর্কগুলির সম্পূর্ণ অভাব; 0 এর চেয়ে বড় একটি যুক্তি সত্য হিসাবে ব্যাখ্যা করা হয়।

কেবলমাত্র একটি COM প্রোগ্রাম হিসাবে নীচের কোডটি একত্র করুন এবং তারপরে এটি কমান্ড লাইনে চালিত করুন।

B4 02            mov   ah,  2
B2 30            mov   dl, '0'
B9 1F 00         mov   cx, 31

               PrintZeros:
CD 21            int   0x21
E2 FC            loop  PrintZeros

3A 16 82 00      cmp   dl, BYTE PTR [0x82]  ; compare to 2nd arg, at offset 0x82 in PSP
D6               salc                       ; equivalent to sbb al, al
28 C2            sub   dl, al
CD 21            int   0x21
C3               ret                        ; you can simply 'ret' to end a COM program

নমুনা আউটপুট:

C:\>bool.com
00000000000000000000000000000000
C:\>bool.com 0
00000000000000000000000000000000
C:\>bool.com 1
00000000000000000000000000000001 
C:\>bool.com 2
00000000000000000000000000000001
C:\>bool.com 7
00000000000000000000000000000001

এটা কিভাবে কাজ করে? ঠিক আছে, এটি মূলত একই জিনিস, যতক্ষণ না আপনি CMPনির্দেশে নামেন । এটি কমান্ড-লাইন আর্গুমেন্টটিকে DLরেজিস্টারের মানের সাথে তুলনা করে (যা আপনি মনে করে, একটি ASCII '0' থাকে)। কোনও সিওএম প্রোগ্রামে, কোড বাইটস অফসেট 0x100 এ লোড হয়। এর পূর্ববর্তী অংশটি হ'ল প্রোগ্রাম বিভাগের উপসর্গ (পিএসপি) , যা কোনও ডস প্রোগ্রামের স্থিতি সম্পর্কে তথ্য ধারণ করে। বিশেষত, 0x82 অফসেটে আপনি প্রথমটি (আসলে দ্বিতীয়টি, যেহেতু প্রথমটি একটি স্থান হ'ল) ​​প্রোগ্রামটি চালু হওয়ার সময় কমান্ড লাইনে নির্দিষ্ট করা হয়েছিল argument সুতরাং, আমরা কেবল এই বাইটকে একটি ASCII '0' এর সাথে তুলনা করছি।

তুলনাটি পতাকাগুলি সেট করে এবং তারপরে SALCনির্দেশিকা (পেন্টিয়ামের পূর্বে একটি অননুমোদিত ওপকোড, সমতুল্য sbb al, al, তবে 2 এর পরিবর্তে কেবল 1 বাইট) 2 ALমান দুটি সমান হলে 0 বা সেগুলি পৃথক হলে -1 এ সেট হয়। তখনই যখন আমরা বিয়োগ যে সুস্পষ্ট ALথেকে DLপারেন হওয়া ASCII '0', এই ফলাফল বা '1', যথাযথ হিসাবে।

(দ্রষ্টব্য, কিছুটা বিদ্রূপের সাথে, আপনি যদি কমান্ড লাইনে শীর্ষস্থানীয় 0 দিয়ে কোনও যুক্তিটি পাস করেন তবে আপনি এটি ভেঙে ফেলবেন, যেহেতু এটি কেবল প্রথম চরিত্রের দিকে দেখায় So তাই 01মিথ্যা হিসাবে বিবেচিত হবে: :-)


8

8
'10'[not n]তাদের সমর্থন করা প্রয়োজন হলে যথেষ্ট হবে।
অ্যান্ডারস কাসের্গ

'{:032}'.format15 বাইটের জন্য এবং আপনার বর্তমান সমাধানের মতোই কাজ করুন
ফিলিপ নার্দি বাতিস্তা

@ সরস্লাহ bool(n)যথেষ্ট হবে
ফিলিপ

7

জাভাস্ক্রিপ্ট, 23 বাইট

a=>'0'.repeat(31)+ +!!a

!!a একটি বুলিয়ান মধ্যে একটি coerces, যা unary প্লাস একটি int মধ্যে রূপান্তর।


a=>'0'.repeat(31)+(+a)এক বাইট খাটো।
ক্রিটসি লিথোস

@ কউজ্যাক যা স্ট্রিং, খালি অ্যারে, এনএএন, ফাংশন এবং অন্যান্য মানগুলিতে ব্যর্থ হয় যেখানে কোনও সংখ্যায় জবরদস্তির ফলাফল হয় না 0 বা 1
সুপারস্টোরমার

খালি অবজেক্টস, অ্যারে, ইনফিনিটি এবং
অপরিজ্ঞাত

1
... তবে এখন ...Your program doesn't have to work for every truthy/falsy type, only what your programming language work best for.
edc65

1
a=>'0'.repeat(31)+~~aসত্য, মিথ্যা, 1,0
edc65


5

নিম , 6 5 বাইট

ᛝΨβ_I

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা:

 ᛝ        # Constant 31
  Ψ       # Apply next token to all in list
    β     # Constant 0
     _    # Push each element to stack
      I   # Take Line of input.

ওকেক্সকে একটি বাইট সংরক্ষণ করা হয়েছে


5 বাইট -ᛝΨβ_I
ওকেক্স

উইকিতে নেই, কোথায় পেলেন?
লিফডেওয়েন


@ ওক্স ঠিক আছে, টিপ দেওয়ার জন্য ধন্যবাদ।
লিফডেভেন


4

আর্নল্ডসি , 369 বাইট

IT'S SHOWTIME
HEY CHRISTMAS TREE A
YOU SET US UP 0
GET YOUR ASS TO MARS A
DO IT NOW
I WANT TO ASK YOU A BUNCH OF QUESTIONS AND I WANT TO HAVE THEM ANSWERED IMMEDIATELY
BECAUSE I'M GOING TO SAY PLEASE A
TALK TO THE HAND "00000000000000000000000000000001"
BULLSHIT
TALK TO THE HAND "00000000000000000000000000000000"
YOU HAVE NO RESPECT FOR LOGIC
YOU HAVE BEEN TERMINATED

এটি অনলাইন চেষ্টা করুন!


2
পিপিসিজিতে আপনাকে স্বাগতম!
স্টিফেন

4

ব্রেইনফাক , 61 60 36 বাইট

++++[>++++<-]>[>++>+++<<-]>-[>.<-]>>,.

আমি নিশ্চিত যে পয়েন্টারগুলি নিয়ে এতটা না ঘুরে দেখার কোনও চতুর উপায় আছে।

আমি সঠিক ছিলাম. ছিল। আমাকে ধারণা দেওয়ার জন্য @ গ্রাভিটনকে ধন্যবাদ!

পরবর্তী পদক্ষেপ: 32 এবং 48 এর মানগুলি দ্রুত পান!

এটি অনলাইন চেষ্টা করুন!

++++        - Increment 1st slot by 4
[           - Loop until 4 becomes 0
    >++++   - Add 4 to 2nd slot
    <-      - Decrement loop
]           - At this point, we point to slot 1 and slot 2 contains 16, which is the Greatest Common Divisor of 48 (value 0 in ASCII) and 32 (final length of answer)
>           - Point to value 16 (slot 2)
[           - Start loop to get our target values 32 and 48
    >++     - Point to slot 3 and multiply 16 by 2 = 32
    >+++    - Point to slot 4 and multiply 16 by 3 = 48
    <<-     - Decrement the loop so that slot 2 becomes 0
]           - We now point slot 2
>-          - Move to slot 3 and remove one so we can spam (output) 31 zeroes
[           - Start outputting until slot 3 is empty
    >.      - Move to slot 4 where our ASCII value for 0 is
    <-      - Decrement the loop so that slot 3 becomes 0
]           - We are now at slot 3 and it is empty.
,.          - We can now gather input from the user and output it.

প্রথম গল্ফের জন্য মজা ছিল!

এখন অনেক দেরী হয়ে গেছে। আমি এমনকি কি করছি


এন্ট্রপিকে ধন্যবাদ, আমি ১ 16 বাইটটি আরও ছোট করে ১ 16 নম্বরে
পৌঁছেছি।

কেবল মজাদার জন্য এখানে একটি 60 বাইট সংস্করণ রয়েছে: >-[-[-<]>>+<]>--<<-[>+<-----]>--->[-<.>],.(0 বা 1 হিসাবে ইনপুট নেয়) এটি অনলাইনে চেষ্টা করুন!
গ্রাভিটন

ভাল, অনেক ধন্যবাদ @ গ্রাভিটন আপনি আমাকে বুঝতে পেরেছিলেন যে ASCII মান 0 এ নেমে যাওয়ার জন্য আমি খুব বেশি প্রচেষ্টা চালিয়ে যাচ্ছিলাম যখন আমাকে কেবল এটি আউটপুট দিতে হয়েছিল।
রাফাল ক্যাটি

3

স্কালা, 32 বাইট

দুঃখিত তবে আমি 32 বাইট> _ <এ করতে বাধ্য হয়েছিল

var s=t
for(u<-0 to 30)s="0"+s
s

এটি tপ্যারামিটার হিসাবে গ্রহণ একটি ফাংশন দ্বারা আবদ্ধ (যেমন string"0" বা "1" শ্রদ্ধার জন্য হতে পারে। মিথ্যা বা সত্যবাদী), এবং sফিরে আসে।

এটি অনলাইন চেষ্টা করুন!

বৈধ প্রতিক্রিয়া: স্কেল, 46 বাইট

আমার জাভা প্রতিক্রিয়া হিসাবে একই, আমি প্যারামিটারের জন্য একটি বুলিয়ান নেওয়ার কথা ছিল। সুতরাং:

var s=if(t)"1"else"0"
for(u<-0 to 30)s="0"+s
s

এটি অনলাইন চেষ্টা করুন!


3

ব্রেনল্ফ , 10 8 বাইট

#␟>[0_]N

এটি অনলাইন চেষ্টা করুন!

টি ইউনিটে বিভাজক, এএসসিআইআই 0x1Fবা # 1-৩১।

ব্যাখ্যা

#␟>[0_]N  Implicit input from commandline args
#␟        Push unit separator (31)
   >       Move top item to bottom of stack
    [..]   Loop, runs 31 times
     0_    Print 0
        N  Boolean conversion, truthy values become 1, falsey values become 0
           Implicit output of top of stack

এটিতে 0x1F অক্ষরের সাথে টিও
পুনপুন1000

@ PunPun1000 ওহ ধন্যবাদ! পোস্টটি আপডেট করব
স্কিডদেব

2

অক্টাভা , 23 বাইট

@(x)[48+[!(1:31),x],'']

এটি অনলাইন চেষ্টা করুন!

আমি চেষ্টা করেছি এমন সমস্ত পদ্ধতির চেয়ে এটি সংক্ষিপ্ত printf। আমি আমার ফোনে এটি করেছি যেহেতু আমি হয়ত কিছু মিস করেছি।

কেবল একটি বাইট দীর্ঘ

@(x)[dec2bin(0,31),x+48]

যদি আমি 1/0 টি স্ট্রিং হিসাবে নিতে পারি তবে এটি 18 বাইট হতে পারে।

@(x)[48+!(1:31),x]

এটি অনলাইন চেষ্টা করুন!


2

জাভা 8, 31 27 বাইট

b->"".format("%032d",b?1:0)

-4 বাইট @ অলিভিগ্রগ্রোয়ারকে ধন্যবাদ ।

এখানে চেষ্টা করুন।


1
হ্যাঁ, এখনও আপনাকে ছাড়িয়ে নিতে এখানে:; "".format)
অলিভিয়ার

1
@ অলিভিয়ারগ্রোওয়ের এটিই ছিল! জঘন্য আমি বোকা .. xD আমি টাইপ করার সময় String.formatআমি জানতাম যে এখানে কোনওভাবে আরও ছোট উপায় আছে, তবে আমি ভেবেছিলাম সম্ভবত আমি সম্ভবত শেষ বার স্ট্রিং ভেরিয়েবল ব্যবহার করেছি ... ধন্যবাদ। ;)
কেভিন ক্রুইজসেন




1

কাঠকয়লা , 5 বাইট

×0³¹S

এটি অনলাইন চেষ্টা করুন! (ভার্বোজ সংস্করণে লিঙ্ক।)

কাঠকয়লা বুঝতে হিসাবে 0এবং 1হিসাবে Trueবা False, এই মাত্র 31 ছাপে 0s এবং ইনপুট ( 0বা 1) স্ট্রিং হিসেবে।


: পি এটি সত্যই সঠিক , আমি ভেবেছিলাম আমি ভেরিয়েবলগুলি Trueযদিও অদ্ভুত
এএসসিআই-কেবল

1

পাইথন 2 , 26 25 বাইট

বাইট সাশ্রয়ের জন্য এরিক আউটগলফারকে ধন্যবাদ !

সম্পূর্ণ প্রোগ্রামের পদ্ধতির জন্য যায়:

print+bool(input(31*'0'))

এটি অনলাইন চেষ্টা করুন!


প্রতিস্থাপন ~~সঙ্গে +জন্য -1। এর পরে পুরো প্রোগ্রামটি আর ব্যয়বহুল হবে না । ;)
এরিক দি আউটগল্ফার

@ এরিকথ আউটগল্ফার আমি জানি না যে এটি সম্ভব ছিল, ধন্যবাদ!
আদনান


1

সি, 26 বাইট

খুব খুব 1bluestone সমাধান হিসাবে একই ধারণা , কিন্তু সি এটি সংক্ষিপ্ত, এবং এটি কোনও পূর্ণসংখ্যার ইনপুট জন্য সঠিকভাবে কাজ করে:

f(a){printf("%032i",!!a);}

অবশ্যই, এতে ভাল কিছু টাইপযুক্ত ভেরিয়েবল / ফাংশন অন্তর্ভুক্ত রয়েছে যেমন সমস্ত ভাল সি-গল্ফ উত্তর দেয় ... !!অপারেটর হ'ল কোনও সত্যবাদী মান সি- তে রূপান্তর করার সবচেয়ে সংক্ষিপ্ততম উপায় 1(ডাবল নেগ্রহের মাধ্যমে, !ফেরত দেওয়ার জন্য সংজ্ঞায়িত হয় ) 1বা 0)

এর সাথে পরীক্ষা করুন:

#include <stdio.h>
f(a){printf("%032i",!!a);}
int main() {
    f(0), printf("\n");
    f(1), printf("\n");
    f(2), printf("\n");
    f(-1), printf("\n");
}

1

হাস্কেল , 37 32 বাইট

(('0'<$[1..31])++).show.fromEnum

এটি অনলাইন চেষ্টা করুন!

-5বাইটের জন্য @ নিমিকে ধন্যবাদ !


2
show(fromEnum x)পরিবর্তে last(...)। Pointfree এমনকি খাটো: (('0'<$[1..31])++).show.fromEnum
নিমি

@ নিমি জানেন না যে Boolএটি একটি Enum, ধন্যবাদ!
ბიმო


1

Ly , 20 15 13 বাইট

65*1+[0u1-]nu

সম্পাদনা: ওভিএসকে 5 টি বাইট সংরক্ষণ করা হয়েছে
সম্পাদনা: একটি অক্ষরের চেয়ে 0 হিসাবে মুদ্রণ করে আরও 2 বাইট সংরক্ষণ করা হয়েছে।


চান 65*1+["0"o1-]nuকাজ করে?
ovs

1

অক্টাভা, 16 11 বাইট

@(x)x(1:32)

এটি অনলাইন চেষ্টা করুন!

একটি ফাংশন হ্যান্ডেল যা "00000000000000000000000000000001"সত্য এবং "00000000000000000000000000000000\0"মিথ্যা হিসাবে গ্রহণ করে।

ব্যাখ্যা:

অক্টোটাভে একটি অ্যারে মিথ্যা হিসাবে বিবেচিত হয় যদি এর কমপক্ষে একটি উপাদানের শূন্য হয়। দ্বিতীয় স্ট্রিংয়ের 33 তম উপাদানটি 0 এর ASCII মান সহ একটি অক্ষর যাতে এটি মিথ্যা হিসাবে বিবেচনা করা যায়।


1

জাভা, 40 অক্ষর, 40 বাইট

এটি প্যারামিটার হিসাবে স্ট্রিং নেয় যা সঠিক নয় (মিথ্যা / সত্যবাদী জাভা মানটি ওপি দ্বারা একটি বুলিয়ান দ্বারা প্রতিনিধিত্ব করতে বাধ্য হয়)।

c->{for(int i=0;++i<32;c=0+c);return c;}

এটি অনলাইন চেষ্টা করুন!

বৈধ প্রতিক্রিয়া: জাভা, 60 অক্ষর, 60 বাইট

c->{String k="";for(k+=c?1:0;k.length()<32;k=0+k);return k;}

এটি অনলাইন চেষ্টা করুন!

আমি জানি যে এরই মধ্যে একটি জাভা উত্তর রয়েছে যা এর চেয়ে কম, তবে এখনও :)


হ্যাঁ, returnবিবৃতিটি আপনার কোডের একটি অংশ, তাই আপনার বাইট-কাউন্টের অংশ। তবে আপনার উত্তর বিধিগুলি পূরণ করে না: আপনাকে অবশ্যই একটি booleanইনপুট হিসাবে পাওয়া উচিত । "সত্যবাদী / মিথ্যা" জাভাতে হয় হয় trueবা falseঅন্য কোনও হিসাবে অনুবাদ করা হয় । সুতরাং আপনি কোনও Stringইনপুট প্যারামিটার পেতে পারেন না ।
অলিভিয়ার গ্রাগোয়ার 21

আমি দেখি. আমি খুব শীঘ্রই এটিকে পরিবর্তন করব। ধন্যবাদ।
ভি। কুর্তোইস

1
আপনাকে চূড়ান্ত সেমিকোলন ( ;) লাগানোর দরকার নেই । এছাড়াও, আপনি এটির মতো আপনার কোড কমান পারেন: c->{String k="";for(;k.length()<31;)k+=0;return k+=c?1:0;}k+=c?1:0কমান হয় k+(c?1:0)
অলিভিয়ার

পছন্দ করুন
ভি। কুর্তোইস

1
এটি কোডে বাধ্যতামূলক, তবে স্নিপেটে নয়। টিআইওতে, পাদচরণটি কেবল শুরু করেই শুরু করতে পারে ;। একটি বিবৃতিতে একটি সেমিকোলন প্রয়োজন। একটি ল্যাম্বদা কোনও বিবৃতি নয়।
অলিভিয়ার গ্রাগোয়ার

1

জাপট , 13 11 বাইট

?1:0 ¤i31ç0

ব্যাখ্যা:

?1:0 ¤i31ç0
?              // If the input is a truthy, return:
 1             //   1
  :0           //   Else, 0
     ¤         // Convert to a base-2 string
      i        // Insert at index 0:
       31ç0    //   A string filled with 0s, length 31

অন্তর্নির্মিত বেস -২ রূপান্তরটি ব্যবহার করে একটি বাইট সংরক্ষণ করেছেন!

সামনে 0 সেঃ এর স্ট্রিং ঢোকাতে 1/ 0, আমি নিক্ষেপ করার প্রয়োজন 1এবং 0একটি স্ট্রিং মধ্যে। এটি করার সাধারণ 1s উপায়টি (3 বাইট) হবে। তবে আমরা কেবল 1s এবং 0 গুলি রূপান্তর করছি তাই আমি বেস -2 বিল্ট-ইন (2 বাইট) ব্যবহার করতে পারি ।


ইনপুট একটি পূর্ণসংখ্যা বা স্ট্রিং আকারে হতে পারে।

0এবং ""জাপটে মিথ্যা হয়।

এটি অনলাইন চেষ্টা করুন!

পরীক্ষা স্যুট


1

সি # (.নেট কোর) , 29 বাইট

a=>new string('0',31)+(a?1:0)

ওপি বলেছিল যে 1/0 সত্যবাদী / মিথ্যা জন্য ব্যবহার করা যেতে পারে, সুতরাং aএকটি অন্তর্নির্মিত করতে পারেন এবং এটি হয়ে যায়

a=>new string('0',31)+a

সি # এর সত্যই সত্য / মিথ্যা নেই যদিও আমি এই উত্তরটি ব্যবহার করব না।

এটি অনলাইন চেষ্টা করুন!


1
দ্বিতীয়টিটি বৈধ বলে আমি মনে করি না। পূর্ণসংখ্যা সি # তে সত্য বা মিথ্যা নয়, কেবল বুল হয়।
স্কিডদেব

@ মাইউব আমি জিজ্ঞাসা করেছি এবং ওপি বলেছে ঠিক আছে, তবে আমি আপনাকে সম্মতি দিচ্ছি তাই সম্পাদনা করব will
LiefdeWen

1
বিরক্তিকরভাবে Padleftএখানে একই বাইট গণনা আসে।
TheLethalCoder 9

@ দ্য লেথলকোডার প্যাডলফ্ট দিয়েও শুরু করেছিলেন :)
লিফড ওয়েইন

2
নিশ্চিত হতে পারছি না যদি সম্ভব হয়, কিন্তু interpolated stringsএখানে বেশ উপযোগী হতে পারে:b=>$"{(b?1:0):D32}" 19 bytes
auhmaan

1

এমওয়াই , 10 9 বাইট

𝕫BṄiℑpέ←←

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা (কোডপেজ [চরিত্রের পিছনে যুক্তি সহ] / হেক্স কোড):

𝕫: 1A - Push an integer from STDIN (lowercase integers)
B: 0B - Push 11 (B is 11 in hex)
Ṅ: 36 - Pop n; push the nth prime, 11th prime is 31 (Ṅ-th)
i: 49 - Pop n; push [1,...,n] (index/iota)
ℑ: 34 - Pop n; push imag(n) (ℑmaginary part, applied to each element, which gives 0 for real numbers)
p: 60 - Pop n; push stringified n (0=>"0" ... 35=>"Z", the b in base upside down)
έ: 56 - Pop n; push n joined by "" (έmpty string)
←: 26 - Pop n; output n with no newline (out←in)
←: 26 - Pop n; output n with no newline (out←in)

আমি বিশ্বাস করতে পারি না যে কোনও দ্বি-যুক্তির আদেশ ছাড়াই এটি সম্ভব!

সম্পাদনা: 31 পাওয়ার জন্য পাটিগণিতের পরিবর্তে প্রাইম ব্যবহার করে 1 বাইট সংরক্ষণ করা হয়েছে।


0

এপিএল, 11 বাইট

⍕¯32↑1↑1\⍨⊢

কিভাবে?

1\⍨⊢ - 1 ইনপুট বার পুনরাবৃত্তি - মিথ্যা মান উপর খালি অ্যারে ফিরে

1↑ - প্রথম আইটেম নিন

¯32↑ - 31 টি শূন্যের সাথে ডান সারিবদ্ধ করুন

- স্ট্রিং হিসাবে ফর্ম্যাট


সহজভাবে ⍕¯32↑⊢কাজ করা উচিত
ক্রিটিকি লিথোস

1
@ কউসক্যাক এবং ইউরিয়েল উভয়ই স্পেস অন্তর্ভুক্ত করার কারণে কাজ করে না। আপনার দরকার ∊⍕¨¯32↑⎕বা কিছু
এডম

0

জে, 11 বাইট

(31#'0'),":

এটি অনলাইন চেষ্টা করুন!

কীভাবে?

31 zeros
00...000  append     turn the 0 or 1 input into string
(31#'0')    ,       ":

দ্রষ্টব্য: জেতে, বুলিয়ানগুলি 0 বা 1 হয়, কেন ওভারসনের পরে, জে এবং এপিএলের স্রষ্টা, "ওভারসন কনভেনশন" নামেও পরিচিত


আমি বুঝতে পারি যে 1 এবং 0 জেতে বুলিয়ান, তবে আপনি কেবল 31 0 সেটে ইনপুট যুক্ত করছেন। বুলিয়ান বৈধতার কিছু ফর্ম থাকা উচিত নয়?
অলিভার

@ অলিভার সমস্যাটি "সত্যবাদী / মিথ্যা মান দেওয়া হয়েছে ..." উল্লেখ করে তাই না, আমি মনে করি না যে আপনার বৈধতা দেওয়া উচিত ... এছাড়াও, নোট করুন যে ":এটি কাজ করার জন্য প্রয়োজনীয় - এটি একটি বুলিয়ানকে একটি স্ট্রিংয়ে পরিবর্তন করে ।
জোনাহ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.