হে লো আমার বাংলা ব্লগ বাসী। কেমন আছেন সবাই। আশা করি ভালো আছেন। আমিও অনেক ভালো আছি। আবার ও হাজির হলাম একটি পোস্ট নিয়ে। আশা করি সবার ভালো লাগবে।
সবাইকে শুভেচ্ছা জানিয়ে শুরু করছি আমার আজকের পোস্ট। দিন কাল কেমন যাচ্ছে আপনাদের। আমার তো সেই যাচ্ছে। আজ অবশ্য আমার ছুটির দিন ছিলো। তাই বন্ধুদের সাথে ঘুরেছি। এ নিয়ে অন্য একদিন পোস্ট দিবো। আজ আবারো মজাদার একটি matlab প্রোগ্রাম নিয়ে হাজির হলাম। যদিও এখানের অনেকেই বুঝেন না। তবে বেসিক জিনিশ তো কারো কাজে লাগতেও পারে।
ডিজিটাল এই যুগে সব কিছুই যেনো প্রোগ্রামিং নির্ভর। জীবনের প্রতিটা ধাপই যেনো প্রোগ্রামিং ল্যাংগুয়েজ এর আয়ত্বে চলে গেছে। সবখানেই যেনো প্রোগ্রামিং আর প্রোগ্রামিং খেলা। প্রোগ্রাম করতে কিন্তু সেই মজা লাগে। আর প্রোগ্রামিং দেখতেও ভালো লাগে তবে নিজে যদি একটু প্রোগ্রামিং করতে পারি তাইলে যেনো আরো বেশি ভালো লাগে। আমি ছাত্র মেকানিক্যাল এর ছাত্র হলেও প্রোগ্রামিং আমার কাছে খুব ভালো লাগে। এখানে আমার থেকে হাজার গুনে বেশি ভালো অনেক প্রোগ্রামার আছে। সে তুলনায় আমি নস্যি। হেহেহে। তবে প্রোগ্রামিং আমার বেশ ভালো লাগে। মাঝে মাঝে ভাবি আমি যদি কম্পিউটার ইঞ্জিনিয়ারিং এর ছাত্র হতাম। তাহলে হয়তো অনেক ভালো করতে পারতাম। তবে যাক ব্যাপার না। কপালে যা আছে তাই তো হবে।
এই সেমিস্টারে আমাদের একটি কোর্স ছিলো নিউমেরিক্যাল এনালাইসিস সেশনাল। তো এই সাবজেক্ট এ matlab সফটওয়্যার এর ভিতর প্রোগ্রাম লিখতে হতো। এটি ছিলো মাত্র ০.৭৫ ক্রেডিট এর সাবজেক্ট। তাই অতটা গুরুত্ব দেয়নি। আমরাও তেমন গুরুত্ব দেইনি। এর মাধ্যমে অনেক কোডিং করা যায় আর মাধ্যমে আপনি গণিত সমাধান করতে পারবেন। যেহেতু সাবজেক্ট টা ছিলো নিউমেরিক্যাল এনালাইসিস। তাই আমাদের এই ধরনের কাজ গুলো শেখানো হয়। যদিও তেমন ভাবে কেউ পারিনা। তবে আমি ইউটিউব এর সাহায্য নিয়ে নিজে নিজে কিছু শিখেছি। তার মধ্যে একটি আজ দেখাবো আপনাদের। এখানে অনেক এক্সপার্ট আছেন। আমার ভুল ক্ষমার দৃষ্টিতে দেখবেন।
আমার প্রোগ্রামের কোডিং-
f=@ (x) (x^3+4*x^2+x-6)
x1=input('Enter the first value of guess interval');
xu=input('Enter the 2nd value of guess interval');
error=0.001;
while (f(x1)*f(xu)>0)
x1=input('Enter the first value of guess interval again.:');
xu=input('Enter the 2nd value of guess interval again.:');
end
while (abs(xu-x1)>error)
xc=(xu+x1)/2;
if (f(x1)*f(xc)<0)
xu=xc;
else
x1=xc;
end
end
fprintf('The root is %f', xc)
এটি ছিলো আমার পুরো কোডিং৷ এবার আসুন ব্যাখ্যা করা যাক। শুধু মেইন বিষয় গুলো ব্যাখ্যা করলাম। -
f=@ (x) (x^3+4*x^2+x-6)
প্রথমেই আমি আমার ইকুয়েশনটি প্রোগ্রামে ইনপুট দিলাম। যেহেতু এটি ফাংশন তাই f ব্যবহার করলাম।
x1=input('Enter the first value of guess interval'); xu=input('Enter the 2nd value of guess interval');
এবার ধরে নেওয়া ভ্যালু গুলো কে ইনপুট দেওয়ার প্রোগ্রাম লিখলাম।
while (f(x1)*f(xu)>0)
শর্ত জুড়ে দিলাম, যদি ইনপুট দেওয়া ফাংশন গুলোর গুন ফল ০ অপেক্ষা বড় হয় তাহলে সে ইনপুট আবার দিতে হবে।
if (f(x1)*f(xc)<0)
এবার বলে দিলাম যে যদি ফাংশন দুইটির গুন ফল ০ অপেক্ষা ছোট হয় তাহলেই তাদের একটি হবে রুট এর মান।
fprintf('The root is %f', xc)
এবার ফাংশন প্রিন্ট দিলাম। অর্থাৎ উত্তর প্রিন্ট হবে।
চলুন এবার প্রোগ্রাম রান করে দেখা যাক হয়েছে কিনা? -
এই ছিলো সেই প্রোগ্রাম রান করার পর একটি স্ক্রিনশট৷
তো এই ছিলো আমার আজকের পোস্ট এর। আশা করি ভালো লাগবে। কেমন হলো কমেন্ট করে জানাতে ভুলবেন না।
░▒▓█►─═ ধন্যবাদ ═─◄█▓▒░
আমি রাজু আহমেদ। আমি একজন ডিপ্লোমা ইন মেকানিক্যাল ইঞ্জিনিয়ার। বি.এস.সি ইঞ্জিনিয়ারিং পড়ছি সোনারগাঁও ইউনিভার্সিটি থেকে। আমি বাঙ্গালী তাই বাংলা ভাষায় লিখতে ও পড়তে পছন্দ করি। ফোন দিয়ে ছোটখাট ছবি তোলাই আমার সখ। এছাড়াও ঘুরতে অনেক ভালো লাগে।
VOTE @bangla.witness as witness
OR
Thank you, friend!
I'm @steem.history, who is steem witness.
Thank you for witnessvoting for me.
please click it!
(Go to https://steemit.com/~witnesses and type fbslo at the bottom of the page)
The weight is reduced because of the lack of Voting Power. If you vote for me as a witness, you can get my little vote.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit