আমি মনে করি আপনি এখানে যা খুঁজছেন তা একটি সিকোয়েন্স ডায়াগ্রাম । এটি আপনাকে ক্রমটি দেখতে দেয় যাতে বিভিন্ন মডিউল তীর ব্যবহারের মাধ্যমে প্রত্যেকে কল করে।
একটি তৈরি করা সহজ:
- এটির নীচে বিন্দু লাইন দিয়ে আপনার প্রারম্ভিক শ্রেণিটি আঁকুন।
- তার নীচে বিন্দু লাইন দিয়ে কল ট্রেসে পরবর্তী শ্রেণি / পদ্ধতি আঁকুন
- আপনার আঁকা শেষ তীরের নীচে উল্লম্বভাবে অবস্থিত, একটি তীর দিয়ে রেখাগুলি সংযুক্ত করুন
- আপনার ট্রেসের সমস্ত কলের জন্য পদক্ষেপগুলি 2-3 বার করুন
উদাহরণ
ধরে নেওয়া যাক আমাদের নিম্নলিখিত কোড রয়েছে যার জন্য আমরা একটি সিকোয়েন্স চিত্রটি তৈরি করতে চাই:
def long_division(quotient, divisor):
solution = ""
remainder = quotient
working = ""
while len(remainder) > 0:
working += remainder[0]
remainder = remainder[1:]
multiplier = find_largest_fit(working, divisor)
solution += multiplier
working = calculate_remainder(working, multiplier, divisor)
print solution
def calculate_remainder(working, multiplier, divisor):
cur_len = len(working)
int_rem = int(working) - (int(multiplier) * int (divisor))
return "%*d" % (cur_len, int_rem)
def find_largest_fit(quotient, divisor):
if int(divisor) == 0:
return "0"
i = 0
while i <= 10:
if (int(divisor) * i) > int(quotient):
return str(i - 1)
else:
i += 1
if __name__ == "__main__":
long_division("645", "5")
প্রথম জিনিসটি আমরা আঁকব এটি প্রবেশপথ ( main
) পদ্ধতির সাথে সংযোগ স্থাপন করে long_division
। নোট করুন যে এটি দীর্ঘ সময়ের মধ্যে একটি বাক্স তৈরি করে, পদ্ধতি কলটির সুযোগকে বোঝায়। এই সাধারণ উদাহরণের জন্য, বাক্সটি আমাদের সিকোয়েন্স ডায়াগ্রামের পুরো উচ্চতা হয়ে থাকবে কারণ এই একমাত্র জিনিস চালানো হয়।
এখন আমরা আমাদের কর্মসংখ্যার find_largest_fit
সাথে মানানসই বৃহত্তম একাধিকটি খুঁজে পেতে কল করি এবং এটি আমাদের কাছে ফিরিয়ে দেয়। আমরা থেকে একটি রেখা আঁকা long_division
থেকে find_largest_fit
ফাংশন কল জন্য সুযোগ বোঝান আরেকটি বক্স সঙ্গে। গুণকটি ফিরলে বাক্সটি কীভাবে শেষ হয় তা দ্রষ্টব্য; এই যে ফাংশন সুযোগ শেষ!
বৃহত্তর সংখ্যার জন্য কয়েকবার পুনরাবৃত্তি করুন এবং আপনার চার্টটি এর মতো দেখতে হবে:
মন্তব্য
আপনি কেবলমাত্র একটি নির্দিষ্ট কেস ডকুমেন্ট করতে চাইলে আপনি ভেরিয়েবলের নামগুলি দিয়ে কলগুলি লেবেল করতে চান বা তাদের মানগুলি নির্বাচন করতে পারেন। আপনি নিজেই একটি ফাংশন কল করার মাধ্যমে পুনরাবৃত্তিও দেখাতে পারেন।
অতিরিক্তভাবে, আপনি এখানে ব্যবহারকারীদের দেখিয়ে তাদের প্রম্পট করতে এবং সিস্টেমে সহজেই তাদের ইনপুটটি দেখাতে পারেন। এটি একটি মোটামুটি নমনীয় সিস্টেম যা আমি মনে করি আপনি বরং দরকারী হিসাবে খুঁজে পাবে!