অধ্যায় দুই : ভেরিয়েবল, ডাটা টাইপ, ইনপুট ও আউটপুট


অধ্যায় শুরুর আগে একটু খোশগল্প করা যাক । এইযে মিস্টার বাবুসোনা খোশগল্পের কথা শুনে আবার চলে যাচ্ছ নাকি ? আচ্ছা , তুমি কি জান ভেরিয়েবল , কনস্ট্যান্ট এসব কি ? ভেরিয়েবল হলো এতে কোনো কিছু রাখা যায় ( যেমন 5, 3, তোমার নাম ) আবার পরিবর্তনও করা যায়, মানে আগেরটাকে খেদায়ে দিয়ে অন্য কিছু রাখা যায় । ঠিক এ যুগের প্রেমিক - প্রেমিকাদের মত । একটা ছেলের দশটা গার্লফ্রেন্ড থাকলে সবাই তার গার্লফ্রেন্ড । কিন্তু যখন যার সাথে সম্পর্ক থাখে তখন সে গার্লফ্রেন্ড, অন্য সময় অন্যজন । আর constant হলো আমাদের বাপ-দাদার আমলের প্রেমিক-প্রেমিকার মত, তারা একজনকে নিয়েই সন্তুষ্ট থাকে । অর্থাৎ কনস্ট্যান্ট এর মান বদলানো যায় না ।
আর ডাটা কি বলার থেকে কয়েক টা ডাটার উদাহরণ দিই :
numeric data : ( 1, 5, 4.2, -3, etc. )
character data : ( single words, names, addresses, etc. )
graphic data : ( drawings, photographs, etc. )
ইত্যাদি ।
তাহলে চলো আমরা ছোট ছোট কয়েকটা প্রোগ্রাম লিখে ফেলি । তোমরা সবগুলো প্রোগ্রাম চালিয়ে দেখবে । পারলে কোডগুলো একটু পরিবর্তন করে লিখে আবার কম্পাইল ও রান করে দেখবে ।

নিচের কোডগুলো এডিটরে লিখে রান করাও ।


 #include <stdio.h>
 
 int main()
 {
     int num;
     num = 13171;
     printf("%d", num);
     return 0;
 }


 
 প্রোগ্রাম : ২.১

প্রোগ্রামটি রান করালে স্ক্রিনে 13171 সংখ্যাটি দেখতে পাবে ।

এখানে num হলো একটি ভেরিয়েবল ।
আমরা num এর মান 13171 বসালাম (num = 13;) । এখানে 13171 একটি ইন্টিজার ( integer, পূর্ণসংখ্যা, -n...,-2,-1,0,1,2,3,....,+n , ভগ্নাংশ নেই )
আমরা যে num ভেরিয়েবলে ইন্টিজার টাইপ ডাটা রাখব তা কিন্তু আগেই বলে দিয়েছি : int num; ( নাহলে কম্পিউটার বুঝবে কেমন করে যে এতে ইন্টিজার টাইপ ডাটা থাকবে?! )
তারপর printf() ফাংশন দিয়ে num ভেরিয়েবলের মান প্রিন্ট করেছি । তোমরা দেখো printf() ফাংশনে ডবল কোটেশানের ভেতর যে %d লিখলাম সেটি কিন্তু আউটপুটে আসে নি । আসলে %d আউটপুটে না এসে এর জায়গায় একটি ইন্টিজার টাইপ ডাটা আসে । আর কোন ডাটাটি %d এর জায়গায় বসবে তা ডবল কোটেশনের পর একটি কমা দিয়ে লিখে দিতে হয় printf("%d", num);

এখানে মোর্দা কথাটি হলো :

  1. num নামের একটি ভেরিয়েবল যে প্রোগ্রামে আছে সেটি আগেই বলে দিতে হবে এবং তার ডাটা টাইপও উল্লেখ করতে হবে ( int num; ) । একে ভেরিয়েবল ডিক্লারেশন বলে । শুধু ভেরিয়েবল ডিক্লারেশনের সময়ই তার ডাটা টাইপ বলে দিতে হয় , পরবর্তীতে শুধু ভেরিয়েবলটির নাম লিখলেই হবে । ভেরিয়েবল ডিক্লারেশনের পর সেমিকোলন দিতে হয় ।


  2. আমরা ভেরিয়েবলের মান লিখে দিলাম ( num = 13171; ) । একে বলে অ্যাসাইন ( assign ) করা । প্রোগ্রামে ভেরিয়েবল অ্যাসাইনের সাথে গাণিতিক সমীকরণের কোনো সম্পর্ক নেই । অর্থাৎ, a = b হলে b = a হবে না ।


  3. ইন্টিজার টাইপ ভেরিয়েবলের মান প্রিন্ট করার জন্য printf() ফাংশনে %d ব্যবহৃত হয় । %d এর জায়গায় কোন ইন্টিজার ভেরিয়েবলের মান প্রিন্ট হবে তা ডবল কোটেশনের পর কমা (,) দিয়ে বলে দিতে হবে ( printf("%d", num); ) । %d কিন্তু আউটপুটে দেখা যাবে না । তোমরা লক্ষ করো, কমার পর আমি একটি স্পেস দিয়েছি । এটি করেছি কোড পড়ার সুবিধার জন্য । স্পেস না দিলেও চলবে । আর একটি কথা, ইন্টিজার টাইপ ডাটা প্রিন্ট করার জন্য %i ও ব্যবহার করা যায় । তবে আমি %d ই ব্যবহার করব ।


এখন বলো তো নিচের প্রোগ্রামটির কী আউটপুট হতে পারে ?


 #include <stdio.h>
 int main()
 {
     int num1;
     int num2;
     int sum;
     
     num1 = 17;
     num2 = 28;
     sum = num1 + num2;
     
     printf("Sum is %d", sum);
     
     return 0;
 }

 
 প্রোগ্রাম : ২.২

প্রোগামটির আউটপুট হবে : Sum is 45

এখানে %d এর জায়গায় sum এর মান প্রিন্ট হয়েছে । আর sum এর মান হচ্ছে num1 ও num2 এর যোগফল ।

আমরা চাইলে প্রোগ্রামটি এভাবেও লিখতে পারতাম :

 #include <stdio.h>
 
 int main()
 {
     int num1, num2, sum;
     
     num1 = 17;
     num2 = 28;
     sum = num1 + num2;
     
     printf("Sum is %d", sum);
     
     return 0;
 }
 

 প্রোগ্রাম : ২.৩

আবার এভাবেও :

 #include <stdio.h>
 
 int main()
 {
     int num1 = 17, num2 = 28, sum;
     
     sum = num1 + num2;
     
     printf("Sum is %d", sum);
     
     return 0;
 }

 
 প্রোগ্রাম : ২.৪

আরেকটু ভালোভাবে করতে চাইলে এভাবে :

 #include <stdio.h>
 
 int main()
 {
     int num1 = 17, num2 = 28, sum;
     
     sum = num1 + num2;
     
     printf("%d + %d = %d", num1, num2, 
 sum);
     
     return 0;
 }
 
 প্রোগ্রাম : ২.৫

কিংবা এভাবে :

 #include <stdio.h>
 
 int main()
 {
     int num1 = 17, num2 = 28, sum;
     
     sum = num1 + num2;
     
     printf("%d = %d + %d", sum, num1, 
 num2);
     
     return 0;
 }





 
 প্রোগ্রাম : ২.৬

আবার যদি মনে করো sum ভেরিয়েবলটিই ব্যবহার করবে না তবে এভাবে :

 #include <stdio.h>
 
 int main()
 {
     int num1 = 17, num2 = 28;
     
     printf("%d + %d = %d", num1, num2, 
 num1 + num2);
     
     return 0;
 }
 

 প্রোগ্রাম : ২.৭

কী আনন্দ ! তাই না ?

এখন তুমি গুন (*) , ভাগ (/) , বিয়োগ (-) করার জন্য প্রোগ্রাম লিখার চেষ্টা করতে পারো ।

আচ্ছা , আমরা যদি ২.৭ নম্বর প্রোগ্রামে num1 -এর মান 17 না দিয়ে 17.5 দিতাম তাহলে কি হতো বলো তো ? ২.৭ নম্বর প্রোগ্রামে num1 -এর মান 17.5 দিয়ে কম্পাইল ও রান করো ।

আউটপুট কি ? আউটপুট : 17 + 28 = 45
তার মানে দশমিক বিন্দু সহ তারপরের অংশ বাদ পড়েছে । বাদ তো পড়বেই । কেননা num1 হচ্ছে ইন্টিজার টাইপের ভেরিয়েবল যাতে কেবল পূর্ণসংখ্যা রাখা যায় । এতে দশমিকযুক্ত সংখ্যা রাখলে এটি কেবল দশমিকের আগের অংশটুকু গ্রহণ করবে । মানে তুমি যদি int num = 10.99; দাও তবে num -এর মান হবে শুধু 10 ।

এখন তুমি যদি তোমার যোগের প্রোগ্রামে বাস্তব সংখ্যা ( real number, ভগ্নাংশ সহ সকল সংখ্যা , যেমন 2, 4.2, -3 ইত্যাদি , সংখ্যারেখার ওপর সকল সংখ্যাই কিন্তু বাস্তব সংখ্যা ) রাখতে চাও তবে তোমাকে আরেক ধরনের ডাটা টাইপ ব্যবহার করতে হবে । সেটি হচ্ছে ডবল ( double ) টাইপ । এজন্য ভেরিয়েবল ডিক্লারেশনের সময় int এর পরিবর্তে double লিখতে হবে ।

 #include <stdio.h>
 
 int main()
 {
     double num1 = 17.5, num2 = 28.9;
     
     printf("%lf + %lf = %lf\n", num1, 
 num2, num1 + num2);
     printf("%0.2lf + %0.0lf = %0.3lf", 
 num1, num2, num1 + num2\n);
     
     return 0;
 }

 
 প্রোগ্রাম : ২.৮

আউটপুট :
 
    17.500000 + 28.900000 = 46.400000 

    17.50 + 29 = 46.400 



বুঝতেই পারছ ডাবল টাইপ ডাটা প্রিন্ট করার জন্য %lf ( ছোট হাতের এল, L ) ব্যবহার করতে হয় ।
আর %0.2lf , %0.0lf ইত্যাদি দিলে কি হয় তা তো আউটপুট দেখেই বুঝতে পারছ ।
\n ( ব্যাকশ্লাস n ) দিলে কি হয় বুঝতে না পারলে \n বাদ দিয়ে প্রোগ্রামটি চালাও ।

তুমি দেখো, আমাদের প্রোগ্রামে দুই printf() ফাংশনের ভেতরে num1 ও num2 দুইবার যোগ করতে হয়েছে । যোগের কাজটি একবার করেই করা যেত । কাজটি তোমরা করতে পারো ।

এখন তোমরা যদি চাও তবে ডবল টাইপ ভেরিয়েবলের মান ইন্টিজার টাইপ ভেরিয়েবলে নিয়ে কাজ করতে পারো । নিচের উদাহরণটি দেখো :

 #include <stdio.h>
 
 int main()
 {
     double num1 = 17.5;
     int num2 = num1;
     
     printf("Value of num2 is %d\n", 
 num2);
     printf("Value of num1 is %lf\n", 
 num1);
     
     return 0;
 }

 
 প্রোগ্রাম : ২.৯

তোমরা দেখো num2 এর মান 17 আসবে যদিও num2 = num1 । এই ব্যাপারটিকে বলে টাইপ কাস্ট । টাইপ কাস্ট করে ডাবল টাইপ সংখ্যাকে ইন্টিজার টাইপ সংখ্যাই পরিনত করা হয়েছে । আর একটি ব্যাপার খেয়াল করো, টাইপ কাস্ট করার পরও num1 এর মানের কোনো পরিবর্তন হয়নি ।

আচ্ছা , আমরা তো যোগ - বিয়োগ , গুন - ভাগ এসব করা শিখে ফেললাম , তাই না ? আমরা আমাদের প্রোগ্রামে কোন সংখ্যাগুলো যোগ করব তা আমাদেরকে কোডের ভেতর বলে দিতে হচ্ছে । কিন্তু আমরা যদি চাই তবে সংখ্যাগুলো কোডের ভেতরে না রেখে যে প্রোগ্রামটি চালাবে তার কাছ থেকে ইনপুট নিয়ে জেনে নিতে পারি !
ইনপুট নেওয়ার জন্য আমরা scanf() ফাংশন ব্যবহার করব ।

 #include <stdio.h>
 
 int main()
 {
     int num1, num2, sum;
     
     printf("Enter a number : ");
     scanf("%d", &num1);
     printf("Enter another number : ");
     scanf("%d", &num2);
     
     sum = num1 + num2;
     
     printf("Sum is : %d\n", sum);
     
     return 0;
 }

 
 প্রোগ্রাম : ২.১০

আউটপুটে তোমার কাছে একটি সংখ্যা চাওয়া হবে । তুমি একটি সংখ্যা লিখে এন্টার বোতামে চাপ দাও । এরপর তোমার কাছে আরেকটি সংখ্যা চাওয়া হবে । তুমি আরো একটি সংখ্যা লিখে এন্টার চাপলে সংখ্যা দুটির যোগফল দেখতে পাবে ।

কোডের ব্যাখ্যা : scanf("%d", &num1); এখানে ডবল কোটেশানের ভেতর %d দিয়ে scanf() ফাংশনকে বলা হচ্ছে একটি ইন্টিজার টাইপ ডাটা ব্যবহারকারীর কাছ থেকে ইনপুট নিতে হবে । আর &num1 ( & -এর উচ্চারণ - এমপারসেন্ড ) দিয়ে বলা হচ্ছে যে ডাটাটি ইনপুট নেওয়া হবে তা num1 ভেরিয়েবলের মাঝে অ্যাসাইন করে দিতে হবে ।

আমরা একটি scanf() ফাংশন দিয়েও প্রোগ্রামটি করতে পারি :

 #include <stdio.h>
 
 int main()
 {
     int num1, num2, sum;
     
     printf("Enter two integers : ");
     scanf("%d %d", &num1, &num2);
     
     sum = num1 + num2;
     
     printf("Sum is : %d\n", sum);
     
     return 0;
 }

 
 প্রোগ্রাম : ২.১১

এই প্রোগ্রামটি দিয়ে আমরা কেবল পূর্ণসংখ্যা যোগ করতে পারব । এখন তোমরা বাস্তব সংখ্যা যোগ করার জন্য একটি প্রোগাম লিখে ফেলো ।

এখন আমরা আরেক ধরণের ডাটা টাইপ দেখব । আর সেটি হচ্ছে char ( character ) টাইপ । char টাইপ ভেরিয়েবলে শুধুমাত্র ইংরেজি বর্ণমালার অক্ষর , চিহ্ন , সংখ্যা এসব রাখা যায় । তবে রাখা যাবে কেবল একটি । মানে এতে একাধিক অক্ষর, চিহ্ন বা সংখ্যা রাখা যাবে না এবং অন্য ভাষার কোনো কিছুও এতে রাখা যাবে না । নিচের প্রোগ্রামটি কম্পিউটারে রান করাও :

 #include <stdio.h>
 
 int main()
 {
     char name = 'A';
     printf("%c", name);
     return 0;
 }

 
 প্রোগ্রাম : ২.১২

প্রোগ্রামটি চালালে স্ক্রিনে দেখবে A বর্ণটি প্রদর্শিত হচ্ছে । বুঝতেই পারছ char টাইপ ভেরিয়েবলে কোনো কিছু সরাসরি রাখতে হলে তার দুইপাশে সিঙ্গেল কোটেশন দিতে হয় । আর একে প্রিন্ট কিংবা ইনপুট নেওয়ার জন্য %c ব্যবহার করতে হয় ।

এখন তোমাদের কাজ হচ্ছে একটি scanf() ফাংশন ব্যবহার করে প্রোগ্রামটি লেখা ।

আশা করি তোমরা প্রোগ্রামটি লিখে ফেলেছ । আর যদি না পারো তবে প্রথম অধ্যায় থেকে আবার শুরু করো ।

তোমরা যে scanf() ফাংশন দিয়ে ব্যবহারকারীর কাছ থেকে char টাইপ ডাটা ইনপুট নিলে সেই কাজটি আমরা আরেকটি ফাংশন দিয়েও করতে পারি । সেটি হচ্ছে getchar() ( get + character ) । নিচের উদাহরণটি দেখো :

 #include <stdio.h>
 
 int main()
 {
     char first_letter;
     printf("Enter the first letter of 
 your name : ");
     first_letter = getchar();
     printf("The first letter of your 
 name is %c\n", first_letter);
     return 0;
 }

 
 প্রোগ্রাম : ২.১৩

দেখো getchar() ফাংশনটি scanf() ফাংশনের মতোই কাজ করবে ।

এখন নিচের প্রোগ্রামটি দেখো :

 #include <stdio.h>
 
 int main()
 {
     int num1 = 11, num2 = 5;
     
     printf("%d / %d = %d\n", num1, 
 num2, num1 / num2);
     
     num2 = 0;
     int qoutient = num1 / num2;
     
     printf("%d / %d = %d\n", num1, 
 num2, qoutient);
     
     return 0;
 }
 

 প্রোগ্রাম : ২.১৪

এখন তোমাদের কাজ হচ্ছে প্রোগ্রামে যে ভাগচিহ্ন ব্যবহার করে ভাগ করা হয়েছে তা সরাসরি ব্যবহার না করে একটি char টাইপ ভেরিয়েবলে রেখে তারপর করা ।


[ কিছু কথা : আমরা এতক্ষন তিন ধরণের ডাটা টাইপ দেখলাম । কিন্তু এদের মেমোরি সম্পর্কে কিছু জানা হলো না ।
ইন্টিজার টাইপ ডাটার জন্য মেমোরিতে চার বাইট ( 4 byte ) জায়গা লাগে । 1 byte = 8 bit । তাহলে চার বাইট সমান বত্রিশ বিট । সুতরাং এতে সংখ্যা রাখা যাবে 2&#179&#178 টি ( বাইনারি সংখ্যার ভিত্তি 2 ) । 2&#179&#178 = 4294967296 । সুতরাং ইন্টিজার টাইপ ডাটার রেঞ্জ হলো -2146473648 থেকে 2146473647 মোট 4294967296 টি সংখ্যা । যার মানে হলো তুমি ইন্টিজার টাইপ ভেরিয়েবলে 2146473647 -এর চেয়ে বড় কোনো সংখ্যা রাখতে পারবে না । যদি রাখো তবে তোমার প্রোগ্রামের আউটপুট ভুলভাল আসবে । ব্যাপারটি তোমরা পরীক্ষা করে দেখতে পারো ।

অন্যদিকে double টাইপ ডাটার জন্য মেমোরিতে আট বাইট জায়গা লাগে । char টাইপ ডাটার জন্য লাগে মাত্র এক বাইট । তবে মেমোরির এই ধারনক্ষমতা ডিভাইসের ভিন্নতার কারনে ভিন্ন হতে পারে ।

এই তিন ডাটা টাইপ ছাড়াও সি প্রোগ্রামে _Bool নামে আরেক ধরনের ডাটা টাইপ রয়েছে । এতে কেবল 0 আর 1 এই দুটি সংখ্যা রাখা যায় । এর ইনপুট - আউটপুটের জন্য %i ব্যবহৃত হয় ।

আবার তোমরা কিছু কিছু বইতে দেখতে পাবে যে double টাইপের ডাটা float দিয়ে প্রকাশ করা হয়েছে । float -এর জন্য %f ব্যবহার করা হয় । ]

তোমরা তো অনেকগুলো ডাটা টাইপ শিখে গেলে ! সি ল্যাঙ্গুয়েজে আরোও বেশকিছু ডাটা টাইপ রয়েছে । আবার ইনপুট - আউটপুটেরও রয়েছে নানা পদ্ধতি । তবে আপাতত যা শিখেছ তা দিয়েই অনেক প্রোগ্রাম লিখে ফেলতে পারবে । যেমন নিচের প্রোগ্রামটি :

 #include <stdio.h>
 
 int main()
 {
     int my cash = 23;
     int 5pen@tk = 25;
     return 0;
 }

 
 প্রোগ্রাম : ২.১৫

উপরের প্রোগ্রামটি কম্পাইল করলে একটি এরর মেসেস পাবে । তোমরা কি বলতে পারবে ভুলটি কোথায় ?

আসলে আমরা ভেরিয়েবল ডিক্লারেশন করতে ভুল করে ফেলেছি । ভেরিয়েবল ডিক্লারেশনের কিছু নিয়ম - কানুন আছে যা মেনে না চললে কম্পাইলার এরর দেখাবে ।
ভেরিয়েবলের নাম এক বা একাধিক অক্ষরের হতে পারে । অক্ষরগুলো হতে পারে a-z , A-Z , 0-9 এবং আন্ডারস্কোর বা আন্ডারবার ( _ ) । তবে একাধিক অক্ষরের ক্ষেত্রে প্রথম অক্ষরটা অঙ্ক বা ডিজিট হতে পারবে না । আর ভেরিয়েবলের নামগুলো অর্থপূর্ণ হলে ভালো হয় । যেমন , যোগফল রাখার জন্য ভেরিয়েবলের নাম sum দিলেই ভালো হয় , যদিও y বা হাত্তি - ঘোড়া নাম দিলেও কম্পাইলার আপত্তি করবে না , বরং লক্ষীসোনার মত খুশিমনে তা করবে । অর্থপূর্ণ নাম দিলে বুঝতে সুবিধা হয় ভেরিয়েবলটি কি উদ্দেশ্যে ব্যবহার করা হয়েছে । বুঝতে পেরেছ কি ?

এখন তোমরা ২.১৫ প্রোগ্রামটি ঠিক করে লেখো । প্রোগ্রামটি চালালে কি দেখবে ? কিছুই দেখবে না । কেননা তুমি তোমার প্রোগ্রামে ভেরিয়েবলে কিছু মান অ্যাসাইন করা ছাড়া কম্পিউটারকে কিছু করতে বলো নি । তোমরা এখন কাজের কিছু প্রোগ্রাম লিখতে পারো ।

আচ্ছা , কেউ যদি তোমাকে একটা প্রোগ্রাম লিখে দিয়ে জিজ্ঞেস করে প্রোগ্রামটি কি কাজ করবে তা বলতে তাহলে তুমি কি করবে বলো তো ? এজন্য তোমাকে পুরো কোডটি পড়তে হবে । প্রোগ্রামটি কি কাজ করবে তা যদি প্রোগ্রামের শুরুতেই লিখে রাখা হত তবে তোমাকে পুরো কোডটি পড়তে হত না । ব্যাপার টা মজার হতো না, বলো? এই মজার আর দরকারি জিনিসটি আমরা করতে পারি ! প্রোগ্রামের কোডের ভেতরে তুমি তোমার নিজের ভাষা ব্যবহার করতে পারো । একে বলে কমেন্ট করা । কম্পাইলার কমেন্টগুলো কে প্রোগ্রামের অংশ ধরবে না ।
এক লাইনের কমেন্ট হলে // চিহ্ন দিয়ে কমেন্ট শুরু করতে পারো । আর একাধিক লাইন থাকলে /* দিয়ে শুরু ও */ দিয়ে শেষ করতে হবে ।

 /*This program adds two integer values 
 and displays the result.
 Note that this is a multi-line 
 comment*/
 
 #include <stdio.h>
 
 int main()
 {
     //Declare varibles 
     int num1, num2, sum;
     
     //Assign values and calculate their 
 sum 
     num1 = 80;
     num2 = 72;
     sum = num1 + num2;
     
     //Display the result  
     printf("The sum of %d and %d is 
 %d\n", num1, num2, sum);
     
     return 0;
 }

 
 প্রোগ্রাম : ২.১৬

প্রোগ্রামে কমেন্ট দেওয়ার অভ্যাস একটি সুন্দর অভ্যাস । প্রোগ্রামের গুরুত্বপূর্ন লজিক গুলো কমেন্ট আকারে ব্যাখ্যা করলে যেই তোমার কোড পড়বে তার বুঝতে সুবিধে হবে । কাজটি না করলে পরবর্তীতে তুমি যখন কোড টি পড়বে তখন লজিকগুলো নিয়ে নতুন করে ভাবতে হবে -সেগুলো কি কাজ করবে । কি দরকার অত্ত ঝামেলায় যাওয়ার ?

অনুশীলন



  1. নিচের প্রোগ্রামটি কম্পিউটারে না চালিয়ে বলো তো আউটপুট কি হবে ? তারপর কম্পাইল ও রান করে উত্তর মিলিয়ে নাও ।

     #include <stdio.h>
     
     int main()
     {
         int num1, num2;
         
         num1 = 5;
         num2 = num1;
         num1 = 7;
         
         printf("%d", num2);
         
         return 0;
     }
    
    
    

  2. নিচের প্রোগ্রামটি সঠিক করে লিখে কম্পিউটারে চালিয়ে দেখো :

     #include <stdio.h>
     
     int main()
     {
         int a = 50;
         b = 80;
         sum = a + b;
         int sum;
         printf("%d", sum);
         return 0;
     }
    
    



পরবর্তী অংশ -
পেজে প্রবেশের সময় : Thu Apr 24 2025 14:15:49 GMT+0000 (Coordinated Universal Time)

No comments:

Post a Comment