বাবাব থেকে জাইজির প্রতিটি শব্দ


38

আপনার কাজটি এমন একটি প্রোগ্রাম লেখা যা কাঠামোর সাথে প্রতি পাঁচটি বর্ণের একটি পাঠযোগ্য তালিকা আউটপুট দেয়:

ব্যঞ্জনবর্ণ - স্বর - ব্যঞ্জন - স্বর - ব্যঞ্জনবর্ণ

আউটপুট প্রতি লাইন প্রতি একটি শব্দের সাথে বর্ণমালা অনুসারে বাছাই করা উচিত এবং কোনও শব্দ দুবার পুনরাবৃত্তি হবে না। এটি ছোট হাতের বা বড় হাতের হতে পারে তবে মিশ্র নয় mixed সুতরাং তালিকাটি শুরু হতে পারে এবং এর মতো শেষ হতে পারে:

babab  
babac  
babad  
...  
zyzyw  
zyzyx  
zyzyz 

স্বরগুলি হ'ল একটি - - আই - - ইউ - ওয়াই , অন্যান্য 20 টি ইংরেজি-বর্ণমালা বর্ণগুলি ব্যঞ্জনবর্ণ।
শব্দগুলিকে আসল অভিধানের শব্দ হতে হবে না।
সংক্ষিপ্ততম কোড জিতেছে।

দ্রষ্টব্য: কয়েক বছর আগে আমি একটি বিশ্ববিদ্যালয়ের ওয়েবসাইটে এমন একটি প্রোগ্রামে হোঁচট খেয়েছি যা ঠিক তা করেছিল। আমার প্রথম এবং শেষ নামটি সিভিসিভিসি সীমাবদ্ধতার সাথে ফিট করে এবং আমি নিজেকে গুগল করে যাচ্ছি।


7
আমি এখানে দুটি জিনিস দেখতে পাচ্ছি। প্রথমত, এই জাতীয় শব্দগুলির একটি হাস্যকর পরিমাণ রয়েছে। আপনি কীভাবে এন্ট্রিগুলি পরীক্ষা করবেন? এছাড়াও, অনেকগুলি নাম রয়েছে যা এই সীমাবদ্ধতার সাথে খাপ খায়। প্রথমে মন থেকে আসে জ্যাকব , যদিও এর মত অন্যান্য লুকাস এছাড়াও মাপসই
TrojanByAccident

9
@ ট্রোজানবাইসিসিডেন্ট আমি বিশ্বাস করি যে চ্যালেঞ্জটির নাম / ইংরেজি শব্দ কিনা তা বিবেচনা না করেই সম্ভাব্য সব মিলিয়ে অক্ষরের সংমিশ্রণ প্রয়োজন। "শব্দগুলিতে আসল অভিধানের শব্দ হওয়া উচিত নয়।"
ট্রাইকোপ্লাক্স

3
@ উইলকস প্রাসঙ্গিক মেটা পোস্ট - কঠোর i / o ফর্ম্যাটগুলি এই এসই সম্প্রদায়ে প্রশংসিত নয়। এই চ্যালেঞ্জটি সিভিসিভিসি শব্দ তৈরি করার দিকে মনোনিবেশ করছে, শব্দের মধ্যে নতুন লাইন ?োকানো হচ্ছে না, তাই না?
জংহওয়ান মিন

1
@ জংহওয়ানমিন এই লিঙ্কটির জন্য ধন্যবাদ, প্রথমবার এখানে এবং আমি এই সম্পর্কে জানতাম না। আমি এটিকে সমস্ত সিভিসিভিসি শব্দের একটি পাঠযোগ্য এবং বর্ণমালা তালিকা হিসাবে দেখেছি। সুতরাং আমি সম্মত হই যে আপার বা লোয়ারকেস আসলেই কিছু যায় আসে না, তবে আমি এটিও মনে করি যে একটি খুব দীর্ঘ স্ট্রিং বা, কিছু নেস্টেড অ্যারে বলবেন, যদিও প্রযুক্তিগতভাবে বৈধ কোনও দুর্দান্ত উত্তর হবে না।
wilks

2
এই প্রশ্নের কয়েকটি উত্সাহিত উত্তর চালানোর পরে তারা অবশ্যই "আউটপুটটি তার নিজস্ব লাইনে প্রতিটি শব্দের সাথে বর্ধমান হওয়া উচিত" মেনে চলে না। এই প্রয়োজনীয়তাটি কি শিথিল করা হয়েছে এবং যদি তাই হয় তবে আপনি কি এটি সম্পাদনা করতে প্রশ্নটি সম্পাদনা করতে পারেন? আমি মনে করি আমার উত্তরটি ফর্ম্যাটের দ্বারা সীমাবদ্ধ না করা হলে আমি বেশ কয়েকটি বাইট হারাতে পারি।
এলপেড্রো

উত্তর:


28

গণিত, 72 65 61 বাইট

Print@@@Tuples@{a=##/(b=#5#9#15#21#25#)&@@Alphabet[],b,a,b,a}

পরীক্ষামূলক জন্য, আমি প্রতিস্থাপন সুপারিশ Print@@@সঙ্গে ""<>#&/@। ম্যাথমেটিকা ​​তারপরে চিরকালের জন্য 288,000 লাইন মুদ্রণের পরিবর্তে প্রথম কয়েক এবং শেষ কয়েকটি শব্দ দেখিয়ে একটি কাটা ফর্ম প্রদর্শন করবে।

ব্যাখ্যা

অবশেষে আমি স্ট্রিংগুলি বিভক্ত করার জন্য একটি ব্যবহার পেয়েছি। :)

আমি কিছুক্ষণের জন্য স্ট্রিং যুক্ত বা গুণিত করার সম্ভাবনা দেখে আগ্রহী হয়েছি তবে প্রকৃত ব্যবহারের ক্ষেত্রেগুলি যথেষ্ট সীমাবদ্ধ। মূল কথাটি হ'ল ম্যাথমেটিকায় "foo"+"bar"বা "foo"*"bar"(এবং ফলস্বরূপ, সংক্ষিপ্ত রূপ "foo""bar") এর মতো কিছু সম্পূর্ণ বৈধ। যাইহোক, এটি পাটিগণিতের এক্সপ্রেশনগুলিতে স্ট্রিংগুলির সাথে কী করবেন তা সত্যই জানে না, তাই এই জিনিসগুলি মূল্যহীন remain গণিত যদিও সাধারণত প্রযোজ্য সরলীকরণ প্রয়োগ করে । বিশেষত, স্ট্রিংগুলি ক্যানোনিকাল অর্ডারে সাজানো হবে (যা আপনি ম্যাথমেটিকায় মোটামুটি গণ্ডগোল হয়ে যায়, একবার আপনি বিভিন্ন মামলার অক্ষর, অঙ্কগুলি এবং অ-অক্ষরযুক্ত স্ট্রিং বাছাই শুরু করেন) যা প্রায়শই ডিলব্রেকার হয়ে থাকে তবে এখানে কিছু আসে যায় না matter । তদতিরিক্ত, "abc""abc"সরল করা হবে"abc"^2(আপনি যখন বার বার স্ট্রিং করেন তখন এটি একটি সমস্যা, তবে আমাদের তাও নেই), এবং এর মতো কিছু "abc"/"abc"আসলে বাতিল হয়ে যায় (যা আমরা এমনকি ব্যবহার করব)।

সুতরাং আমরা এখানে গল্ফ চেষ্টা করছেন। আমাদের স্বরবর্ণের একটি তালিকা এবং ব্যঞ্জনবর্ণের একটি তালিকা দরকার, যাতে আমরা Tuplesসমস্ত সম্ভাব্য সংমিশ্রণ উত্পন্ন করতে তাদের খাওয়াতে পারি । আমার প্রথম পদ্ধতির ছিল নিষ্পাপ সমাধান:

Characters@{a="bcdfghjklmnpqrstvwxz",b="aeiouy",a,b,a}

ব্যঞ্জনবর্ণের সেই হার্ডকোডযুক্ত তালিকাটি কিছুটা আঘাত করে। গণিতের একটি Alphabetঅন্তর্নির্মিত রয়েছে যা আমাকে এড়াতে সহায়তা করবে, যদি আমি সস্তা উপায়ে স্বরগুলি সরিয়ে ফেলতে সক্ষম হত। এটি যদিও এটি জটিল হয়ে ওঠে gets উপাদানগুলি অপসারণের সহজতম উপায় হ'ল Complementতবে নিম্নলিখিতটিগুলির মধ্যে একটি ব্যবহার করে এটি দীর্ঘ হওয়া শেষ করবে:

{a=Complement[Alphabet[],b=Characters@"aeiouy"],b,a,b,a}
{a=Complement[x=Alphabet[],b=x[[{1,5,9,15,21,25}]]],b,a,b,a}

(দ্রষ্টব্য যে আমাদের Charactersআর পুরো বিষয়টি প্রয়োগ করার দরকার নেই , কারণ Alphabet[]স্ট্রিং নয়, চিঠিগুলির একটি তালিকা দেয়))

সুতরাং আসুন সেই পাটিগণিত ব্যবসায়ের চেষ্টা করি। যদি আমরা তালিকার পরিবর্তে পুরো বর্ণমালা অক্ষরের পণ্য হিসাবে প্রতিনিধিত্ব করি তবে বাতিল করার নিয়মের কারণে আমরা সরল বিভাগ দ্বারা অক্ষরগুলি সরাতে পারি। এটি অনেকগুলি বাইট সঞ্চয় করে কারণ আমাদের প্রয়োজন হবে না Complement। তদতিরিক্ত, "a""e""i""o""u""y"আসলে তুলনায় একটি বাইট ছোট Characters@"aeiouy"। সুতরাং আমরা এটি দিয়ে:

a=##/(b="a""e""i""o""u""y")&@@Alphabet[]

আমরা কোথায় ব্যঞ্জনবর্ণ এবং স্বরবর্ণ পণ্য সংরক্ষণ করছেন aএবং bযথাক্রমে। এটি এমন একটি ফাংশন লিখে কাজ করে যা এর সমস্ত যুক্তিগুলিকে এর সাথে গুণিত করে ##এবং স্বরগুলির পণ্য দ্বারা ভাগ করে। এই ফাংশনটি বর্ণমালা তালিকায় প্রয়োগ করা হয়, যা প্রতিটি বর্ণকে পৃথক যুক্তি হিসাবে পাস করে।

এখনও পর্যন্ত ভাল, কিন্তু এখন আমাদের আছে

{a=##/(b="a""e""i""o""u""y")&@@Alphabet[],b,a,b,a}

তর্ক হিসাবে Tuplesএবং সেই জিনিসগুলি এখনও পণ্য, তালিকাগুলি নয়। সাধারণত, সংশোধন করার সবচেয়ে সংক্ষিপ্ততম উপায়টি List@@@সামনে রেখে দেয় যা পণ্যগুলিকে আবার তালিকায় পরিণত করে। দুর্ভাগ্যক্রমে, এই 7 বাইট যুক্ত করা এটিকে নিষ্পাপ পদ্ধতির চেয়ে দীর্ঘতর করে তোলে।

যাইহোক, দেখা যাচ্ছে যে Tuplesঅভ্যন্তরীণ তালিকার মাথাগুলি মোটেও যত্ন করে না। যদি তুমি করো

Tuples[{f[1, 2], f[3, 4]}]

(হ্যাঁ, অপরিশোধিত জন্য f)) আপনি পাবেন:

{{1, 3}, {1, 4}, {2, 3}, {2, 4}}

ঠিক যেমন আপনি Listপরিবর্তে একটি ব্যবহার করেছেন f। সুতরাং আমরা আসলে সেই পণ্যগুলি সরাসরি সোজাতে পাস করতে পারি Tuplesএবং এখনও সঠিক ফলাফল পেতে পারি। এটি দুটি হার্ডকোডযুক্ত স্ট্রিং ব্যবহার করে নিষ্কলুষ পদ্ধতির উপর 5 বাইট সংরক্ষণ করে।

এখন এটি "a""e""i""o""u""y"মোটামুটি বিরক্তিকর। তবে অপেক্ষা করুন, আমরা এখানে কয়েকটি বাইটও সংরক্ষণ করতে পারি! আমাদের ফাংশনের আর্গুমেন্টগুলি স্বতন্ত্র অক্ষর। সুতরাং আমরা যদি কেবল সঠিক যুক্তিগুলি বেছে নিই, আমরা স্ট্রিং ল্যাটারেলের পরিবর্তে সেগুলি পুনরায় ব্যবহার করতে পারি, যা তাদের তিনটির জন্য সংক্ষিপ্ত। আমরা চাই আর্গুমেন্ট #(সংক্ষিপ্ত #1), #5, #9, #15, #21এবং #25। যদি আমরা #শেষের দিকে রাখি, তবে *তাদের একসাথে গুণতে আমাদের কোনও যোগ করার দরকার নেই , কারণ (রেজেক্স) #\d+একটি সম্পূর্ণ টোকেন যা এতে কোনও অ-অঙ্ক যুক্ত করতে পারে না। অতএব আমরা #5#9#15#21#25#আরও 4 টি বাইট সংরক্ষণ করি।


11
ব্যাখ্যা পড়ে। সুতরাং ... মূলত যাদু।
ট্যালি

আমি আপনার Tuplesকৌশল দ্বারা অবাক এবং মুগ্ধ । এটি পুরোপুরি অনাদায়ী, তাই না? এবং অপ্রত্যাশিত দেওয়া কিভাবে দুই ইনপুট ফর্ম Tuples[list,n]সাথে চুক্তি listহচ্ছে না List(অন্তত আমার কাছে) মাথা!
এ সিমন্স


1
@ngenisis আমি এই শব্দটি খুব বিভ্রান্ত মনে করি। কারণ এটি পরিষ্কার নয় যে এটি একাধিক তালিকাগুলি ব্যবহার করার সময় বাইরের তালিকাকে বোঝায় । আসলে পরিবর্তে Tuples[f[{1,2}, {3,4}]]দেয় {f[1, 3], f[1, 4], f[2, 3], f[2, 4]}। এটি নথিভুক্ত নয় যে অভ্যন্তরীণ মাথাটি সম্পূর্ণ উপেক্ষা করা হয়েছে।
মার্টিন এেন্ডার

@ ASimmons সিসি। ^
মার্টিন এেন্ডার

16

পার্ল, 47 বাইট

#!perl -l
/((^|[aeiouy])[^aeiouy]){3}/&&print for a..1x5

এক হিসাবে শেবাংকে গণনা করা হচ্ছে।

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


2
এটি দুর্দান্ত, ভাল কাজ! কোন কারণ আপনি ব্যবহার করছেন না say?
দাদা

ধন্যবাদ। আমি অসম্মতি যে -M5.01'বিনামূল্যে' হওয়া উচিত।
প্রিমো

1
আমি আপনার মতামত পছন্দ -M5.010। এবং গল্ফিংয়ের আন্তঃআলগ্ন অংশটি এর সাথে প্রতিস্থাপন printকরা নয় say...
দাদা

নয় -E(এবং পরবর্তীকালে say) একটি freebie?
যায়েদ

@ জায়েদ প্রিমোর প্রথম মন্তব্য দেখুন
দাদা

11

পাইথন 3 - 110 বাইট

a,b="bcdfghjklmnpqrstvwxz","aeiouy";print(*(c+d+e+f+g for c in a for d in b for e in a for f in b for g in a))

সোজা লুপিং মজা :)


আমাদের ধারণাগুলি একই বলে মনে হয় তবে আপনি পাইথন 3 দিয়ে 10 দিয়ে আমাকে মারলেন!
এলপেড্রো

আমি এই পদ্ধতির সাহায্যে পাইথন 2 সমতুল্য পোস্ট করতে চলেছি। খুব ধীর গতির পরিবর্তে আপনার পক্ষে একটি ভোট।
ক্রিস এইচ

8

রুবি, 72 71 52 বাইট

puts (?z..?z*5).grep /#{["[^aeiouy]"]*3*"[aeiouy]"}/

প্রাথমিক ধারণাটির জন্য মান কালি ধন্যবাদ, যা এটিকে 60 বাইটে নামিয়ে আনে।


1
এটি 5-অক্ষরের শব্দের এবং ব্যবহারের একটি তালিকা তৈরি করা সংক্ষিপ্ত grep। যদি আপনি এমন একটি পরিসীমা তৈরি করেন যা লোয়ার-কেস স্ট্রিংগুলি ব্যবহার করে তবে আপনি কেবল নিম্ন-কেস শব্দের ক্রম পান। puts ("babab".."zyzyz").grep /#{["[^aeiouy]"]*3*"[aeiouy]"}/60 বাইটের জন্য
মান কালি

7

05 এ বি 1 ই , 18 16 বাইট

05AB1E ব্যবহার সিপি-1252 এনকোডিং।

žP3ãžO3ãâ€øJ€¨ê»

ব্যাখ্যা

žP3ã                # push all combinations of 3 consonants
    žO3ã            # push all combinations of 3 vowels
        â           # cartesian product
         €ø         # zip each pair of [ccc,vvv] (c=consonant,v=vowel)
           J        # join to list of strings ['cvcvcv','cvcvcv' ...]
            ۬      # remove last vowel from each
              ê     # sort and remove duplicates
              »     # join on newlines

পরীক্ষার উদ্দেশ্যে আমি žPকয়েকটি ব্যঞ্জনবর্ণ এবং žOকয়েকটি স্বর দিয়ে প্রতিস্থাপনের পরামর্শ দিই ।

5 ব্যঞ্জনবর্ণ এবং 3 স্বর ব্যবহারের উদাহরণ


কার্টেসিয়ান পণ্যটির দুর্দান্ত ব্যবহার। এটা ভাবিনি।
ম্যাজিক অক্টোপাস উরান


7

খাঁটি বাশ, 74

v={a,e,i,o,u,y}
c={b,c,d,f,g,h,{j..n},{p..t},v,w,x,z}
eval echo $c$v$c$v$c

সোজা ধনুর্বন্ধনী প্রসার।

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


যদি প্রতিটি আইটেম অবশ্যই নিজস্ব লাইনে থাকে তবে আমাদের কাছে রয়েছে:

খাঁটি বাশ, 84

v={a,e,i,o,u,y}
c={b,c,d,f,g,h,{j..n},{p..t},v,w,x,z}
eval printf '%s\\n' $c$v$c$v$c

7

পিএইচপি, 88 86 84 80 বাইট

সুন্দর স্ট্রিং ইনক্রিমেন্ট :)
ক্রিসটফ দ্বারা 6 টি বাইট সংরক্ষণ করা হয়েছে

for($s=$v=aeiouy;++$s<zyzza;preg_match("#[^$v]([$v][^$v]){2}#",$s)&&print"$s
");

থেকে সমস্ত স্ট্রিং মাধ্যমে লুপ bababaথেকে zyzyzএবং পরীক্ষা যদি তারা প্যাটার্ন মেলে। সাথে চালাও -nr


লোল, একটি বগি ভাষা স্পেকের সাথে গল্ফ করা, আমি এটি পছন্দ করি
প্যাট্রিক রবার্টস

1
@ পেট্রিকরোবার্টস এটি কোনও বাগ নয়। এটি বৈশিষ্ট্য। : ডিআই দুঃখিত যে তারা $a="001";$a++;কোনও দিন পূর্ণসংখ্যায় একটি নিখুঁত কাস্ট এম্বেড করে । এটি একটি খুব অসুবিধাজনক পরিবর্তন ছিল।
তিতাস

1
for($s=$v=aeiouy;++$s<zyzza;)preg_match("#[^$v][$v][^$v][$v][^$v]#",$s)&&print"$s\n";আপনাকে 1 চর বাঁচায় দুঃখজনকভাবে আপনাকে প্রিন্ট করতে ইকো পরিবর্তন করতে হবে &&\nএকটি আসল লাইন বিরতি দিয়ে প্রতিস্থাপন অন্যটি সংরক্ষণ করে।
ক্রিস্টফ

1
আপনি কিছু অক্ষর ব্যবহার করে সংরক্ষণ করতে পারেন "#([^$v][$v]){2}​[^$v]#"তবে আমি এটি পরীক্ষা করি নি।
ক্রিস্টোফ

1
@Christoph: idk কেন, কিন্তু ([^$v][$v]​){2}[^$v], লুপ কাজ করে না যখন [^$v]([$v]​[^$v]){2}আছে। যদিও উভয় স্ট্যান্ডেলোন (এমনকি চলক সহ)।
তিতাস

6

এমএটিএল , 21 বাইট

11Y2'y'h2Y2X~6Myyy&Z*

এটি অনলাইন চেষ্টা করুন! (তবে আউটপুট কেটে দেওয়া হয়েছে)।

11Y2   % Push 'aeiou' (predefined literal)
'y'    % Push 'y'
h      % Concatenate: gives 'aeiouy'
2Y2    % Push 'abcdefghijklmnopqrstuvwxyz' (predefined literal)
X~     % Set symmetric difference: gives 'bcdfghjklmnpqrstvwxz'
6M     % Push 'aeiouy' again
yyy    % Duplicate the second-top element three times onto the top. The stack now
       % contains 'bcdfghjklmnpqrstvwxz', 'aeiouy', 'bcdfghjklmnpqrstvwxz',
       % 'aeiouy', 'bcdfghjklmnpqrstvwxz'
&Z*    % Cartesian product of all arrays present in the stack. Implicity display

আমার মনে হয় এটির কাজ করা উচিত, একটি বাইট কামানো: 11Y2'y'h2Y2yX~yyy&Z*( অনলাইনে এটি ব্যবহার করে দেখুন! )
কনর ও ব্রায়ান

@ কনরও ব্রায়েন দুর্ভাগ্যক্রমে, এটি প্রয়োজনীয় হিসাবে vcvcvনয়, প্যাটার্নটি তৈরি করে cvcvc। ধন্যবাদ যদিও!
লুইস মেন্ডো

6

পাইথন, 92 বাইট

f=lambda i=-4,s='':i*[s]or sum([f(i+1,s+c)for c in i%2*'AEIOUY'or'BCDFGHJKLMNPQRSTVWXZ'],[])

itertoolsজিততে দিতে পারি না । পাইথন 2 এ আইট্রেটিভ 1 বাইট দীর্ঘ।

W='',
for s in(['AEIOUY','BCDFGHJKLMNPQRSTVWXZ']*3)[1:]:W=[w+c for w in W for c in s]
print W

এটি দুর্দান্ত ^ _ ^
এবিসিডেক্সটার

6

হাস্কেল, 54 51 বাইট

l="bcdfghjklmnpqrstvwxz":"aeiouy":l
mapM(l!!)[0..4]

mapM func listপ্রদত্ত তালিকা থেকে সূচক i এর জন্য সম্ভাব্য অক্ষর নিয়ে সমস্ত শব্দ তৈরি করে func (list!!i)

সম্পাদনা করুন: @ এক্সনর সংরক্ষণ করতে 2 বাইট খুঁজে পেয়েছিলেন এবং তার সমাধানটি দেখে আমি অন্য একটি পেয়েছি।


mapM id$take 5$cycle["bcdfghjklmnpqrstvwxz","aeiouy"]একটি বাইট সংরক্ষণ করে।
xnor

আরও ভাল, mapM(cycle["bcdfghjklmnpqrstvwxz","aeiouy"]!!)[0..4]বা mapM(["bcdfghjklmnpqrstvwxz","aeiouy"]!!)[0,1,0,1,0]। স্বর এবং ব্যঞ্জনবর্ণকে হার্ডকোড না দিয়ে ভাল লাগবে, তবে mapM(\n->[x|x<-['a'..'z'],elem x"aeiou"==odd n])[0..4]এটি বেশ তৈরি করে না।
xnor

@ এক্সনর: ধন্যবাদ! cycleসুস্পষ্ট পুনরাবৃত্তির সাথে আপনার প্রথম বৈকল্পিক থেকে প্রতিস্থাপন করা একটি অতিরিক্ত বাইট সংরক্ষণ করে।
নিমি

5

ব্র্যাচল্যাগ , 18 বাইট

@W:@Dg:2jcb:eac@w\

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

ব্যাখ্যা

@W:@D                 The list ["aeiouy", "bcdfghjklmnpqrstvwxz"]
     g:2jcb           The list ["bcdfghjklmnpqrstvwxz", "aeiouy", "bcdfghjklmnpqrstvwxz", "aeiouy", "bcdfghjklmnpqrstvwxz"]
           :ea        Take one character of each string
              c       Concatenate into a single string
               @w     Write to STDOUT followed by a newline
                 \    Backtrack: try other characters of the string

আমি প্রয়োজনীয়তার এ বিস্মিত ছিল gএবং b, কিন্তু এটা পরীক্ষা, কারণ এই হল jইনপুট হিসাবে স্ট্রিং একটি তালিকা নিতে নারাজ আ মনে হচ্ছে? :eaযদিও প্রোলগ / ব্র্যাচেল্যাগের শক্তিগুলি সত্যই প্রদর্শিত হয় এবং এটি এমন একটি পদক্ষেপ যা বেশিরভাগ অন্যান্য ভাষাগুলি আরও বেশি কঠিন খুঁজে পান।

@ ais523 হ্যাঁ, আমিও suprised হয়েছিল যে gbপ্রয়োজন ছিল। jমনে হচ্ছে এটি বাগড হয়েছে এবং এটি কেবলমাত্র একটি তালিকা থেকে আর্গুমেন্টের একটি তালিকা আলাদা করতে অসুবিধা হয়েছে। আমি এটি ঠিক করতে পারি যদিও এটি আবার বাস্তবায়নকে জটিল করে তুলবে। আমি পাশাপাশি এটি ঠিক করতে এবং ব্র্যাকল্যাগের নতুন সংস্করণে মূল সমস্যাটি ঠিক করার জন্য আমার সময় ব্যয় করতে পারি না।
26 এ ফ্যাটালাইজ করুন

5

জাভাস্ক্রিপ্ট (ES6), 91 90 বাইট

f=(s='',i=4)=>{for(c of i%2?'aeiouy':'bcdfghjklmnpqrstvwxz')i?f(s+c,i-1):console.log(s+c)}

সম্পাদনাগুলি

  • ETHproductions: -1 এ তিন অপারেটর প্রায় বিদেশী গ্রুপ সরিয়ে বাইট forবিবৃতি

ব্যাখ্যা

এটি একটি 5-গভীর পুনরাবৃত্তির ফাংশন সংজ্ঞায়িত করে যা স্বর বা ব্যঞ্জনবর্ণগুলি পুনরাবৃত্তি করতে হবে তা নির্ধারণ করতে তার কলটির গভীরতার সমতা ব্যবহার করে। প্রতিটি পুনরাবৃত্তিতে এটি পুনরুক্তি করা বা ছাপতে হবে কিনা তা যাচাই করে তা পুনরুক্তার পরিমাণগুলি রেখে গেছে কিনা তা পরীক্ষা করে দেখায় এবং বর্তমানে তার বর্তমান পুনরাবৃত্তির অক্ষরটি 5 অক্ষরের স্ট্রিংয়ের শেষে যুক্ত করে যা বর্তমানে গভীরতা-প্রথম নির্মিত হচ্ছে।

ISO8859-1 এনকোডিং ধরে ধরে বিকল্প 89 বাইট সমাধান:

f=(s='',i=4)=>{for(c of i%2?'aeiouy':btoa`mÇ_äi骻-¿s`)i?f(s+c,i-1):console.log(s+c)}

বিকল্প 96 বাইট সমাধান যা পুরো আউটপুটটিকে একক স্ট্রিং হিসাবে প্রদান করে:

f=(s='',i=4,o='')=>eval("for(c of i%2?'aeiouy':'bcdfghjklmnpqrstvwxz')o+=i?f(s+c,i-1):s+c+`\n`")

আপনার নিজের ঝুঁকিতে চালান. 91 বাইট সমাধানের জন্য, কেবল ব্যবহার করুন f()এবং 97 বাইট বিকল্পের জন্য, ব্যবহার করুন console.log(f())


আমি সমাধানটিকে দুটি ভিন্ন উপায়ে জেনারেটরে পরিণত করার চেষ্টা করেছি । শুধুমাত্র ফায়ারফক্স সমর্থিত শর্টহ্যান্ড ফর্মটি ব্যবহার করা একই দৈর্ঘ্য: f=(s='',i=2)=>(for(c of(i%2?'aeiouy':'bcdfghjklmnpqrstvwxz'))for(q of i?f(s+c,i-1):[s+c])q)স্ট্যান্ডার্ড ফর্মটি ব্যবহার করা দুর্ভাগ্যবশত আরও একটি বাইট দীর্ঘ: function*f(s='',i=2){for(c of(i%2?'aeiouy':'bcdfghjklmnpqrstvwxz'))yield*i?f(s+c,i-1):[s+c]}এখনও কোনও দিনের জন্য অপেক্ষা করা হয় যখন কোনও জেনারেটর সবচেয়ে সংক্ষিপ্ত বিকল্প হয় ...
ETH প্রোডাকশনগুলি

1
বিটিডব্লিউ, আপনি for...ofবাইট সংরক্ষণের জন্য বিবৃতিতে অভ্যন্তরীণ
পেরেনগুলি

5

সি, 201 199 186 184 183 169 163 বাইট

পূর্ববর্তী বেসিক গণনা পদ্ধতির চেয়ে কিছুটা আলাদাভাবে করা:

f(){for(char*c="bcdfghjklmnpqrstvwxz",*v="aeiouy",i[5]={0},*s[]={c,v,c,v,c},j=0;j<5;puts("")){for(j=5;j--;putchar(s[j][i[j]]));for(;j++<5&&!s[j][++i[j]];i[j]=0);}}

Ungolfed:

f() {
    for(char *c="bcdfghjklmnpqrstvwxz", *v="aeiouy", i[5]={0}, *s[]={c,v,c,v,c}, j=0; j<5; puts("")) {
        for (j=5; j--; putchar(s[j][i[j]])) ;
        for (; j++ < 5 && !s[j][++i[j]]; i[j]=0) ;
    }
}

এবং আরও কিছুটা প্রচলিত উপায়ে লেখা:

f() {
    char *c="bcdfghjklmnpqrstvwxz", *v="aeiouy", i[]={0,0,0,0,0}, *s[]={c,v,c,v,c}, j=0;
    while (j>=0) {
        for (j=0; j<5; j++) putchar(s[j][i[j]]); // output the word
        while (--j>=0 && !s[j][++i[j]]) i[j]=0; // increment the counters
        puts("");
    }
}

মূলত, আমি কাউন্টার, এবং প্রতিটি কাউন্টারের জন্য আমাদের পুনরাবৃত্তি করা উচিত যা সমস্ত অক্ষর যুক্ত স্ট্রিং এর অ্যারে গুলি । কৌশলটি লুপের সময় অভ্যন্তরীণ : এটি কাউন্টারগুলি বাড়ানোর জন্য ব্যবহৃত হয়, ডানদিক থেকে শুরু করে। যদি আমরা দেখতে পাই যে আমাদের পরবর্তী অক্ষরটি প্রদর্শন করা উচিত তবে এটি শেষ নাল চর, আমরা কাউন্টারটি শূন্যে পুনরায় চালু করব এবং "ক্যারি" পরবর্তী কাউন্টারে প্রচার করা হবে।

ধন্যবাদ ক্রিস্টফ!


পিপিসিজিতে আপনাকে স্বাগতম!
মার্টিন এন্ডার

1
char *cআমি মনে করি স্থানটি অপ্রয়োজনীয়।
ক্রিস্টোফ

1
f(){char*c="bcdfghjklmnpqrstvwxz",*v="aeiouy",i[]={0,0,0,0,0},*s[]={c,v,c,v,c},j=0;while(j>=0){for(j=0;j<5;++j)putchar(s[j][i[j]]);for(;--j>=0&&!s[j][++i[j]];)i[j]=0;puts("");}}আপনাকে 177 এ পৌঁছে দেয় on আসুন আপনি আরও ভাল করতে পারেন))।
ক্রিস্টোফ

2
ব্যবহার i[5]={0}পরিবর্তে i[]={0,0,0,0,0}7 বাইট পরিমাণ সঞ্চয় হয়।
13:34

1
@ ক্রিসটফ আহা, ধন্যবাদ ভাল করেছ. তবে আপনি এটি উপভোগ করেছেন বলে মনে হয়েছিল, এ কারণেই আমি চ্যালেঞ্জটি চাপছি (না, আমি মজা করছি: আমি পাছায় ব্যথা করছিলাম বলেই আমি এটি করেছি)। গুরুত্ব সহকারে, আলোকিতকরণের জন্য ধন্যবাদ।
অস্পষ্ট

4

পার্ল, 71 বাইট

map{push@{1+/[aeiouy]/},$_}a..z;$"=",";say for glob"{@1}{@2}"x2 ."{@1}"

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

ব্যাখ্যা

আমি পরে আরও ব্যাখ্যা যুক্ত করব।

map{push@{1+/[aeiouy]/},$_}a..z;দুটি অ্যারে তৈরি করে: @1এতে ব্যঞ্জনবর্ণ @2থাকে এবং এতে স্বর থাকে।
globযখন আর্গুমেন্টের সাথে কল করা হয় তখন {a,b}{c,d}বন্ধনীগুলির মধ্যে থাকা উপাদানগুলির সমস্ত ক্রিয়াকলাপ প্রদান করে।


4

বেফুঞ্জ, 95 বাইট

::45*%\45*/:6%\6/:45*%\45*/:6%\6/1g,2g,1g,2g,1g,55+,1+:"}0":**-!#@_
bcdfghjklmnpqrstvwxz
aeiouy

এটি অনলাইন চেষ্টা করুন! যদিও দ্রষ্টব্য যে আউটপুটটি কেটে যাবে।

শেষ থেকে দুটি লাইনে সারণী থেকে প্রাপ্ত সংখ্যার "অঙ্কগুলি" সহ, এটি 20 থেকে 20-7-6-29 -কে একটি মিশ্র ভিত্তিক সংখ্যা হিসাবে সূচককে আউটপুট করে 0 থেকে 287999 এর পরিসীমা ছাড়িয়ে যায়।


4

পার্ল 6 , 70 বাইট

$_=<a e i o u y>;my \c=[grep .none,"a".."z"];.say for [X~] c,$_,c,$_,c

আকর্ষণীয় অংশের ব্যাখ্যা:

.say for [X~] c, $_, c, $_, c

              c, $_, c, $_, c  # list of five lists
         [X ]                  # lazily generate their Cartesian product
           ~                   # and string-concatenate each result
.say for                       # iterate to print each result

এর আগে কোডটি কেবল স্বরগুলির তালিকা তৈরি করে ( $_) এবং ব্যঞ্জনবর্ণের তালিকা ( c), যা আফসোসীয়ভাবে ভার্বোজ is


4

পাইথন 2 , 120 117 বাইট

ট্যাবস টিপসের জন্য @ ওয়েট উইজার্ডকে ধন্যবাদ।

x,y='aeiouy','bcdfghjklmnpqrstvwxz'
for a in x:
 for e in x:
	for b in y:
		for c in y:
			for d in y:print b+a+c+e+d

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

এটি অনেক গল্ফ করা যেতে পারে তা নিশ্চিত নয়। 128KB এ এটি অনলাইন কাটতে চেষ্টা করুন তবে একটি ধারণা দেওয়ার জন্য যথেষ্ট দেখায়। শব্দগুলি গণনা করতে ডিবাগ কোড সহ একটি স্থানীয় রান মোট 288000 দিয়েছে anyone কেউ যদি পরীক্ষা দিতে চায় তবে প্রায় 45 সেকেন্ডের মধ্যে চলে।

zyzyv
zyzyw
zyzyx
zyzyz
Total word count: 288000

১১০ বাইটের জন্য অ-সঙ্গতিপূর্ণ এবং অতএব প্রতিযোগিতামূলক সংস্করণ (নির্দিষ্ট বিন্যাসের পরিবর্তে নেস্টেড অ্যারেগুলি মুদ্রণ করে):

x,y='aeiouy','bcdfghjklmnpqrstvwxz'
print[[[[c+a+d+b+e for e in y]for d in y]for c in y]for b in x]for a in x]

1
আমার প্রথম প্রয়োগটি ছিল :)
ক্যাররা

আপনার সমস্ত ইনডেন্টেশনের জন্য স্পেস ব্যবহার না করে আপনি একক ইনডেন্টের জন্য স্পেস এবং ডাবলের জন্য ট্যাব ব্যবহার করতে পারেন।
গম উইজার্ড


4

xeger , 49 বাইট

([bcdfghj-np-tvwxz][aeiouy]){2}[bcdfghj-np-tvwxz]

একটি নিয়মিত অভিব্যক্তি দেওয়া, xeger কেবল সমস্ত ম্যাচের স্ট্রিং উত্পন্ন করে। ব্রাউজারটি না মারার জন্য, এটি প্রতি 1000 আউটপুটগুলিতে বিরতি দেয় এবং আপনাকে চালিয়ে যেতে ক্লিক করতে হবে তবে অবশেষে এটি সেখানে পৌঁছে যাবে।


এখানে একটি 23-বাইট সংস্করণ রয়েছে যা বাগের সাথে ^সংশোধন করা হয়েছে:

([:c^y][:v:y]){2}[:c^y]

এই চরিত্র শ্রেণীর "সব ছোট হাতের হওয়া ASCII ব্যঞ্জনবর্ণ" হয় [:c]সঙ্গে yবাদ ^y, এবং "সব ছোট হাতের হওয়া ASCII স্বরবর্ণ" [:v:]সঙ্গে yযোগ করেছেন।


এটি কোন রেজেক্স স্বাদ ভিত্তিক? (বা আপনি যদি নিজেরাই রোল করেন তবে এটি কোন বৈশিষ্ট্যগুলিকে সমর্থন করে? এতে কোনও ডকুমেন্টেশন আছে কি?)
মার্টিন এন্ডার

@ মার্টিনএেন্ডার এটি ডিএফএ ট্র্যাভারসাল থেকে একটি রোল-নিজস্ব (এটি একটি ডিএফএ / এনএফএ ভিজ্যুয়েজার থেকে বেড়েছি যা আমি শিক্ষার্থীদের জন্য তৈরি করেছি , যার কিছু সীমিত ডকুমেন্টেশন রয়েছে) - কোনও ব্যাক-রেফারেন্স নেই, নিয়মিত কিছু নয়। এটি দীর্ঘ স্ট্রিংয়ের জন্য খুব ধীর অভিব্যক্তিগুলির একমাত্র আকর্ষণীয় বৈশিষ্ট্যটি তাদের সাথে মিলিত &
মাইকেল হোমার

আমি পৃষ্ঠাটিতে বাকীগুলির নথিপত্র এবং কিছু নমুনা যুক্ত করেছি।
মাইকেল হোমার

1
দেখে মনে হচ্ছে আপনি অক্ষর শ্রেণিতে রেঞ্জ প্রয়োগ করেছেন। তাহলে আপনি করতে পারেন [bcdfghj-np-tvwxz]
মার্টিন ইন্ডার

4

জাভাস্ক্রিপ্ট (ফায়ারফক্স 30-57), 82 বাইট

f=(i=5)=>i?[for(s of f(i-1))for(c of i%2?'bcdfghjklmnpqrstvwxz':'aeiouy')s+c]:['']

স্ট্রিংগুলির একটি অ্যারে প্রদান করে। জন্য অত্যন্ত দ্রুত সংস্করণ 102 101 (@ETHproductions 1 বাইট ধন্যবাদ) বাইট:

_=>[for(i of c='bcdfghjklmnpqrstvwxz')for(j of v='aeiouy')for(k of c)for(l of v)for(m of c)i+j+k+l+m]

খুশী হলাম। দ্রুত সংস্করণে একটি বহিরাগত স্থান রয়েছে যা 101 বাইটের জন্য অপসারণ করা যেতে পারে
ইটিএইচ প্রোডাকশনগুলি

3

সিজেম , 32 31 29 28 বাইট

মার্টিন ইন্ডারকে 2 বাইট এবং কইনকে 1 বাইট ধন্যবাদ সংরক্ষণিত

"aeiouy"_'{,97>^\1$1$1$N]:m*

এটি অনলাইন চেষ্টা করুন! (দ্রষ্টব্য যে আউটপুট টিআইও-তে কাটা যায়)

ব্যাখ্যা

"aeiouy"_ e# Push the six vowels and duplicate
'{,97>    e# Push the whole alphabet
^         e# Symmetric set difference of the alphabet with the vowels, yields the consonants only
\         e# Swap top two elements
1$1$1$    e# Copy the second-from-the-top string to the top three times
          e# This results in the array being consonants-vowels-consonants-vowels-consonants
N         e# Add a newline character to the end of the list
]         e# End an array. Puts everything done so far in an array
          e# since there was no explicit start of the array.
:m*       e# Reduce the array using Cartesian products

'{,97>বর্ণমালা পেতে এবং তারপরে "aeiouy"_'{,97>^অন্য একটি বাইট সংরক্ষণ করুন 1$
মার্টিন এেন্ডার

আপনার খুব প্রথম চরিত্রের দরকার নেই। এটি স্ট্যাকটি শুরু হয়ে গেলে ধরে নেওয়া হয়।
কেইন

@ কেইন আকর্ষণীয়, এটি জানেন না। ধন্যবাদ।
ব্যবসায় বিড়াল

a "আইইউই" _ '97, 97> ^] 3 * (;: এম * এন * the $ চিহ্নগুলি উপেক্ষা করুন। মন্তব্যগুলিতে কোড কীভাবে রাখবেন তা
আইডিক

@ কেইন "` "এর মতো ব্যাকটিকগুলি ব্যবহার করুন।
কনর ও'ব্রায়ান


3

পার্ল, 63 59 54 বাইট

$a="aeiouy";$b="[^$a][$a]"x2;for("a"x5.."z"x5){say if/$b[^$a]/}
$a="aeiouy";$b="[^$a][$a]"x2;/$b[^$a]/&&say for"a"x5.."z"x5

$a=aeiouy;$b="[^$a][$a]"x2;/$b[^$a]/&&say for a.."z"x5

পরিবর্তনের জন্য পার্ল গল্ফ চেষ্টা করছেন।
সম্পাদনা: দেখে মনে হচ্ছে এখনও শিখার মতো অনেক কিছুই পেয়েছি ... :)


দুর্দান্ত একটি (প্রিমুর উত্তর কম থাকলেও) is /$b[^$a]/&&say for"a"x5.."z"x5কয়েকটি বাইট সংরক্ষণ করার জন্য আপনি শেষটি লিখতে পারেন । সম্পাদনা: এবং আপনি ড্রপ করতে পারেন $bকি $a="aeiouy";/([^$a][$a]){2}[^$a]/&&say for"a"x5.."z"x5
দাদা

এছাড়াও, আপনার চারপাশের উদ্ধৃতিগুলির প্রয়োজন নেই aeiouy। এছাড়াও, যেহেতু আপনার রেজেক্স 5 টি চরিত্রের জন্য যাচাই করে, আপনি এটি করতে পারেন a.."z"x5
দাদা

@ দাদা: ধন্যবাদ যে কেউ পার্লকে সাধারণ প্রোগ্রামিংয়ের জন্য ব্যবহার করেন তবে এখন পর্যন্ত গল্ফিংয়ের জন্য নয়, আমি অ-কড়া মোড ব্যবহার করার কথা ভাবিও নি। কেন আমি বেছে নেওয়া হয়েছে যে $aএবং $bপরিবর্তনশীল নাম, এমনকি কঠোর মোডে ঘোষিত কারণ ঐ প্রয়োজন হবে না ... :) আমিও পার্ল 6 অনেক ব্যবহার এই দিন, যা এমনকি না আছে একটি অ-কঠোর মোড।
স্মৃতি

3

স্কালা, 87 86 বাইট

val a="aeiouy"
val b='a'to'z'diff a
for(c<-b;d<-a;e<-b;f<-a;g<-b)println(""+c+d+e+f+g)

বাইট সংরক্ষণ করতে আপনি এর f"$c$d$e$f$g"সাথে প্রতিস্থাপন করতে পারেন ""+c+d+e+f+g
করভাস_192

3

আর, 143 132 বাইট

q=letters;v=c(1,5,9,15,21,25);x=list(q[-v],q[v],q[-v],q[v],q[-v]);Reduce(paste0,mapply(function(a,b)rep(a,e=b/20),x,cumprod(sapply(x,length))))

q=letters;v=c(1,5,9,15,21,25);x=list(a<-q[-v],b<-q[v],a,b,a);Reduce(paste0,mapply(function(a,b)rep(a,e=b/20),x,cumprod(lengths(x))))

কোড গল্ফ এ এটি আমার প্রথম যেতে হয় তাই আমি এটিকে আরও কাটাতে যে কোনও পরামর্শকে স্বাগত জানাই। এখনও অবধি এটি বেশ সুন্দর স্ট্যান্ডার্ড আর; এখানে কেবলমাত্র সম্ভাব্যতম বিষয় হ'ল পেস্ট0 তার যুক্তিগুলিকে দীর্ঘতম দৈর্ঘ্যের পুনর্বিবেচনা করে।

সম্পাদনা: rturnbull থেকে ব্যবহার নিয়োগ কৌতুক, প্রতিস্থাপিত sapply(x,length)সঙ্গে lengths


সাইটে স্বাগতম! এটি দেখতে বেশ ভাল লাগছে (আমি কেবলমাত্র আর তে নিজেকে কিছুটা প্রোগ্রামিং করেছি) আমি কেবলমাত্র আপনার উত্তরে পুরাতন কোডটি অন্তর্ভুক্ত না করার পরামর্শ দেব। সম্পাদনা ইতিহাস সর্বদা উপলভ্য থাকে তাই যে কেউ যে কেউ সর্বদা এটি দেখতে পারে। এটি একটি ব্যক্তিগত শৈলীগত জিনিস বেশি তাই আমার মতামত উপেক্ষা করতে নির্দ্বিধায়।
গম উইজার্ড

আপনি এটি 114 বাইটের জন্য ক্রিয়াকলাপের কার্যক্রমে জাল-জোর করতে পারেন !
Punintended

3

আর, 111 98 বাইট

yস্বর হিসাবে যুক্ত হয়েছে , এবং 13 পেট বিস্ফোরিত হয়েছে, @ পেট্রিক বি কে ধন্যবাদ thanks

l=letters
v=c(1,5,9,15,21,25)
apply(expand.grid(C<-l[-v],V<-l[v],C,V,C)[,5:1],1,cat,fill=T,sep="")

আমরা ম্যাট্রিক্সের এবং expand.gridসম্ভাব্য সমস্ত সংমিশ্রণ তৈরি করতে ব্যবহার করি , যা আমরা প্রিসেট ভেরিয়েবল (বর্ণমালা) থেকে সংজ্ঞায়িত করি । বর্ণানুক্রমিক ক্রম নিশ্চিত করার জন্য আমরা সংযুক্তিগুলি বিপরীত করি (দ্রুততম ঘোরার জন্য প্রথম পরিবর্তনশীলটির ডিফল্ট হিসাবে)। তারপরে আমরা ম্যাট্রিক্সের প্রতিটি সারিটি দিয়ে পুনরাবৃত্তি করি এবং প্রতিটি অক্ষর stdout এ মুদ্রণ করি। প্রতিটি শব্দ একটি নতুন লাইনে শুরু হয় তা নিশ্চিত করার জন্য আমরা যুক্তিটি ব্যবহার করি ।VClettersfillcat


নিস! আপনি এটিকে আরও 98 টি অক্ষরে কেটে ফেলতে পারেন ('y' স্বর হিসাবে যোগ করুন, বা 95 নয়) বিড়ালের কিছু বিকল্প ব্যবহার করে এবং "অক্ষর" নাম পরিবর্তন করে: l = অক্ষর; ভি = সি (1,5,9, 15,21,25); প্রয়োগ (expand.grid (গ <-l [-v], ভী <- L [V], সি, ভি, সি) [5: 1], 1, বিড়াল , পূরণ = টি, সেপ = "")
প্যাট্রিক বি

@PatrickB। ধন্যবাদ! আমি আপনার পরামর্শ অন্তর্ভুক্ত করেছি।
rturnbull


2

ক্লোজার, 101 বাইট

(print(apply str(for[V["aeiouy"]C["bcdfghjklmnpqrstvwxz"]a C b V c C d V e C](str a b c d e "\n")))))

উত্তেজনাপূর্ণ নয় ...


2

রুবি, 65 61 বাইট

সম্পূর্ণ ভিন্ন পদ্ধতির:

(b=[*?a..?z]-a="aeiouy".chars).product(a,b,a,b){|x|puts x*""}

আমি আজ নতুন জিনিস শিখেছি: অ্যারে # পণ্য ফাংশন


2

সি 361 বাইট

f(){i,j,k,l,m;v[6]={97,101,105,111,117,121};c[25];s=26;for(i=0;i<26;i++)c[i]=97+i;for(i=0;i<26;i++){for(j=0;j<6;j++)if(c[i]==v[j])c[i]+=1;}for(i=0;i<s;i++)for(j=i+1;j<s;){ if(c[i]==c[j]){for(k=j;k<s-1;++k)c[k]=c[k+1];--s;}else ++j;}for(i=0;i<s;i++)for(j=0;j<6;j++)for(k=0;k<s;k++)for(l=0;l<6;l++)for(m=0;m<s;m++)printf("%c%c%c%c%c\n",c[i],v[j],c[k],v[l],c[m]);}

অবরুদ্ধ সংস্করণ:

void f()
{   
int i,j, k,l,m;
int s=26;
int v[6]={97,101,105,111,117,121};
int c[s];

for(i=0;i<s;i++)
 c[i]=97+i;
for(i=0;i<s;i++)
{     
  for(j=0;j<6;j++)
    if(c[i]==v[j])
      c[i]+=1;
     }
for(i=0;i<s;i++)
 for(j=i+1;j<s;)
 { if(c[i]==c[j])
  {
    for(k=j;k<s-1;++k)
      c[k]=c[k+1];
      --s;  
  }else
   ++j;  
  }
for(i=0;i<s;i++)
  for(j=0;j<6;j++)
       for(k=0;k<s;k++)
        for(l=0;l<6;l++)
         for(m=0;m<s;m++)       
      printf("%c%c%c%c%c\n",c[i],v[j],c[k],v[l],c[m]);
}

এটি অবশ্যই সংক্ষিপ্ত করার জন্য কিছু উপায় থাকতে হবে।

ব্যাখ্যা

  • A, e, i, o, u, y এর সংখ্যার অ্যারেতে পূর্ণসংখ্যা মানগুলি সঞ্চিত করে,
  • অ্যারেতে সমস্ত বর্ণমালা সংরক্ষণ করা হয়েছে, যদি এটি স্বর হয়, তবে এটি একটি ব্যঞ্জনবর্ণের সাথে প্রতিস্থাপন করে, সুতরাং অ্যারেতে নকল ব্যঞ্জনবর্ণের মানগুলি ছিল,
  • সদৃশ ব্যঞ্জনবর্ণ মানগুলি সরানো হয়েছে,
  • সমস্ত সমন্বয় সিভিসিভিসি মুদ্রিত।

আপনি যদি একটি অসমাপ্ত সংস্করণ রাখতে পারেন যা প্রচুর পরিমাণে সহায়তা করবে।
সিগস্ট্যাকফুল্ট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.