বন্ধুরা, আজ আবার হাজির হলাম আপনাদের মাঝে ।আশা করি সবাই ভাল আছেন। আমরা আজকে আলোচনা করব Def Function নিয়ে । আসুন জেনে নিই Def Function আসলে কী ?
Def Function : একটু খাটি বাংলা ভাষায় বলি । এর আগে আপনারা অনেক ফাংশন নিয়ে কাজ করেছেন । যেমন : while, if,elif , print। Def Function টা হল এসব ফাংশনের সহায়তা নিয়ে বা না নিয়ে নিজে থেকেই নিজের প্রয়োজন মত ফাংশন তৈরী করে নেওয়া ।Def Function কে তুলনা করতে পারেন আপনার বাড়ির কাজের লোকের মত । তাকে আপনি যখন ডাকবেন তখন সে এসে আপনার প্রয়োজনীয় কাজ করে দিয়ে যাবে । একটা ছোট্ট উদাহরণ দিলে বিষয়টা আরও ক্লিয়ার হবে । আবার এটার একটা বহুল ব্যবহার হল একই জিনিস বার বার ব্যবহার করা যায় । অর্থাত আপনি একটা ফাংশন তৈরী করলে আপনি সেটা বার বার ব্যবহার করতে পারবেন । উদাহরণ টা দিই, ব্যাপারটা বুঝতে পারবেন । আমরা যেমন আগের পর্বে দেখেছিলাম কীভাবে কোন সংখ্যার অ্যবসলিউট ভ্যালু বের করতে হয় । সেটি আমরা একটা ফাংশনের মাধ্যমে প্রকাশ করব ।
def absolute_value(n): if n < 0: n =-n return n n = float(input("enter the number : ")) print("ab value is : ",absolute_value(x))
এখানে আমরা প্রথমে একটা ফাংশন তৈর করেছি যেটা কোন সংখ্যর অ্যাবসলিউট ভ্যালু বের করবে । দেখুন সেটা কে আমরা বলেছি যে n এর মান যদি ০ এর থেকে ছোট হয় তবে -n রির্টান কর । এখানে একটা return পাইথনের ডিফল্ট ফাংশন । এরপর n নামের এক ভ্যারিয়েবল এর মাধ্যমে এর মান ইনপুট নিয়ে এর অ্যবসলিউট ভ্যালু বের করেছি । এর মান ঋণাত্মক ইনপুট দিয়ে দেখুন এটি ধনাত্মক মান রির্টান করে । এখানে absolute_value(n) টা হল আপনার তৈরী একটি ফাংশন ।আরেকটা উদাহরণ দেই ।
def print_function(): print("I am a programmer") print("i know programming") def welcome(name): print("wellcome ", name) print_function() welcome("programmer")
দেখুন আমি এখনে দুটি ফাংশন তৈরী করেছি যার প্রথমটা প্রিন্ট করবে I am a programmer এবং
i know programming এ বাক্য দুটি । এরপরের ফাংশনটি প্রিন্ট করবে আমি যে নাম তাকে বলে দেব সেটিই । দেখুন পরে আমি শুধু print_function নামের ফাংশনটি প্রিন্ট করেছি । তারপর ২য় ফাংশনে এর স্থলে আমি বলে দিয়েছি যে কী প্রিন্ট করতে হবে । ফাংশনটি তাই প্রিন্ট করেছে । আর একটি ছোট্ট প্রোগ্রাম :
def square(x): return x*x while 1 == 1: x = float(input("enter a number : ")) print("result = ",square(x))
এখানে আমরা একটি ফাংশন তৈরী করেছি যেটি কোন সংখ্যার বর্গ তৈরী করে । তারপর while 1 == 1: দ্বারা বলেছি যে ফাংশনটি আজীবন চালিয়ে যেতে ।
আসুন আজ আমরা এই আমাদের হ্যন্ড মেড ফাংশন দিয়ে তৈরী করে ফেলি ছোট্ট একটা অকাজের ক্যালকুলেটর ।এটি আমরা আগে যা কিছু শিথেছি সবকিছুরই মিলিত একটা ফল । নীচের কোডটি লিখুন :
def add(f,l): return f+l def minu(a,b): return a-b def intu(g,h): return g*h def div(t,u): return t/u def print_option(): print("press w to + numbers") print("press x to - a number") print("press y to * numbers") print("press z to / 2 numbers") print("press e to exit") menu_choice = "k" print_option() while menu_choice != "e": menu_choice = input("enter your choice : ") if menu_choice == "w": f = float(input("1st number: ")) l = float(input( "2nd number: ")) print("result = ", add(f,l)) print_option() elif menu_choice == "x": a = float(input("from number: ")) b = float(input("to number : ")) print("result = ",minu(a,b)) print_option() elif menu_choice == "y": g = float(input("enter 1st number: ")) h = float(input("enter 2nd numbers : ")) print("result = ",intu(g,h)) print_option() elif menu_choice == "z": t = float(input("enter the number you want to devide : ")) u = float(input("enter the number by which youn want to devide : ")) print("result = ",div(t,u)) print_option() elif menu_choice == "e": print("bye.........") else: print("please press a correct key") print_option()
দেখুন প্রথমে আমরা ৪ টি ফাংশন তৈর করেছি যা থেকে আমরা যোগ , বিয়োগ , গুণ ও ভাগ করতে পারব । তারপর আমরা আরও ওএকটি ফাংশন তৈরী করেছি যেটি ওই লেখাগুলো প্রিন্ট করবে । আমাদের ফাংশন রৈীর কাজ শেষ । এবার এগুলো ব্যবহার করার পালা । দেখুন এরপর আমরা menu_choice নামে একটা ভ্ররিয়েবর নিয়েছি যার একটি মান দিয়েছি “” । তাপর আমরা print_option() টি ব্যবহারকারীকে দেখানোর জন্য এটি নিয়ে এসেছি । এখানে w, x, y,z এগুলো কোন ভ্যরিয়েবল না । জাষ্ট ব্যবহারকারীর সুবিধার জন্য আমরা এগুলো লিখেছি । এর ব্যবহার সম্পর্কে পরে বলছি । যেহেতু আমরা বলেছি যে e চাপলে প্রোগ্রামটি শেষ হবে তাই এখানে While loop এর অবতারণা করে বলেছি যতক্ষণ menu_choice এর ইনপুট e না হয় ততক্ষণ প্রোগ্রামটি রানিং রাখতে । এবার আমরা IF স্টেটমেন্ট এর সাহায্যে বলেছি যখন menu_choice হবে w, তখন যোগের জন্য দুটি সংখ্যা ইনপুট নিতে । ইনপুট দেওয়ার পর আমরা এর রেজাল্ট প্রিন্ট করেছি আমাদের তৈরী করা add(f,l) ফাংশনের মাধ্যমে । আর যেহেতু print_option() এ যোগ, বিয়োগ , গুণ ওভাগ এর জন্য যথাক্রমে w, x, y,z চাপতে বলেছি তাই আমরা IF স্টেটমেন্ট এর সাহায্যে সেইমত menu_choice এর সাথে মিল রেখে যোগ , বিয়োগ , গুণ ওভাগ এর ইনপুট নিয়েছি ও ফাংশনের মাধ্যমে তার ফলাফল বের করে প্রিন্ট করেছি । এবং প্রতিটি IF স্টেটমেন্ট শেষ হওয়ার পরে আমরা print_option() এর মাধ্যমে আবার মেনু চয়েচ টা ব্যবহারকারকে মনে করিয়ে দিয়েছি । এখন একেবারে শেষে আমরা বলেছি menu_choice এর ইনপুট না মিললে (“please a correct key”) লেখা প্রিন্ট করতে । এবং যখন ব্যবহারকারী e চাপবে তখন (“bye………”) লেখাটি প্রিন্ট করতে । যাহোক আপনারা এমন সব প্রোগ্রাম নিজে নিজে তৈরী করে ফেলুন । যেমন : ২ টি সংখ্যার বর্গ নির্ণয় , ঘন নির্ণয় , মিটার থেকে সেন্টিমিটারে রূপান্তর প্রর্ভতি প্রোগ্রাম যা করতে পারেন । আবার আপনি যদি চান এই ক্যালকুলেটরের সাথে বর্গ নির্ণয় , ঘন নির্ণয় , মিটার থেকে সেন্টিমিটারে বা কিলোতে রূপান্তর, অ্যবসলিউট ভ্যালু নির্ণয় প্রভৃতি জুড়ে দিবেন তাও করতে পারেন । আর না বুঝলে বলুন । যথাসাধ্য বোঝানোর চেষ্টা করব ।
order lipitor 10mg online cheap atorvastatin 80mg cheap buy atorvastatin 40mg generic
lipitor brand buy atorvastatin 40mg sale cheap atorvastatin 10mg
cipro drug – augmentin uk buy clavulanate paypal
baycip uk – where can i buy ethambutol augmentin 625mg for sale
buy ciprofloxacin for sale – order generic cipro 500mg augmentin 625mg canada
order zidovudine 300mg without prescription – avalide uk buy generic allopurinol over the counter
cost clozaril – buy clozapine 50mg generic generic pepcid
retrovir 300mg usa – order allopurinol 100mg without prescription
quetiapine 50mg pill – luvox us order eskalith generic
anafranil 50mg ca – anafranil 50mg us buy doxepin without a prescription
order clomipramine 50mg for sale – celexa 40mg cost sinequan 75mg for sale
buy seroquel cheap – venlafaxine cheap buy eskalith paypal
order atarax 25mg online – buy sarafem 40mg online amitriptyline 25mg sale
order hydroxyzine generic – pamelor 25mg over the counter endep uk
augmentin 1000mg over the counter – order myambutol 600mg online ciprofloxacin for sale
buy augmentin without prescription – zyvox 600mg sale purchase cipro generic
order amoxil sale – order trimox 500mg online cheap cipro 1000mg brand
buy amoxicillin paypal – buy trimox 250mg online cheap purchase cipro generic
zithromax generic – sumycin 250mg usa order ciprofloxacin 500mg generic
generic azithromycin 250mg – purchase ciprofloxacin online buy ciplox 500 mg
order cleocin 150mg without prescription – buy suprax tablets chloramphenicol drug
cleocin generic – purchase vibra-tabs without prescription chloramphenicol without prescription
ivermectin 6mg online – doxycycline pills cefaclor 250mg oral
stromectol 3 mg price – levofloxacin online order buy generic cefaclor online