Posts tagged পিএইচপি

পিএইচপির ম্যাথমেটিক্যাল ফাংশন্স, পর্ব – ২ : সাধারণ ত্রিকোণমিতিক সমস্যার সমাধান

এসএসসি তে ত্রিকোণমিতির বেসিকস বুঝতে বুঝতেই কখন যেন সময় গড়িয়ে গেল।এইচএসসি তে এসে বুঝলাম ত্রিকোণমিতির ঝাল কেমন। সাইন, কোসাইন আর ট্যাঞ্জেন্টের ধারণা মনে রাখাটাই বড় ধরনের কৃতীত্ব মনে হত তখন। কোনটা লম্ব ভাগ অতিভুজ আর কোনটা অতিভুজ ভাগ ভূমি – এই সংজ্ঞাগুলো মনে রাখতে আয়ত্বও করেছিলাম বেশকিছু ছন্দ :P sin30, cos90 ইত্যাদির মানতো কখনই মনে রাখতে পারতাম না। ভাগ্যিস হাতের কাছে ক্যালকুলেটর নামক যন্ত্রখানি সর্বদাই রাখা পড়ত :)

পিএইচপির ম্যাথ ফাংশন্স সিরিজের দ্বিতীয় পর্বে তাই আমরা ত্রিকোণমিতি সম্পর্কিত ফাংশন্সগুলোর দিকে নজর দিতে চাই । পিএইচপির অতি প্রচলিত ৪৮টি ম্যাথ ফাংশনের মধ্যে ১৫টিই ত্রিকোণমিতি সম্পর্কিত । এগুলো হল – acos(), acosh(), asin(), asinh(), atan2(), atan(), atanh(), cos(), cosh(), hypot(), sin(), sinh(), tan(), rad2deg(), tanh() :) এই পর্বটিতে আমরা সাধারণ ত্রিকোণমিতিক ফাংশনগুলোর ব্যবহারিক প্রয়োগ দেখব। অর্থাৎ sin(), cos(), tan() এবং hypot() :D

hypot():
চমৎকার এই ফাংশনটির কথা অনেকেরই অজানা। এটির কাজ সমকোনী ত্রিভূজের অতিভুজ পরিমাপ করা। কিভাবে? নিজেই ব্যবহার করে দেখে নিন:

<?php
// filename: /home/masnun/phpbook/math-2/hypot.php

var_dump( hypot(3,4) ); // Outputs: float(5)
?>

<?php
var_dump( hypot(12,5) ); // Outputs: float(13)
?>

আমরা সমকোনী ত্রিভূজের দুই বাহুর পরিমাপ প্যরামিটার হিসেবে দিলেই এই ফাংশনটি জানিয়ে দেবে অতিভুজের হিসাব। আজ যদি পীথাগোরাস বেচে থাকতেন তবে তিনিও নির্ঘাত পিএইচপি শিখতে চাইতেন অতিভুজ সংক্রান্ত সমস্যাগুলো দ্রুত সমাধান করতে :D কি, একটু বেশিই বলে ফেললাম নাকি ? ;-)

sin():
নাম থেকেই যে ফাংশনের কাজ সম্পর্কে ধারণা করে ফেলেছেন তাতো বুঝতেই পারছি। হ্যা, প্রদত্ত কোণের সাইন অনুপাত নির্ণয় করাই এই ফাংশনের একমাত্র কাজ :)

<?php
// filename: /home/masnun/phpbook/math-2/sin.php

var_dump( sin(90) ); // Outputs: float(0.893996663601)
?>

<?php
var_dump( sin(0) ); // Outputs: float(0)
?>

জ্বি, sin90 এর মান পুরোপুরি ১ নয় :)

cos():
সাইনের পরেই আমরা চলে এলাম কোসাইনের জগতে। কোন কোণের পরিমাপ থেকে তার কোসাইন অনুপাত করতে আমাদের এই ফাংশনটির শরণাপন্ন হতে হয়।

<?php
// filename: /home/masnun/phpbook/math-2/cos.php

var_dump( cos(90) ); // Outputs: float(-0.448073616129)
?>

<?php
var_dump( cos(0) ); // Outputs: float(1)
?>

tan():
সাইন অনুপাতকে কোসাইনের অনুপাত দিয়ে ভাগ করলেই যে ট্যাঞ্জেন্ট অনুপাত পাওয়া যাবে তা আমরা কম বেশি সবাই জানি। কিন্তু, কি দরকার অযথা সময় নষ্ট করার? এই ফাংশনটি থেকে আমরা একবারেই পেয়ে যাব কাংখিত ফলাফল ।

<?php
// filename: /home/masnun/phpbook/math-2/tan.php

var_dump( tan(45) ); // Outputs: float(1.61977519054)
?>

<?php
var_dump( tan(0) ); // Outputs: float(0)
?>

এই লেখাটিতে ব্যবহৃত উদাহরন সমূহ ডাউনলোড করে নিন এখান থেকে — http://bangla-phpbook.googlecode.com/files/math-2.zip

  • Share/Bookmark

পিএইচপির ম্যাথেমেটিকাল ফাংশন্স : পর্ব – ১

ম্যাথ বা গনিতের কথা ভাবলেই আমার মনে পড়ে যায় রাশভারী চেহারার কোন পন্ডিতের কথা। মাঝে মাঝে ভাবতাম যে লোকটা গনিতের সূত্রপাত করেছেন তাকে যদি একবার আমার সামনে পেতাম তাহলে তাকে হাতে কলমে বুঝিয়ে দিতাম গনিত কষার কত মজা :(

কিন্তু পিএইচপি শেখার পর থেকে মনে হয় ম্যাথ বোধহ্য় অতটা খারাপ কিছু না :) পিএইচপি তে আমি পেয়েছি অসাধারন কিছু ম্যাথমেটিকাল ফাংশন্স যেগুলো দিয়ে প্রায় সব ধরনের ম্যাথমেটিকাল প্রবলেম এর সমাধান করা সম্ভব খুব সহজেই :D

আসুন তবে দেখা যাক পিএইচপির গনিতের দৌড় কতদূর :) পিএইচপিতে প্রায় ৫০ টি ম্যাথ ফাংশন্স আছে যেগুলো আমরা কয়েক পর্বে দেখব । প্রথম পর্বে আমরা দেখব abs(), ceil(), floor(), is_finite() এবং is_infinite() – এই ৫ টি ফাংশন্স । তাহলে চলুন শুরু করা যাক।

abs():
যে কোন সংখ্যার ধনাত্নক মান নির্নয় করতে আমরা এই ফাংশনটি ব্যবহার করব। যেমনঃ

<?php
//filename: /home/masnun/phpbook/math-1-abs.php
$number1 = 11;
echo abs($number1); // outputs: 11
?>

<?php
$number2 = -11;
echo abs($number2); // outputs: 11
?>

ceil():
ভগ্নাংশের মান বৃদ্ধি করে পরবর্তী পূর্ন সংখ্যায় পরিণত করে । যেমনঃ

<?php
//filename: /home/masnun/phpbook/math-1-ceil.php
$number1 = 3.4;
echo ceil($number1); // Outputs: 4
?>

<?php
$number2 = -3.4;
echo ceil($number2); // Outputs: -3
?>

লক্ষ্য করুন, ঋনাত্নক সংখ্যার ক্ষেত্রে -৩, -৩.৪ অপেক্ষা বৃহত্তর :)

floor():
এটি ঠিক ceil() এর উল্টোটা করে। অর্থাৎ ভগ্নাংশের মান হ্রাস করে পূর্ববর্তী পূর্ন সংখ্যায় পরিণত করে । যেমনঃ

<?php
//filename: /home/masnun/phpbook/math-1-floor.php
$number1 = 3.4;
echo floor($number1); // Outputs: 3
?>

<?php
$number2 = -3.4;
echo floor($number2); // Outputs: -4
?>

is_finite():
এই ফাংশনটির রিটার্ন ভ্যালু একটি Boolean value । অর্থাৎ যদি প্রদত্ত সংখ্যাটি সসীম হয় তবে এটি True নচেৎ False রিটার্ন করে । সহজভাবে ব্যখ্যা করার জন্য এখানে আমি “সসীম” শব্দটি ব্যবহার করলাম। মূলত, সংখ্যাটি “float” ডাটা টাইপের সীমার ভেতরে আছে কিনা সেটা যাচাই করাই এই ফাংশনটির কাজ । যেমনঃ

<?php
//filename: /home/masnun/phpbook/math-1-is_finite.php
$number1 = 30003;
var_dump( is_finite($number1) ); // Outputs: bool(true)
?>

<?php
$number2 = log(0);
var_dump( is_finite($number2) ); // Outputs: bool(false)
?>

is_infinite():
আগের ফাংশনটির ঠিক বিপরীত এই ফাংশনটি। এটি নির্দেশ করে প্রদত্ত সংখ্যাটি অসীম কিনা । যেমনঃ

<?php
//filename: /home/masnun/phpbook/math-1-is_infinite.php
$number1 = 30003;
var_dump( is_infinite($number1) ); // Outputs: bool(false)
?>

<?php
$number2 = log(0);
var_dump( is_infinite($number2) ); // Outputs: bool(true)
?>

বিদ্রঃ উপরের দুটি ফাংশনের ব্যবহার দেখাতে গিয়ে আমি log(0) ব্যবহার করেছি । log(0) এর মান অসীম বলে বিবেচিত হ্য় । এটিও পিএইচপির ম্যাথ ফাংশনগুলির মধ্যে গুরুত্বপূর্ন একটি । আমরা পরবর্তী কোন পর্বে এটির ব্যবহার দেখে নিব ।

এই লেখাটিতে ব্যবহৃত পিএইচপি ফাইলগুলো ডাউনলোড করে নিনঃ http://bangla-phpbook.googlecode.com/files/phpbook-math-1.zip

  • Share/Bookmark

খবরাখবর: নভেম্বর ৩০

আমাদের এই ব্লগে আমরা পিএইচপি দুনিয়ার বিভিন্ন খবর সম্বন্ধে আপনাদের নিয়মিত অবহিত করব। তারই শুরু হিসবে আজকে জেনে নিন গত সপ্তাহ, এই সপ্তাহ এবং এই মাসের কিছু ইন্টারেস্টিং খবর

* জেন্ড ফ্রেমওয়ার্ক ১.৯.৬ রিলিজ হয়েছে
* উইন্ডোজে পিএইচপি এবং ক্যাশ নিয়ে ক্যাল ইভান্সের আর্টিকেল
* পিএইচপির কার্ল লাইব্রেরী দিয়ে করা চমৎকার ১০টি কোড স্নিপেটক্যাটসহুকোড থেকে পাওয়া
* পিএইচপি এক্সপ্লয়টেশন নিয়ে মারাত্মক খবর
* ভ্যানিলা – একটি চমৎকার ওপেন সোর্স পিএইচপি ফোরাম

  • Share/Bookmark

ডেবিয়ান এবং উবুন্তুতে পিএইচপি ইনস্টল করা

ডেবিয়ান এবং উবুন্তুতে পিএইচপি ইনস্টল করাও একদম সহজ। আপনার টার্মিনালে নিচের মত করে কমান্ড দিন

sudo apt-get install php5

পিএইচপির কমান্ড লাইন ইন্টারফেস ইনস্টল করার জন্য

sudo apt-get install php5-cli

পিএইচপির সাথে সাহায্যকারী লাইব্রেরী হিসেবে পিয়ার এবং পিইসিএল ইনস্টল করার জন্য নিচের কমান্ড দিন। পিয়ার এবং পিইসিএল নিয়ে আমরা পরে বিস্তারিত আলোচনা করব।

sudo apt-get install php-pear

এবং পিএইচপির কিছু এক্সটার্নাল লাইব্রেরী কম্পাইল করার জন্য পিএইচপি-ডেভেলপার ইনস্টল করতে হলে তা করতে পারেন নিচের মত করে

sudo apt-get install php5-dev

ইনস্টল করা হয়ে গেলে অ্যাপাচি রিস্টার্ট দিন। মনে আছে কিভাবে রিস্টার্ট দিতে হয়? না মনে থাকলে এখান থেকে দেখে নিন

sudo /etc/init.d/apache2 restart

Read the rest of this entry »

  • Share/Bookmark