নিচের প্রোগ্রামটি একটু মন:যোগ দিয়ে লক্ষ্য করেন। প্রোগ্রামটির মাধ্যমে দুটি সংখ্যার মধ্যে যোগফল নির্ণয় করা যাবে।
#include
#include
void main()
{
int a;
int b;
int Result;
printf(“First Number:”);
scanf(“%d”,&a);
printf(“Second Number
scanf(“%d”,&b);
Result=a+b;
printf(“Result=%d”,Result);
getch();
}
মূল বর্ণনা:
প্রোগ্রামটি দেখে হয়তো আপনাদের খুব ভয় করছে আসলে যারা জানেন না এটা কি ? আসলে ভয়ের কিছুই নেই। এটি অত্যন্ত সহজ একটি প্রোগ্রাম। চলেন, এবার একটি মজার গল্পের মাধ্যমে প্রোগ্রামটি বোঝার চেষ্টা করি।
” মীমের বাসায় দু’জন লোক বেড়াতে এসেছে। তাদের মধ্যে একজন খুবই লম্বা আর একজন খাটো। লোকদুটো মীমের সাথে পরিচিত হল। একটি লোক তাকে জিজ্ঞাসা করল- আচ্ছা মীম, তুমি কি করতে পছন্দ কর? মীম বলল- আমি কোন ছবিতে রং করতে পছন্দ করি। লোকটি বলল- আচছা, তুমি কোন ছবি অংকন করতে পছন্দ কর? মীম বলল- বাংলাদেশের জাতীয় পতাকা। লোকঠট বলল- তুমি কি জানো, বাংলাদেশের জাতীয় পতাকা অংকন করতে কি কি রং লাগে? মীম বলল- হ্যা জানি। লোকটি বলল- তুমি একটা কাজ কর। রং দুটির নাম একটি খাতায় লিখে আমাকে দাো। আমি ঐ দুটি রং কিনে তোমাকে উপহার দেব। মীম খুবই খুমশ হয়ে দ্রুত একটি খাতা নিয়ে এসে নিচের মত করে লিখল:
১. জাতীয় পতাকা অংকন করতে প্রথম রংটির নাম হল:
লাল
২. জাতীয় পতাকা অংকন করতে দ্বিতীয় রংটির নাম হল:
সবুজ
এরপর কাগজটি লোকটির হাতে দিয়ে মীম বলল-এই দুটি রং দিয়ে জাতীয় পতাকা অংকন করে একটি বাঁশের খুঁটির সাহায্যে বেঁধে উড়ানো যাবে। —এই বলে সে ফিক করে হেসে ফেলল।”
গল্পটি নিশ্চয়ই মন:যোগ দিয়ে পরছেন? এবার চলেন দেখি এই গল্পের মাধ্যমে কিভাবে প্রোগ্রামটি বোঝা যায়?
১)আমরা প্রোগ্রামটিতে প্রথমেই int a; int b; int Result ব্যবহার করেছি। এখানে int এর পূর্ণরুপ হল integer (পূর্ণসংখ্যা)। অর্থাৎ আমরা যে যোগটি করব তা পূর্ণসংখ্যা না দশমিক সংখ্যা হবে int তা নির্ধারণ করে। গল্পে লোকটি মীমকে বলেছে একটি জাতীয় পতাকার রং করতে কি কি লাগে? মীম বলেছে- লাল ো সবুজ রং এবং একটি বাঁশের খুঁটির সাথে বেঁধে দিলে পতাকাটি উড়বে। আমরাো তদ্রুপ বলছি, দুটি সংখ্যা যোগ করতে প্রথমেই দুইটি সংখ্যা নিতে হবে। অর্থাৎ গল্পে লাল রং বলতে a নামক একটি সংখ্যা, সবুজ রং বলতে b নামক একটি সংখ্যা এবং একটি বাঁশের খুঁটির খুটিঁর সাহায্যে উড়বে বলতে বোঝানো হচ্ছে যে, Result এর মাধ্যমে আমরা আউটপুট দেখব।
২) গল্পে মীম লিখেছে- জাতীয় পতাকা অংকন করতে প্রথম রংটি হল:
এরপর নিচে লিখেছে লাল। আর আমরা এই জিনিসটি printf() এর মধ্যে লিখেছি “দুটি সংখ্যা যোগ করতে প্রথম সংখ্যাটি হল:” (“First Number”) । এরপর নিচে scanf() এর মধ্যে লিখেছি প্রথম সংখ্যা a । অর্থাৎ scanf(“%d”,&a); স্টেটমেন্টটিতে %d লিখলাম এই কারনে যে, আমরা পূর্বে int ব্যবহার করেছি। যদি int এর পরিবর্তে float লিখতাম তবে %f লিখতাম। %d এর পরে &a এর অর্থ a সংখ্যার জন্য একটি input নিবে।
৩) গল্পে মীম এরপরই লিখেছে- জাতীয় পতাকা অংকন করতে দ্বিতীয় রংটি হল:
এরপর নিচে লিখেছে সবুজ। আমরাো printf() এর মধ্যে লিখেছি (“Second Number:”) এরপর নিচে লিখেছি দ্বিতীয় সংখ্যা b অর্থাৎ scanf(“%d”,&b) statement টির মধ্যিমে যদি প্রশ্ন করি “%d” কার জন্য? উত্তর হবে b এর জন্য কারণ “%d” এর পরে কমা দিয়ে &b লেখা আছে।
৪) এবার সংখ্যা দুটি যোগ করা হয়েছে Result=a+b; statement টির মাধ্যমে। সুতরাং a একটি সংখ্যা এবং b আরেকটি সংখ্যা যোগ করে যোগফল থাকবে Result এর মধ্যে। গল্পের মত লাল ো সবুজ রং দিয়ে পতাকা অংকন করে পতাকাটি উড়বে বাশেঁর খুটিঁর মাধ্যমে।
৫) এবার printf(“Result=%d”,Result); statement টির মাধ্যমে যোগফল পাোয়া যাবে। আগেই বলেছি ডাবল কোটেশনের (” “) মধ্যে যা লেখা যায় আউটপুটে তাই দেখতে পাোয়া যায়। সে হিসেবে আউটপুটে দেখার কথা Result=%d , কিন্তু তা হবে না। Result= এতটুকুই থাকবে শুধু %d থাকবে না। কম্পাইলারের কাছে এর অন্য একটি অর্থ আছে। অর্থাৎ %d কার জন্য? পাশেই লিখেছি Result এর জন্য। সুতরাং পূবের্র লাইনের যোগকৃত ফলাফল %d এর এখানে বসে থাকবে।
OUTPUT: প্রোগ্রামটি রান করলে নিন্মের আউটপুট পাোয়া যাবে:
First Number:10
Second Number: 20
Result=30
উপরের প্রোগ্রামটি নিচের মত ছোট করেো লিখা যাবে। এতে আউটপুটের যোগফলের কোন পরিবর্তন হবে না।
#include
#include
void main()
{
int a,b,Result;
printf(“First and Second Number:”);
scanf(“%d%d”,&a,&b);
Result=a+b;
printf(“Result=%d”,Result);
getch();
}
সুতরাং প্রোগ্রাম দুটির মধ্যে পার্থক্য হচ্ছে প্রথম প্রোগ্রামে int a; int b; int Result; আলাদা লাইনে লেখা হয়েছে এবং int কথাটা তিনবার লেখা হয়েছে। কিন্তু এখানে একটি int দিয়ে a,b,Result; লেখা হয়েছে মাঝখানে শুধু কমা চিহ্ন দিয়ে।তদ্রুপ printf()এর মধ্যে লেখা হয়েছে First and Second Number:
একটি scanf() এর মধ্যেই দুটি সংখ্যা নেয়া হয়েছে a ো b । আর এভাবেই প্রোগ্রামটি ছোট হয়ে গেছে।
একটি মজার জিনিস:
উপরের প্রোগ্রামে দুটি সংখ্যা যদি ৩২৭৬৭ এর চেয়ে বেশী হয় তবে প্রোগ্রামের আউটপুট ভুল দেখাবে। সেক্ষেত্রে int এর পূর্বে long ব্যবহার করতে হবে। অর্থাৎ মীমের বাসায় যে দু’জন লোক এসেছিল এদের মধ্যে লম্বা লোকটি যত উপরের জিনিস ছুটে পারবে খাটো লোকটি কিন্তু অত উঁচু জিনিস ছুতে পারবে না। তাই খাটো লোকটি হল int আর লম্বা লোকটি হল long int । int এর সীমা -32768 থেকে +32768 এবং long int এর সীমা -217483648 -2147483647 পর্যন্ত। আর %d এর জায়গায় দিতে হবে

অনুগ্রহ করে অপেক্ষা করুন। ছবি আটো ইন্সার্ট হবে।

