ট্র্যাক
/
ABAP
ABAP
/
অনুশীলনী
/
এলিসের মন্ত্র
এলিসের মন্ত্র

এলিসের মন্ত্র

সহজ

নির্দেশনা

ভবিষ্যতের জাদুকর এলিসের কয়েকটি বেসিক বিষয় অনুশীলন করা দরকার। তার কাছে কার্ডের একটি স্ট্যাক আছে, যেটি নিয়ে সে কাজ করতে চায়।

কাজটা একটু সহজ করতে সে শুধু ১ থেকে ১০ নম্বরের কার্ড ব্যবহার করে, তাই তার কার্ডের স্ট্যাককে সংখ্যার একটি ইন্টারনাল টেবিল দিয়ে প্রকাশ করা যায়। কোনো একটি কার্ডের পজিশন টেবিলের সারির সাথে মিলে যায়। এর মানে ১ নম্বর সারি প্রথম কার্ডটিকে বোঝায়, ২ নম্বর সারি দ্বিতীয় কার্ডটিকে, ইত্যাদি।

1. স্ট্যাক থেকে একটি কার্ড বের করা

একটি কার্ড তুলতে প্রদত্ত স্ট্যাক থেকে position ইনডেক্সের কার্ডটি রিটার্ন করুন।

data(stack) = value #( ( 1 ) ( 2 ) ( 4 ) ( 1 ) ).
data(card) = get_Item( stack = stack
                       position = 3 ).   " card = 4

2. স্ট্যাকে একটি কার্ড বদল করা

একটু হাতের কৌশল দেখিয়ে position ইনডেক্সের কার্ডটি প্রদত্ত রিপ্লেসমেন্ট কার্ডের সাথে বদলে দিন। পরিবর্তিত স্ট্যাকটি রিটার্ন করুন।

data(stack) = value #( ( 1 ) ( 2 ) ( 4 ) ( 1 ) ).
data(new_Stack) = set_Item( stack = stack
                            position = 3 
                            replacement = 6 ).   
" new_Stack = 1, 2, 6, 1

3. স্ট্যাকের উপরে একটি কার্ড ঢোকানো

স্ট্যাকের উপরে একটি নতুন কার্ড ঢুকিয়ে একটি কার্ড আবির্ভূত করুন। পরিবর্তিত স্ট্যাকটি রিটার্ন করুন।

data(stack) = value #( ( 5 ) ( 9 ) ( 7 ) ( 1 ) ).
data(new_Stack) = insert_Item_at_Top( stack    = stack
                                      new_Card = 8 ).   
" new_Stack = 5, 9, 7, 1, 8

4. স্ট্যাক থেকে একটি কার্ড সরানো

স্ট্যাক থেকে প্রদত্ত position অবস্থানে থাকা কার্ডটি সরিয়ে একটি কার্ড উধাও করুন। পরিবর্তিত স্ট্যাকটি রিটার্ন করুন।

data(stack) = value #( ( 3 ) ( 2 ) ( 6 ) ( 4 ) ( 8 ) ).
data(new_Stack) = remove_Item( stack    = stack
                               position = 3 ).   
" new_Stack = 3, 2, 4, 8

5. স্ট্যাক থেকে উপরের কার্ডটি সরানো

স্ট্যাকের উপরের কার্ডটি সরিয়ে একটি কার্ড উধাও করুন। পরিবর্তিত স্ট্যাকটি রিটার্ন করুন।

data(stack) = value #( ( 3 ) ( 2 ) ( 6 ) ( 4 ) ( 8 ) ).
data(new_Stack) = remove_Item_from_Top( stack ).   
" new_Stack = 3, 2, 6, 4

6. স্ট্যাকের নিচে একটি কার্ড ঢোকানো

স্ট্যাকের নিচে একটি নতুন কার্ড ঢুকিয়ে একটি কার্ড আবির্ভূত করুন। পরিবর্তিত স্ট্যাকটি রিটার্ন করুন।

data(stack) = value #( ( 5 ) ( 9 ) ( 7 ) ( 1 ) ).
data(new_Stack) = insert_Item_at_Bottom( stack    = stack
                                         new_Card = 8 ).   
" new_Stack = 8, 5, 9, 7, 1

7. স্ট্যাকের নিচ থেকে একটি কার্ড সরানো

স্ট্যাকের নিচের কার্ডটি সরিয়ে একটি কার্ড উধাও করুন। পরিবর্তিত স্ট্যাকটি রিটার্ন করুন।

data(stack) = value #( ( 8 ) ( 5 ) ( 9 ) ( 7 ) ( 1 ) ).
data(new_Stack) = remove_Item_from_Top( stack ).   
" new_Stack = 5, 9, 7, 1

8. স্ট্যাকের আকার যাচাই করা

স্ট্যাকের আকার (সারির সংখ্যা) রিটার্ন করুন।

data(stack) = value #( ( 3 ) ( 2 ) ( 6 ) ( 4 ) ( 8 ) ).
data(size_of_Stack) = get_Size_of_Stack( stack ).   
" size_of_Stack = 5
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
ABAP Exercism

এলিসের মন্ত্র শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, ABAP ট্র্যাকের 54টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।