ইংরেজিফরাসিস্প্যানিশ

Ad


অনওয়ার্কস ফেভিকন

bc - ক্লাউডে অনলাইন

উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটরের মাধ্যমে OnWorks ফ্রি হোস্টিং প্রদানকারীতে bc চালান

এটি হল bc কমান্ড যা আমাদের একাধিক বিনামূল্যের অনলাইন ওয়ার্কস্টেশন যেমন উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটর ব্যবহার করে OnWorks ফ্রি হোস্টিং প্রদানকারীতে চালানো যেতে পারে।

কার্যক্রম:

NAME এর


bc - একটি নির্বিচারে নির্ভুল ক্যালকুলেটর ভাষা

বাক্য গঠন


bc [ -hlwsqv ] [দীর্ঘ-বিকল্প] [ ফাইল ... ]

বর্ণনাঃ


bc এর ইন্টারেক্টিভ এক্সিকিউশন সহ নির্বিচারে নির্ভুল সংখ্যা সমর্থন করে এমন একটি ভাষা
বিবৃতি সি প্রোগ্রামিং ভাষার সাথে সিনট্যাক্সের কিছু মিল রয়েছে। ক
কমান্ড লাইন বিকল্প দ্বারা স্ট্যান্ডার্ড গণিত লাইব্রেরি উপলব্ধ। অনুরোধ করা হলে, গণিত গ্রন্থাগার
কোনো ফাইল প্রক্রিয়াকরণের আগে সংজ্ঞায়িত করা হয়। bc সমস্ত ফাইল থেকে কোড প্রক্রিয়াকরণের মাধ্যমে শুরু হয়
তালিকাভুক্ত ক্রমে কমান্ড লাইনে তালিকাভুক্ত। সমস্ত ফাইল প্রসেস করার পর, bc
স্ট্যান্ডার্ড ইনপুট থেকে পড়ে। সমস্ত কোড পড়া হয় হিসাবে নির্বাহ করা হয়. (যদি একটি ফাইল থাকে a
প্রসেসর বন্ধ করার নির্দেশ, bc স্ট্যান্ডার্ড ইনপুট থেকে কখনই পড়বে না।)

এর এই সংস্করণ bc প্রথাগত ছাড়িয়ে বেশ কিছু এক্সটেনশন রয়েছে bc বাস্তবায়ন এবং
POSIX খসড়া মান। কমান্ড লাইন বিকল্পগুলি এই এক্সটেনশনগুলিকে মুদ্রণ করতে পারে
সতর্ক করা বা প্রত্যাখ্যান করা। এই ডকুমেন্টটি এর দ্বারা গৃহীত ভাষা বর্ণনা করে
প্রসেসর এক্সটেনশন যেমন চিহ্নিত করা হবে.

বিকল্প
-এইচ, --হেল্প
ব্যবহার প্রিন্ট করুন এবং প্রস্থান করুন।

-i, --ইন্টারেক্টিভ
ইন্টারেক্টিভ মোড জোর করুন।

-l, --মাথলিব
স্ট্যান্ডার্ড গণিত লাইব্রেরি সংজ্ঞায়িত করুন।

-w, --সতর্ক দিন
POSIX এ এক্সটেনশনের জন্য সতর্কতা দিন bc.

-s, --মান
ঠিক POSIX প্রক্রিয়া করুন bc ভাষা.

-q, - শান্ত
সাধারণ GNU bc স্বাগত প্রিন্ট করবেন না।

-v, --সংস্করণ
সংস্করণ নম্বর এবং কপিরাইট প্রিন্ট করুন এবং প্রস্থান করুন।

সংখ্যা
মধ্যে সবচেয়ে মৌলিক উপাদান bc সংখ্যা সংখ্যাগুলি নির্বিচারে নির্ভুল সংখ্যা।
এই নির্ভুলতা পূর্ণসংখ্যা অংশ এবং ভগ্নাংশ উভয় অংশে। সব সংখ্যা হয়
অভ্যন্তরীণভাবে দশমিকে উপস্থাপিত হয় এবং সমস্ত গণনা দশমিকে করা হয়। (এই সংস্করণ
ভাগ এবং গুন অপারেশন থেকে ফলাফল ছাঁটাই করে।) এর দুটি বৈশিষ্ট্য রয়েছে
সংখ্যা, দৈর্ঘ্য এবং স্কেল। দৈর্ঘ্য হল উল্লেখযোগ্য দশমিকের মোট সংখ্যা
একটি সংখ্যার সংখ্যা এবং স্কেল হল দশমিকের পর দশমিক সংখ্যার মোট সংখ্যা
বিন্দু উদাহরণ স্বরূপ:
.000001 এর দৈর্ঘ্য 6 এবং স্কেল 6।
1935.000 এর দৈর্ঘ্য 7 এবং স্কেল 3।

বৈচিত্র্য
সংখ্যা দুটি ধরনের ভেরিয়েবল, সরল ভেরিয়েবল এবং অ্যারেতে সংরক্ষণ করা হয়। উভয় সহজ
ভেরিয়েবল এবং অ্যারে ভেরিয়েবলের নাম দেওয়া হয়েছে। নামগুলি একটি অক্ষর দিয়ে শুরু হয় যার পরে যেকোনো সংখ্যা থাকে
অক্ষর, অঙ্ক এবং আন্ডারস্কোর। সমস্ত অক্ষর ছোট হাতের হতে হবে। (সম্পূর্ণ আলফা-সংখ্যাসূচক
নাম একটি এক্সটেনশন. POSIX-এ bc সমস্ত নাম একটি একক ছোট হাতের অক্ষর।) প্রকার
অব ভ্যারিয়েবল প্রসঙ্গ দ্বারা পরিষ্কার কারণ সমস্ত অ্যারে ভেরিয়েবলের নাম অনুসরণ করা হবে
বন্ধনী ([]).

চারটি বিশেষ ভেরিয়েবল আছে, স্কেল, আইবেস, স্থূল এবং গত. স্কেল সংজ্ঞায়িত কিভাবে কিছু
ক্রিয়াকলাপ দশমিক বিন্দুর পরে সংখ্যা ব্যবহার করে। এর ডিফল্ট মান স্কেল 0 হয় আইবেস
এবং স্থূল ইনপুট এবং আউটপুট সংখ্যার জন্য রূপান্তর ভিত্তি সংজ্ঞায়িত করুন। উভয়ের জন্য ডিফল্ট
ইনপুট এবং আউটপুট হল বেস 10। গত (একটি এক্সটেনশন) একটি পরিবর্তনশীল যার মান আছে
শেষ মুদ্রিত সংখ্যা। এগুলি যেখানে উপযুক্ত সেখানে আরও বিশদে আলোচনা করা হবে। সব
এই ভেরিয়েবলগুলির জন্য নির্ধারিত মান থাকতে পারে পাশাপাশি অভিব্যক্তিতে ব্যবহৃত হতে পারে।

মন্তব্য
মন্তব্য bc অক্ষর দিয়ে শুরু করুন /* এবং অক্ষর দিয়ে শেষ */. মন্তব্য হতে পারে
যেকোনো জায়গায় শুরু করুন এবং ইনপুটে একটি একক স্পেস হিসেবে প্রদর্শিত হবে। (এটি মন্তব্য করে
অন্যান্য ইনপুট আইটেম সীমাবদ্ধ করুন। যেমন একটি কমেন্ট এর মাঝে পাওয়া যাবে না
পরিবর্তনশীল নাম।) মন্তব্যে শুরু এবং শেষের মধ্যে যেকোনো নতুন লাইন (লাইনের শেষ) অন্তর্ভুক্ত থাকে
মন্তব্যের।

জন্য স্ক্রিপ্ট ব্যবহার সমর্থন bc, একটি একক লাইন মন্তব্য একটি হিসাবে যোগ করা হয়েছে
এক্সটেনশন একটি একক লাইন মন্তব্য একটি এ শুরু হয় # অক্ষর এবং এর পরবর্তী প্রান্তে চলতে থাকে
লাইন. লাইনের অক্ষর শেষ মন্তব্যের অংশ নয় এবং সাধারণত প্রক্রিয়া করা হয়।

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

একটি সহজ অভিব্যক্তি শুধু একটি ধ্রুবক. bc ধ্রুবককে অভ্যন্তরীণ দশমিকে রূপান্তর করে
ভেরিয়েবল দ্বারা নির্দিষ্ট করা বর্তমান ইনপুট বেস ব্যবহার করে সংখ্যা আইবেস. (এখানে একটি
ফাংশনে ব্যতিক্রম।) এর আইনি মান আইবেস 2 থেকে 16 হয়। একটি মান বরাদ্দ করা
এই সীমার বাইরে থেকে আইবেস 2 বা 16 এর মান হবে। ইনপুট সংখ্যা থাকতে পারে
অক্ষর 0-9 এবং A-F। (দ্রষ্টব্য: তারা অবশ্যই বড় হাতের অক্ষর হতে হবে। ছোট হাতের অক্ষর পরিবর্তনশীল
নাম।) একক সংখ্যার সংখ্যার মান নির্বিশেষে সর্বদা অঙ্কের মান থাকে
of আইবেস. (অর্থাৎ A = 10।) বহু-সংখ্যার সংখ্যার জন্য, bc সব ইনপুট সংখ্যা বড় বা পরিবর্তন করে
এর মান আইবেসের সমান আইবেস-1। এই সংখ্যা তোলে FFF সর্বদা বৃহত্তম 3
ইনপুট বেসের সংখ্যা সংখ্যা।

পূর্ণ অভিব্যক্তি অন্যান্য অনেক উচ্চ স্তরের ভাষার অনুরূপ। যেহেতু একটাই আছে
সংখ্যার প্রকার, মিশ্রিত প্রকারের জন্য কোন নিয়ম নেই। পরিবর্তে, নিয়ম আছে
অভিব্যক্তির স্কেল। প্রতিটি অভিব্যক্তি একটি স্কেল আছে. এই স্কেল থেকে উদ্ভূত হয়
মূল সংখ্যা, সঞ্চালিত অপারেশন এবং অনেক ক্ষেত্রে, ভেরিয়েবলের মান
স্কেল. ভেরিয়েবলের আইনি মান স্কেল একটি C দ্বারা প্রতিনিধিত্বযোগ্য 0 থেকে সর্বাধিক সংখ্যা
পূর্ণসংখ্যা

আইনি অভিব্যক্তির নিম্নলিখিত বর্ণনায়, "expr" একটি সম্পূর্ণ অভিব্যক্তিকে বোঝায়
এবং "var" একটি সাধারণ বা একটি অ্যারে ভেরিয়েবলকে বোঝায়। একটি সহজ চলক মাত্র একটি
নাম
এবং একটি অ্যারে ভেরিয়েবল হিসাবে নির্দিষ্ট করা হয়
নাম[এক্সপ্রেস]
নির্দিষ্টভাবে উল্লেখ না থাকলে ফলাফলের স্কেল হল সর্বোচ্চ স্কেল
অভিব্যক্তি জড়িত।

- expr ফলাফল হল অভিব্যক্তির অস্বীকৃতি।

++ var ভেরিয়েবলটি একটি দ্বারা বৃদ্ধি পায় এবং নতুন মানটি এর ফলাফল
অভিব্যক্তি।

-- var ভেরিয়েবলটি এক দ্বারা হ্রাস পায় এবং নতুন মানটি এর ফলাফল
অভিব্যক্তি।

++ ছিল
অভিব্যক্তির ফলাফল হল চলকের মান এবং তারপর চলকটি
এক দ্বারা বৃদ্ধি

var -- অভিব্যক্তির ফলাফল হল ভেরিয়েবলের মান এবং তারপর পরিবর্তনশীল
এক দ্বারা হ্রাস

expr + expr
রাশির ফলাফল দুটি রাশির যোগফল।

expr - expr
অভিব্যক্তির ফলাফল দুটি রাশির পার্থক্য।

expr * expr
অভিব্যক্তির ফলাফল দুটি রাশির গুণফল।

expr / expr
রাশির ফলাফল দুটি রাশির ভাগফল। এর স্কেল
ফলাফল হল ভেরিয়েবলের মান স্কেল.

expr % expr
অভিব্যক্তির ফলাফল হল "অবশিষ্ট" এবং এটি নিম্নলিখিত হিসাবে গণনা করা হয়
উপায় a%b গণনা করতে, প্রথমে a/b গণনা করা হয় স্কেল অঙ্ক যে ফলাফল ব্যবহার করা হয়
a-(a/b)*b কে সর্বাধিক এর স্কেলে গণনা করতে স্কেল+স্কেল(b) এবং স্কেল(a)।
If স্কেল শূন্যে সেট করা হয়েছে এবং উভয় রাশিই পূর্ণসংখ্যা এই অভিব্যক্তিটি
পূর্ণসংখ্যা অবশিষ্ট ফাংশন।

expr ^ expr
অভিব্যক্তির ফলাফল হল প্রথমটির মান দ্বিতীয়টিতে উত্থাপিত। দ্য
দ্বিতীয় রাশি একটি পূর্ণসংখ্যা হতে হবে। (যদি দ্বিতীয় রাশিটি পূর্ণসংখ্যা না হয়,
একটি সতর্কতা তৈরি করা হয় এবং একটি পূর্ণসংখ্যা মান পেতে অভিব্যক্তিটি কাটা হয়।)
ফলাফলের স্কেল হল স্কেল যদি সূচক ঋণাত্মক হয়। সূচক হলে
ধনাত্মক ফলাফলের স্কেল প্রথমটির ন্যূনতম স্কেল
এক্সপ্রেশন বার সূচকের মান এবং সর্বাধিক স্কেল এবং স্কেল
প্রথম অভিব্যক্তির। (যেমন স্কেল(a^b) = মিনিট(স্কেল(a)*b, সর্বোচ্চ( স্কেল,
স্কেল(a))).) এটা উল্লেখ করা উচিত যে expr^0 সর্বদা 1 এর মান প্রদান করবে।

(এক্সপ্র)
এটি অভিব্যক্তির মূল্যায়ন জোরপূর্বক মান অগ্রাধিকার পরিবর্তন করে।

var = expr
ভেরিয়েবলটিকে এক্সপ্রেশনের মান নির্ধারণ করা হয়।

var = এক্সপ্রেস
এটি "var = var" এর সমতুল্য expr" ব্যতিক্রম সহ যে "var" অংশ
শুধুমাত্র একবার মূল্যায়ন করা হয়। এটি একটি পার্থক্য করতে পারে যদি "var" একটি অ্যারে হয়।

রিলেশনাল এক্সপ্রেশন হল একটি বিশেষ ধরনের এক্সপ্রেশন যা সবসময় 0 বা 1, 0 এ মূল্যায়ন করে
যদি সম্পর্কটি মিথ্যা হয় এবং 1 যদি সম্পর্কটি সত্য হয়। এগুলি যেকোন আইনে প্রদর্শিত হতে পারে
অভিব্যক্তি (POSIX bc এর প্রয়োজন যে রিলেশনাল এক্সপ্রেশনগুলি শুধুমাত্র যদি, যখন,
এবং বিবৃতির জন্য এবং শুধুমাত্র একটি রিলেশনাল পরীক্ষা করা যেতে পারে তাদের মধ্যে।) রিলেশনাল
অপারেটররা হয়

expr1 < expr2
ফলাফল 1 হয় যদি expr1 কঠোরভাবে expr2 থেকে কম হয়।

expr1 <= expr2
ফলাফল 1 হয় যদি expr1 expr2 এর থেকে কম বা সমান হয়।

expr1 > expr2
ফলাফল 1 হয় যদি expr1 কঠোরভাবে expr2 এর থেকে বড় হয়।

expr1 >= expr2
ফলাফল 1 হয় যদি expr1 expr2 এর থেকে বড় বা সমান হয়।

expr1 == expr2
ফলাফল 1 যদি expr1 expr2 এর সমান হয়।

expr1 != expr2
ফলাফল 1 হয় যদি expr1 expr2 এর সমান না হয়।

বুলিয়ান অপারেশনগুলিও আইনি। (পোসিক্স bc বুলিয়ান অপারেশন নেই)। দ্য
সমস্ত বুলিয়ান অপারেশনের ফলাফল রিলেশনাল হিসাবে 0 এবং 1 (মিথ্যা এবং সত্যের জন্য)
অভিব্যক্তি বুলিয়ান অপারেটর হল:

!expr ফলাফল 1 হয় যদি expr 0 হয়।

expr && expr
উভয় রাশি অ-শূন্য হলে ফলাফল 1 হয়।

expr || এক্সপ্রেস
ফলাফল 1 হয় যদি উভয় অভিব্যক্তি অ-শূন্য হয়।

অভিব্যক্তির অগ্রাধিকার নিম্নরূপ: (সর্বনিম্ন থেকে সর্বোচ্চ)
|| অপারেটর, বাম সহযোগী
&& অপারেটর, বাম সহযোগী
! অপারেটর, nonassociative
রিলেশনাল অপারেটর, বাম সহযোগী
অ্যাসাইনমেন্ট অপারেটর, সঠিক সহযোগী
+ এবং - অপারেটর, বাম সহযোগী
*, / এবং % অপারেটর, বাম সহযোগী
^ অপারেটর, ডান সহযোগী
unary - অপারেটর, nonassociative
++ এবং -- অপারেটর, অসহযোগী

এই অগ্রাধিকারটি বেছে নেওয়া হয়েছিল যাতে POSIX অনুগত bc প্রোগ্রাম সঠিকভাবে চলবে। এই
রিলেশনাল এবং লজিক্যাল অপারেটরদের ব্যবহার কিছু অস্বাভাবিক আচরণের কারণ হবে
যখন অ্যাসাইনমেন্ট এক্সপ্রেশনের সাথে ব্যবহার করা হয়। অভিব্যক্তি বিবেচনা করুন:
a = 3 < 5

বেশিরভাগ সি প্রোগ্রামাররা অনুমান করবে যে এটি "3 <5" (মান 1) এর ফলাফল নির্ধারণ করবে
পরিবর্তনশীল "a"। এই কি করে bc ভ্যারিয়েবল "a" এবং তারপরে 3 মান নির্ধারণ করা হয়
3 থেকে 5 তুলনা করুন। রিলেশনাল এবং লজিক্যাল অপারেটর ব্যবহার করার সময় বন্ধনী ব্যবহার করা ভাল
অ্যাসাইনমেন্ট অপারেটরদের সাথে।

আরও কয়েকটি বিশেষ অভিব্যক্তি রয়েছে যা প্রদান করা হয়েছে bc. এগুলোর সাথে সম্পর্ক আছে
ব্যবহারকারী সংজ্ঞায়িত ফাংশন এবং স্ট্যান্ডার্ড ফাংশন. তারা সব হিসাবে প্রদর্শিত হয় "নাম(পরামিতি)".
ব্যবহারকারী সংজ্ঞায়িত ফাংশন জন্য ফাংশন বিভাগ দেখুন. স্ট্যান্ডার্ড ফাংশন হল:

দৈর্ঘ্য (অভিব্যক্তি)
দৈর্ঘ্য ফাংশনের মান হল উল্লেখযোগ্য সংখ্যার সংখ্যা
অভিব্যক্তি।

পড়ুন ()
রিড ফাংশন (একটি এক্সটেনশন) স্ট্যান্ডার্ড ইনপুট থেকে একটি সংখ্যা পড়বে,
যেখানে ফাংশন ঘটবে তা নির্বিশেষে। সাবধান, এটি সঙ্গে সমস্যা হতে পারে
স্ট্যান্ডার্ড ইনপুটে ডেটা এবং প্রোগ্রামের মিশ্রণ। এই ফাংশন জন্য সর্বোত্তম ব্যবহার
এটি একটি পূর্বে লিখিত প্রোগ্রামে রয়েছে যা ব্যবহারকারীর কাছ থেকে ইনপুট প্রয়োজন, কিন্তু কখনই অনুমতি দেয় না
প্রোগ্রাম কোড ব্যবহারকারীর কাছ থেকে ইনপুট করা হবে. রিড ফাংশনের মান হল
ভেরিয়েবলের বর্তমান মান ব্যবহার করে স্ট্যান্ডার্ড ইনপুট থেকে সংখ্যা পড়া আইবেস
রূপান্তর বেস জন্য.

স্কেল (অভিব্যক্তি)
স্কেল ফাংশনের মান হল দশমিক বিন্দুর পরে সংখ্যার সংখ্যা
ভাবভঙ্গি.

sqrt ( অভিব্যক্তি )
sqrt ফাংশনের মান হল রাশিটির বর্গমূল। যদি
এক্সপ্রেশন নেতিবাচক, একটি রান টাইম ত্রুটি তৈরি হয়।

পরিসংখ্যান
বিবৃতি (অধিকাংশ বীজগণিতীয় ভাষার মতো) অভিব্যক্তির অনুক্রম প্রদান করে
মূল্যায়ন ভিতরে bc বিবৃতি কার্যকর করা হয় "যত তাড়াতাড়ি সম্ভব।" মৃত্যুদন্ড ঘটে যখন
একটি নতুন লাইনের সম্মুখীন হয়েছে এবং সেখানে এক বা একাধিক সম্পূর্ণ বিবৃতি রয়েছে। এই কারণে
অবিলম্বে কার্যকর করা, নতুন লাইন খুবই গুরুত্বপূর্ণ bc. আসলে, একটি সেমিকোলন এবং একটি উভয়ই
নিউলাইন বিবৃতি বিভাজক হিসাবে ব্যবহৃত হয়। একটি ভুলভাবে স্থাপন করা নতুন লাইন একটি কারণ হবে
বাক্যগঠন ত্রুটি. যেহেতু নিউলাইন বিবৃতি বিভাজক, তাই একটি নতুন লাইন লুকানো সম্ভব
ব্যাকস্ল্যাশ অক্ষর ব্যবহার করে। ক্রম "\ ", কোথায় নতুন লাইন প্রদর্শিত হয়
থেকে bc একটি নতুন লাইনের পরিবর্তে হোয়াইটস্পেস হিসাবে। একটি বিবৃতি তালিকা বিবৃতি একটি সিরিজ
সেমিকোলন এবং নিউলাইন দ্বারা পৃথক। নিম্নলিখিত একটি তালিকা bc বিবৃতি এবং কি
তারা করে: (বন্ধনীতে আবদ্ধ জিনিসগুলি ([]) বিবৃতির ঐচ্ছিক অংশ।)

অভিব্যক্তি
এই বিবৃতি দুটি জিনিসের একটি করে। যদি অভিব্যক্তিটি " দিয়ে শুরু হয়
...", এটি একটি অ্যাসাইনমেন্ট স্টেটমেন্ট হিসাবে বিবেচিত হয়। যদি
অভিব্যক্তি একটি অ্যাসাইনমেন্ট বিবৃতি নয়, অভিব্যক্তি মূল্যায়ন করা হয় এবং মুদ্রিত হয়
আউটপুটে। সংখ্যাটি মুদ্রিত হওয়ার পরে, একটি নতুন লাইন মুদ্রিত হয়। উদাহরণ স্বরূপ,
"a=1" একটি অ্যাসাইনমেন্ট বিবৃতি এবং "(a=1)" হল একটি অভিব্যক্তি যার একটি এমবেডেড আছে
নিয়োগ প্রিন্ট করা হয় যে সমস্ত সংখ্যা দ্বারা নির্দিষ্ট বেস মুদ্রিত হয়
পরিবর্তনশীল স্থূল. জন্য আইনি মান স্থূল BC_BASE_MAX এর মাধ্যমে 2 হয়। (দেখুন
বিভাগ সীমা।) বেস 2 থেকে 16 এর জন্য, সংখ্যা লেখার স্বাভাবিক পদ্ধতি
ব্যবহৃত 16-এর বেশি ঘাঁটির জন্য, bc এর একটি বহু-অক্ষর অঙ্ক পদ্ধতি ব্যবহার করে
সংখ্যাগুলি মুদ্রণ করা যেখানে প্রতিটি উচ্চতর ভিত্তি সংখ্যা একটি বেস 10 সংখ্যা হিসাবে মুদ্রিত হয়।
মাল্টি-ক্যারেক্টার ডিজিট স্পেস দিয়ে আলাদা করা হয়। প্রতিটি সংখ্যা সংখ্যা ধারণ করে
"ওবেস-1" এর বেস টেন মান উপস্থাপন করতে প্রয়োজনীয় অক্ষরের সংখ্যা। সংখ্যা থেকে
ইচ্ছামত নির্ভুলতা, কিছু সংখ্যা একক আউটপুটে মুদ্রণযোগ্য নাও হতে পারে
লাইন এই দীর্ঘ সংখ্যাগুলিকে শেষ হিসাবে "\" ব্যবহার করে লাইন জুড়ে বিভক্ত করা হবে
একটি লাইনে চরিত্র। প্রতি লাইনে মুদ্রিত অক্ষরের সর্বাধিক সংখ্যা 70
এর ইন্টারেক্টিভ প্রকৃতিতে bc, একটি সংখ্যা মুদ্রণ পার্শ্ব প্রতিক্রিয়া কারণ
বিশেষ ভেরিয়েবলে মুদ্রিত মান নির্ধারণ করা গত. এটি ব্যবহারকারীকে অনুমতি দেয়
মুদ্রিত অভিব্যক্তিটি পুনরায় টাইপ না করে মুদ্রিত শেষ মান পুনরুদ্ধার করুন
সংখ্যা. বরাদ্দ করা হচ্ছে গত বৈধ এবং শেষ মুদ্রিত মানটি ওভাররাইট করবে
নির্ধারিত মান সহ। নতুন বরাদ্দ করা মান পরবর্তী পর্যন্ত থাকবে
সংখ্যা মুদ্রিত হয় বা অন্য মান বরাদ্দ করা হয় গত. (কিছু ইনস্টলেশন হতে পারে
একটি একক সময়কাল (.) ব্যবহারের অনুমতি দিন যা একটি সংক্ষিপ্ত হাত হিসাবে একটি সংখ্যার অংশ নয়
জন্য স্বরলিপি গত.)

string আউটপুটে স্ট্রিং প্রিন্ট করা হয়। স্ট্রিং একটি ডবল উদ্ধৃতি অক্ষর দিয়ে শুরু হয়
এবং পরবর্তী ডবল কোট অক্ষর পর্যন্ত সমস্ত অক্ষর ধারণ করুন। সব অক্ষর
আক্ষরিকভাবে নেওয়া হয়, যেকোন নতুন লাইন সহ। কোন নতুন লাইন অক্ষর পরে মুদ্রিত
স্ট্রিং।

ছাপানো তালিকা
প্রিন্ট স্টেটমেন্ট (একটি এক্সটেনশন) আউটপুটের আরেকটি পদ্ধতি প্রদান করে। ক্রমতালিকা"
কমা দ্বারা পৃথক করা স্ট্রিং এবং এক্সপ্রেশনের একটি তালিকা। প্রতিটি স্ট্রিং বা
অভিব্যক্তি তালিকার ক্রমে মুদ্রিত হয়। কোন সমাপ্ত নতুন লাইন মুদ্রিত হয়.
অভিব্যক্তি মূল্যায়ন করা হয় এবং তাদের মান প্রিন্ট করা হয় এবং ভেরিয়েবলে বরাদ্দ করা হয়
গত. প্রিন্ট স্টেটমেন্টের স্ট্রিংগুলি আউটপুটে মুদ্রিত হয় এবং থাকতে পারে
বিশেষ অক্ষর. বিশেষ অক্ষর ব্যাকস্ল্যাশ অক্ষর (\) দিয়ে শুরু হয়।
দ্বারা স্বীকৃত বিশেষ চরিত্র bc হল "a" (সতর্কতা বা ঘণ্টা), "b" (ব্যাকস্পেস),
"f" (ফর্ম ফিড), "n" (নতুন লাইন), "r" (ক্যারেজ রিটার্ন), "q" (ডাবল কোট), "t"
(ট্যাব), এবং "\" (ব্যাকস্ল্যাশ)। ব্যাকস্ল্যাশ অনুসরণ করে অন্য কোন অক্ষর হবে
উপেক্ষা করা

{ বিবৃতি_তালিকা }
এটি যৌগিক বিবৃতি। এটি একাধিক বিবৃতি গোষ্ঠীভুক্ত করার অনুমতি দেয়
একসাথে মৃত্যুদন্ড কার্যকর করার জন্য।

if ( অভিব্যক্তি ) বিবৃতি 1 [আর বিবৃতি২]
if স্টেটমেন্ট এক্সপ্রেশনের মূল্যায়ন করে এবং স্টেটমেন্ট1 বা স্টেটমেন্ট2 চালায়
অভিব্যক্তির মানের উপর নির্ভর করে। যদি অভিব্যক্তিটি অ-শূন্য হয়,
স্টেটমেন্ট 1 কার্যকর করা হয়। স্টেটমেন্ট2 উপস্থিত থাকলে এবং রাশিটির মান
0 হয়, তারপর স্টেটমেন্ট2 চালানো হয়। (অন্য ধারাটি একটি এক্সটেনশন।)

যখন (অভিব্যক্তি) বিবৃতি
while স্টেটমেন্ট স্টেটমেন্ট এক্সিকিউট করবে যখন এক্সপ্রেশনটি শূন্য নয়।
এটি বিবৃতিটির প্রতিটি সম্পাদনের আগে অভিব্যক্তিকে মূল্যায়ন করে। সমাপ্তি
লুপ একটি শূন্য অভিব্যক্তি মান বা একটি বিরতির মৃত্যুদন্ড দ্বারা সৃষ্ট হয়
বিবৃতি।

উন্নত ( [expression1] ; [expression2] ; [expression3] ) বিবৃতি
স্টেটমেন্টের জন্য বিবৃতি বারবার কার্যকর করা নিয়ন্ত্রণ করে। অভিব্যক্তি 1 হল
লুপের আগে মূল্যায়ন করা হয়েছে। এক্সপ্রেশন2 এর প্রতিটি কার্যকর করার আগে মূল্যায়ন করা হয়
বিবৃতি যদি এটি অ-শূন্য হয়, বিবৃতিটি মূল্যায়ন করা হয়। এটা শূন্য হলে, লুপ
সমাপ্ত করা হয়। বিবৃতিটির প্রতিটি সম্পাদনের পরে, expression3 মূল্যায়ন করা হয়
অভিব্যক্তির পুনর্মূল্যায়নের আগে2. যদি এক্সপ্রেশন 1 বা এক্সপ্রেশন 3 অনুপস্থিত থাকে,
তারা মূল্যায়ন করা হবে পয়েন্ট এ কিছুই মূল্যায়ন করা হয় না. যদি expression2 হয়
অনুপস্থিত, এটি অভিব্যক্তি1-এর জন্য মান 2 প্রতিস্থাপনের সমান। (ঐচ্ছিক
অভিব্যক্তি একটি এক্সটেনশন. পসিক্স bc তিনটি অভিব্যক্তিরই প্রয়োজন।)
নিম্নলিখিত বিবৃতির জন্য সমতুল্য কোড:
অভিব্যক্তি 1;
যখন (অভিব্যক্তি2) {
বিবৃতি;
অভিব্যক্তি 3;
}

বিরতি এই বিবৃতিটি একটি জোরপূর্বক প্রস্থান ঘটায় সবচেয়ে সাম্প্রতিক এনক্লোসিং যখন স্টেটমেন্ট বা
বিবৃতির জন্য।

অবিরত
কন্টিনিউ স্টেটমেন্ট (একটি এক্সটেনশন) এর জন্য সবচেয়ে সাম্প্রতিক এনক্লোজিং ঘটায়
পরবর্তী পুনরাবৃত্তি শুরু করার বিবৃতি।

দাঁড়ান স্থগিত বিবৃতি (একটি এক্সটেনশন) একটি কার্যকরী বিবৃতি যা ঘটায় bc
প্রসেসর শুধুমাত্র তখনই প্রস্থান করবে যখন এটি কার্যকর করা হয়। উদাহরণস্বরূপ, "if (0 == 1) halt" হবে
কারণ না bc বন্ধ করতে হবে কারণ হল্ট কার্যকর হয় না।

প্রত্যাবর্তন একটি ফাংশন থেকে মান 0 ফেরত দিন। (ফাংশনগুলির বিভাগটি দেখুন।)

প্রত্যাবর্তন (অভিব্যক্তি)
একটি ফাংশন থেকে অভিব্যক্তির মান ফেরত দিন। (অনুচ্ছেদটি দেখুন
ফাংশন।) একটি এক্সটেনশন হিসাবে, বন্ধনীর প্রয়োজন নেই।

পিএসইউডো পরিসংখ্যান
এই বিবৃতিগুলি ঐতিহ্যগত অর্থে বিবৃতি নয়। তাদের মৃত্যুদন্ড কার্যকর করা হয় না
বিবৃতি তাদের ফাংশন "কম্পাইল" সময়ে সঞ্চালিত হয়।

সীমা এর স্থানীয় সংস্করণ দ্বারা প্রয়োগ করা স্থানীয় সীমা মুদ্রণ করুন bc. এটি একটি এক্সটেনশন.

অব্যাহতিপ্রাপ্ত যখন প্রস্থান বিবৃতি পড়া হয়, bc প্রসেসর বন্ধ করা হয়, নির্বিশেষে
যেখানে প্রস্থান বিবৃতি পাওয়া যায়। উদাহরণস্বরূপ, "if (0 == 1) quit" এর কারণ হবে bc
বিনষ্ট.

পাটা
একটি দীর্ঘ ওয়ারেন্টি নোটিশ প্রিন্ট করুন. এটি একটি এক্সটেনশন.

ফাংশন
ফাংশনগুলি একটি গণনা সংজ্ঞায়িত করার একটি পদ্ধতি প্রদান করে যা পরে কার্যকর করা যেতে পারে।
মধ্যে ফাংশন bc সর্বদা একটি মান গণনা করুন এবং এটি কলারের কাছে ফেরত দিন। ফাংশন সংজ্ঞা
"গতিশীল" এই অর্থে যে একটি সংজ্ঞার সম্মুখীন না হওয়া পর্যন্ত একটি ফাংশন অনির্ধারিত থাকে
ইনপুট সেই সংজ্ঞাটি তারপর একই জন্য অন্য সংজ্ঞা ফাংশন পর্যন্ত ব্যবহার করা হয়
নাম সম্মুখীন হয়. নতুন সংজ্ঞা তারপর পুরানো সংজ্ঞা প্রতিস্থাপন. একটি অনুষ্ঠান
নিম্নলিখিত হিসাবে সংজ্ঞায়িত করা হয়:
নির্ধারণ করা নাম ( পরামিতি ) { নতুন লাইন
স্বয়ংক্রিয়_তালিকা বিবৃতি_তালিকা }
একটি ফাংশন কল ফর্মের একটি অভিব্যক্তি "নাম(পরামিতি)".

পরামিতি হল সংখ্যা বা অ্যারে (একটি এক্সটেনশন)। ফাংশনের সংজ্ঞায়, শূন্য বা তার বেশি
পরামিতিগুলিকে কমা দ্বারা আলাদা করে তাদের নাম তালিকাবদ্ধ করে সংজ্ঞায়িত করা হয়। সব পরামিতি হয়
মান পরামিতি দ্বারা কল. অ্যারে প্যারামিটার সংজ্ঞা দ্বারা নির্দিষ্ট করা হয়
স্বরলিপি "নাম[]"। ফাংশন কলে, প্রকৃত পরামিতিগুলি হল সম্পূর্ণ অভিব্যক্তি
সংখ্যা পরামিতি। অ্যারে সংজ্ঞায়িত করার জন্য অ্যারে পাস করার জন্য একই স্বরলিপি ব্যবহার করা হয়
পরামিতি নামযুক্ত অ্যারেটি ফাংশনে মান দ্বারা পাস করা হয়। ফাংশন থেকে
সংজ্ঞাগুলি গতিশীল, পরামিতি সংখ্যা এবং প্রকারগুলি পরীক্ষা করা হয় যখন একটি ফাংশন হয়
ডাকা সংখ্যা বা পরামিতির প্রকারের কোনো মিল না থাকলে রানটাইম ত্রুটি হবে। ক
একটি অনির্ধারিত ফাংশনে কলের জন্য রানটাইম ত্রুটিও ঘটবে।

সার্জারির স্বয়ংক্রিয়_তালিকা ভেরিয়েবলের একটি ঐচ্ছিক তালিকা যা "স্থানীয়" ব্যবহারের জন্য। এর সিনট্যাক্স
স্বয়ংক্রিয় তালিকা (যদি উপস্থিত থাকে) হয় "গাড়ী নাম, ... ;।" (সেমিকোলন ঐচ্ছিক।) প্রতিটি নাম
একটি অটো ভেরিয়েবলের নাম। অ্যারে একই স্বরলিপি ব্যবহার করে নির্দিষ্ট করা যেতে পারে
প্যারামিটারে ব্যবহৃত হয়। এই ভেরিয়েবলগুলির মানগুলি শুরুতে একটি স্ট্যাকের উপরে পুশ করা হয়েছে
কাজ. ভেরিয়েবলগুলি তারপর শূন্য থেকে শুরু করা হয় এবং সর্বত্র ব্যবহার করা হয়
ফাংশন সঞ্চালন। ফাংশন প্রস্থান এ, এই ভেরিয়েবল পপ করা হয় যাতে
এই ভেরিয়েবলের মূল মান (ফাংশন কলের সময়) পুনরুদ্ধার করা হয়। দ্য
পরামিতিগুলি আসলেই স্বয়ংক্রিয় ভেরিয়েবল যা তে প্রদত্ত একটি মান থেকে শুরু করা হয়
ফাংশন কল। স্বয়ংক্রিয় ভেরিয়েবল ঐতিহ্যগত স্থানীয় ভেরিয়েবল থেকে ভিন্ন কারণ যদি
ফাংশন A কল ফাংশন B, B শুধুমাত্র ব্যবহার করে ফাংশন A এর অটো ভেরিয়েবল অ্যাক্সেস করতে পারে
একই নাম, যদি না ফাংশন B তাদের অটো ভেরিয়েবল বলে। অটোর কারণে
ভেরিয়েবল এবং প্যারামিটার একটি স্ট্যাকের উপর ধাক্কা দেওয়া হয়, bc পুনরাবৃত্ত ফাংশন সমর্থন করে।

ফাংশন বডি একটি তালিকা bc বিবৃতি আবার, বিবৃতি দ্বারা পৃথক করা হয়
সেমিকোলন বা নিউলাইন। রিটার্ন স্টেটমেন্ট একটি ফাংশন এবং এর সমাপ্তি ঘটায়
একটি মান ফেরত। রিটার্ন স্টেটমেন্টের দুটি সংস্করণ রয়েছে। প্রথম রূপ,
"প্রত্যাবর্তন", কলিং এক্সপ্রেশনে মান 0 ফেরত দেয়। দ্বিতীয় ফর্ম, "প্রত্যাবর্তন (
অভিব্যক্তি )", এক্সপ্রেশনের মান গণনা করে এবং সেই মানটি কলিংয়ে ফেরত দেয়
অভিব্যক্তি একটি উহ্য আছে "প্রত্যাবর্তন (0)"প্রতিটি ফাংশনের শেষে। এটি একটি অনুমতি দেয়
একটি সুস্পষ্ট রিটার্ন স্টেটমেন্ট ছাড়াই 0 টার্মিনেট করার ফাংশন।

ফাংশন ভেরিয়েবলের ব্যবহারও পরিবর্তন করে আইবেস. ফাংশন বডিতে সমস্ত ধ্রুবক
এর মান ব্যবহার করে রূপান্তরিত হবে আইবেস ফাংশন কলের সময়। এর পরিবর্তন
আইবেস স্ট্যান্ডার্ড ব্যতীত ফাংশন সম্পাদনের সময় উপেক্ষা করা হবে
ক্রিয়া পড়া, যা সর্বদা এর বর্তমান মান ব্যবহার করবে আইবেস সংখ্যার রূপান্তরের জন্য।

বেশ কিছু এক্সটেনশন ফাংশন যোগ করা হয়েছে. প্রথমত, সংজ্ঞা বিন্যাস আছে
সামান্য শিথিল করা হয়েছে। স্ট্যান্ডার্ডের জন্য খোলার বন্ধনীটি একই লাইনে থাকা প্রয়োজন
নির্ধারণ করা কীওয়ার্ড এবং অন্যান্য সমস্ত অংশ অবশ্যই নিম্নলিখিত লাইনে হতে হবে। এই সংস্করণ bc ইচ্ছা
ফাংশনের খোলার বন্ধনীর আগে এবং পরে যেকোন সংখ্যক নতুন লাইনের অনুমতি দিন। জন্য
উদাহরণ, নিম্নলিখিত সংজ্ঞা আইনী.
d (n) { রিটার্ন (2*n) সংজ্ঞায়িত করুন; }
d (n) সংজ্ঞায়িত করুন
{ ফেরত (2*n); }

ফাংশন হিসাবে সংজ্ঞায়িত করা যেতে পারে অকার্যকর. একটি অকার্যকর ফাংশন কোন মান প্রদান করে না এবং তাই নাও হতে পারে
একটি মান প্রয়োজন যে কোনো জায়গায় ব্যবহার করা হয়. একটি অকার্যকর ফাংশন কোন আউটপুট উত্পাদন করে না যখন
একটি ইনপুট লাইনে নিজেই কল করে। মূল শব্দ অকার্যকর মূল শব্দের মধ্যে স্থাপন করা হয়
নির্ধারণ করা এবং ফাংশনের নাম। উদাহরণস্বরূপ, নিম্নলিখিত অধিবেশন বিবেচনা করুন.
py (y) { প্রিন্ট "--->", y, "<---", "\n" সংজ্ঞায়িত করুন; }
void px (x) { print "--->", x, "<---", "\n" সংজ্ঞায়িত করুন; }
py(1)
--->1<---
0
px(1)
--->1<---
থেকে py একটি অকার্যকর ফাংশন নয়, এর কল py(1) পছন্দসই আউটপুট প্রিন্ট করে এবং তারপর
একটি দ্বিতীয় লাইন প্রিন্ট করে যা ফাংশনের মান। যেহেতু একটি ফাংশনের মান
যে একটি সুস্পষ্ট রিটার্ন বিবৃতি দেওয়া হয় না শূন্য, শূন্য মুদ্রিত হয়. জন্য px(1),
কোন শূন্য প্রিন্ট করা হয় না কারণ ফাংশনটি একটি অকার্যকর ফাংশন।

এছাড়াও, অ্যারের জন্য ভেরিয়েবল দ্বারা কল যোগ করা হয়েছিল। পরিবর্তনশীল অ্যারে দ্বারা একটি কল ঘোষণা করতে,
ফাংশন সংজ্ঞাতে অ্যারে প্যারামিটারের ঘোষণাটি দেখতে "*নাম[]". দ্য
ফাংশনে কল মান অ্যারে দ্বারা কলের মতোই থাকে।

গণিত লাইব্রেরি
If bc সঙ্গে আহ্বান করা হয় -l বিকল্প, একটি গণিত লাইব্রেরি প্রিলোড করা হয় এবং ডিফল্ট স্কেল হয়
20 এ সেট করা হয়েছে। গণিতের ফাংশনগুলি তাদের ফলাফলগুলি সেই সময়ে সেট করা স্কেলে গণনা করবে
তাদের কল. গণিত গ্রন্থাগার নিম্নলিখিত ফাংশন সংজ্ঞায়িত করে:

গুলি (x) x, x এর সাইন রেডিয়ানে আছে।

গ (x) x, x এর কোসাইন রেডিয়ানে আছে।

একটি (x) x এর arctangent, arctangent রেডিয়ান প্রদান করে।

আমি (x) x এর প্রাকৃতিক লগারিদম।

ই (x) e-এর মান x-এ বাড়ানোর সূচকীয় ফাংশন।

জে (n, x)
x এর পূর্ণসংখ্যা ক্রম n এর বেসেল ফাংশন।

উদাহরণ
In / বিন / SH, নিম্নলিখিতটি শেল ভেরিয়েবলে "pi" এর মান নির্ধারণ করবে pi.
pi=$(ইকো "স্কেল=10; 4*a(1)" | bc -l)

গণিত গ্রন্থাগারে ব্যবহৃত সূচকীয় ফাংশনের সংজ্ঞা নিচে দেওয়া হল।
এই ফাংশনটি POSIX এ লেখা আছে bc.
স্কেল = 20

/* সত্যটি ব্যবহার করে যে e^x = (e^(x/2))^2
যখন x যথেষ্ট ছোট হয়, আমরা সিরিজ ব্যবহার করি:
e^x = 1 + x + x^2/2! + x^3/3! +...
*/

সংজ্ঞায়িত করুন e(x) {
auto a, d, e, f, i, m, v, z

/* x এর চিহ্নটি পরীক্ষা করুন। */
যদি (x<0) {
মি = 1
x = -x
}

/* পূর্বশর্ত x. */
z = স্কেল;
স্কেল = 4 + z + .44*x;
যখন (x > 1) {
f += 1;
x /= 2;
}

/* ভেরিয়েবল শুরু করুন। */
v = 1+x
a = x
ডি = 1

জন্য (i=2; 1; i++) {
e = (a *= x) / (d *= i)
যদি (e == 0) {
যদি (f>0) যখন (f--) v = v*v;
স্কেল = z
যদি (m) ফেরত (1/v);
প্রত্যাবর্তন (v/1);
}
v += e
}
}

নিম্নলিখিত কোড যা এর বর্ধিত বৈশিষ্ট্য ব্যবহার করে bc একটি সহজ প্রোগ্রাম বাস্তবায়ন করতে
চেকবুক ব্যালেন্স গণনার জন্য। এই প্রোগ্রামটি একটি ফাইলে রাখা ভাল যাতে এটি হতে পারে
প্রতিটি ব্যবহারে এটি পুনরায় টাইপ না করে বহুবার ব্যবহার করা হয়েছে।
স্কেল=2
প্রিন্ট "\nচেক বুক প্রোগ্রাম!\n"
প্রিন্ট করুন " মনে রাখবেন, আমানত হল নেতিবাচক লেনদেন৷\n"
প্রিন্ট করুন " 0 লেনদেনের মাধ্যমে প্রস্থান করুন৷\n\n"

প্রিন্ট "প্রাথমিক ব্যালেন্স?"; bal = পড়ুন()
bal /= 1
মুদ্রণ "\ n"
যখন (1) {
"বর্তমান ব্যালেন্স = "; bal
"লেনদেন?"; ট্রান্স = পড়া()
যদি (ট্রান্স == 0) বিরতি;
bal -= ট্রান্স
bal /= 1
}
অব্যাহতিপ্রাপ্ত

নিম্নে রিকার্সিভ ফ্যাক্টোরিয়াল ফাংশনের সংজ্ঞা দেওয়া হল।
f (x) { সংজ্ঞায়িত করুন
যদি (x <= 1) ফেরত দেয় (1);
ফেরত (f(x-1) * x);
}

রিডলাইন এবং LIBEDIT বিকল্প
গনুহ bc GNU ব্যবহার করার জন্য (একটি কনফিগার বিকল্পের মাধ্যমে) কম্পাইল করা যেতে পারে পঠনরেখা ইনপুট সম্পাদক
লাইব্রেরি বা বিএসডি libedit লাইব্রেরি এটি ব্যবহারকারীকে আগে লাইন সম্পাদনা করতে দেয়
তাদের পাঠানো bc. এটি টাইপ করা পূর্ববর্তী লাইনগুলির ইতিহাসের জন্যও অনুমতি দেয়। কখন এটা
বিকল্প নির্বাচন করা হয়, bc আরো একটি বিশেষ পরিবর্তনশীল আছে. এই বিশেষ পরিবর্তনশীল, ইতিহাস is
ইতিহাসের লাইনের সংখ্যা ধরে রাখা হয়েছে। জন্য পঠনরেখা, -1 এর একটি মান মানে একটি
ইতিহাসের লাইন সীমাহীন সংখ্যক রাখা হয়. এর মান নির্ধারণ করা হচ্ছে ইতিহাস একটি থেকে
ধনাত্মক সংখ্যা প্রদত্ত সংখ্যার ইতিহাস লাইনের সংখ্যা সীমাবদ্ধ করে। 0 এর মান
ইতিহাস বৈশিষ্ট্য নিষ্ক্রিয় করে। ডিফল্ট মান হল 100। আরও তথ্যের জন্য, পড়ুন
GNU-এর জন্য ব্যবহারকারীর ম্যানুয়াল পঠনরেখা, ইতিহাস এবং বিএসডি libedit লাইব্রেরি এক সক্রিয় করতে পারবেন না
উভয় পঠনরেখা এবং libedit একই সময়ে

পার্থক্য
এর এই সংস্করণ bc POSIX P1003.2/D11 খসড়া থেকে বাস্তবায়িত হয়েছে এবং এতে বেশ কিছু রয়েছে
খসড়া এবং ঐতিহ্যগত বাস্তবায়নের সাথে সম্পর্কিত পার্থক্য এবং এক্সটেনশন। এটা
ব্যবহার করে ঐতিহ্যগত উপায়ে বাস্তবায়িত হয় না dc(1). এই সংস্করণটি একটি একক প্রক্রিয়া
যা পার্স করে এবং প্রোগ্রামের একটি বাইট কোড অনুবাদ চালায়। একটি "অনিথিভুক্ত" আছে
বিকল্প (-c) যা প্রোগ্রামটিকে পরিবর্তে স্ট্যান্ডার্ড আউটপুটে বাইট কোড আউটপুট করে
এটি চালানোর এটি প্রধানত পার্সার ডিবাগ করার জন্য এবং গণিত প্রস্তুত করার জন্য ব্যবহৃত হয়েছিল
গ্রন্থাগার।

পার্থক্যের একটি প্রধান উৎস হল এক্সটেনশন, যেখানে একটি বৈশিষ্ট্য আরও যোগ করার জন্য প্রসারিত করা হয়
কার্যকারিতা এবং সংযোজন, যেখানে নতুন বৈশিষ্ট্য যোগ করা হয়। নিম্নলিখিত তালিকা
পার্থক্য এবং এক্সটেনশন।

LANG পরিবেশ
এই সংস্করণটি LANG প্রক্রিয়াকরণের ক্ষেত্রে POSIX মানের সাথে সঙ্গতিপূর্ণ নয়৷
এনভায়রনমেন্ট ভেরিয়েবল এবং সমস্ত এনভায়রনমেন্ট ভেরিয়েবল LC_ দিয়ে শুরু হয়।

নাম ঐতিহ্যগত এবং POSIX bc ফাংশন, ভেরিয়েবল এবং জন্য একক অক্ষর নাম আছে
অ্যারে এগুলিকে বহু-অক্ষরের নাম হিসাবে বর্ধিত করা হয়েছে যা একটি দিয়ে শুরু হয়
অক্ষর এবং অক্ষর, সংখ্যা এবং আন্ডারস্কোর অক্ষর থাকতে পারে।

স্ট্রিং
স্ট্রিংগুলিতে NUL অক্ষর থাকার অনুমতি নেই৷ POSIX বলে যে সমস্ত অক্ষর আবশ্যক
স্ট্রিং অন্তর্ভুক্ত করা.

শেষ POSIX bc একটি আছে না গত পরিবর্তনশীল এর কিছু বাস্তবায়ন bc সময়কাল ব্যবহার করুন
(.) একই ভাবে.

তুলনা
POSIX bc শুধুমাত্র if বিবৃতি, while স্টেটমেন্ট এবং তে তুলনা করার অনুমতি দেয়
বিবৃতি জন্য দ্বিতীয় অভিব্যক্তি. এছাড়াও, শুধুমাত্র একটি সম্পর্কীয় অপারেশন
যারা বিবৃতি প্রতিটি অনুমোদিত.

যদি বিবৃতি, অন্য ধারা
POSIX bc অন্য কোন ধারা নেই।

বিবৃতি জন্য
POSIX bc বিবৃতিতে উপস্থিত থাকা সমস্ত অভিব্যক্তি প্রয়োজন।

&&, ||, !
POSIX bc লজিক্যাল অপারেটর নেই.

পড়া ফাংশন
POSIX bc একটি পড়া ফাংশন নেই.

মুদ্রণ বিবৃতি
POSIX bc একটি মুদ্রণ বিবৃতি নেই.

বিবৃতি অবিরত
POSIX bc একটি অবিরত বিবৃতি নেই.

রিটার্ন বিবৃতি
POSIX bc রিটার্ন এক্সপ্রেশনের চারপাশে বন্ধনী প্রয়োজন।

অ্যারে প্যারামিটার
POSIX bc সম্পূর্ণরূপে অ্যারে প্যারামিটার সমর্থন করে না (বর্তমানে)। POSIX ব্যাকরণ
ফাংশন সংজ্ঞাতে অ্যারের জন্য অনুমতি দেয়, কিন্তু নির্দিষ্ট করার জন্য একটি পদ্ধতি প্রদান করে না
একটি প্রকৃত পরামিতি হিসাবে একটি অ্যারে। (এটি সম্ভবত একটি তত্ত্বাবধান
ব্যাকরণ।) এর ঐতিহ্যগত বাস্তবায়ন bc মান অ্যারে দ্বারা শুধুমাত্র কল আছে
প্যারামিটার।

ফাংশন বিন্যাস
POSIX bc একই লাইনে খোলার বন্ধনী প্রয়োজন নির্ধারণ করা মূল শব্দ এবং
গাড়ী পরবর্তী লাইনে বিবৃতি।

=+, =-, =*, =/, =%, =^
POSIX bc এই "পুরাতন শৈলী" অ্যাসাইনমেন্ট অপারেটরদের সংজ্ঞায়িত করার প্রয়োজন নেই।
এই সংস্করণ এই "পুরানো শৈলী" অ্যাসাইনমেন্ট অনুমতি দিতে পারে. সীমা বিবৃতি ব্যবহার করুন
ইনস্টল করা সংস্করণ তাদের সমর্থন করে কিনা দেখুন। যদি এটি "পুরানো শৈলী" সমর্থন করে
অ্যাসাইনমেন্ট অপারেটর, "a =- 1" বিবৃতি হ্রাস পাবে a এর পরিবর্তে 1 দ্বারা
বিন্যাস a মান -1.

সংখ্যায় স্পেস
এর অন্যান্য বাস্তবায়ন bc সংখ্যায় স্থানের অনুমতি দিন। উদাহরণস্বরূপ, "x=1 3" হবে
ভ্যারিয়েবল x-এ মান 13 বরাদ্দ করুন। একই বিবৃতি একটি সিনট্যাক্স কারণ হবে
এর এই সংস্করণে ত্রুটি bc.

ত্রুটি এবং মৃত্যুদন্ড
কোড কি হবে তার পরিপ্রেক্ষিতে এই বাস্তবায়ন অন্যান্য বাস্তবায়ন থেকে পরিবর্তিত হয়
প্রোগ্রামে সিনট্যাক্স এবং অন্যান্য ত্রুটি পাওয়া গেলে কার্যকর করা হয়। যদি একটি সিনট্যাক্স ত্রুটি
একটি ফাংশন সংজ্ঞা পাওয়া যায়, ত্রুটি পুনরুদ্ধার a এর শুরু খুঁজে বের করার চেষ্টা করে
স্টেটমেন্ট এবং ফাংশন পার্স করা চালিয়ে যান। একবার একটি সিনট্যাক্স ত্রুটি পাওয়া যায়
ফাংশন, ফাংশন কলযোগ্য হবে না এবং অনির্ধারিত হয়ে যাবে। সিনট্যাক্স ত্রুটি
ইন্টারেক্টিভ এক্সিকিউশন কোডে বর্তমান এক্সিকিউশন ব্লককে বাতিল করে দেবে। দ্য
এক্সিকিউশন ব্লক লাইনের শেষ দ্বারা সমাপ্ত হয় যা সম্পূর্ণ হওয়ার পরে প্রদর্শিত হয়
বিবৃতির ক্রম। উদাহরণ স্বরূপ,
থেকে = 1
খ = 2
দুটি মৃত্যুদন্ড ব্লক আছে এবং
{ a = 1
b = 2 }
একটি এক্সিকিউশন ব্লক আছে। যেকোন রানটাইম ত্রুটি বর্তমানের সঞ্চালন বন্ধ করবে
মৃত্যুদন্ড ব্লক। একটি রানটাইম সতর্কতা বর্তমান এক্সিকিউশন ব্লক বন্ধ করবে না।

বাধা দেয়
একটি ইন্টারেক্টিভ সেশনের সময়, SIGINT সংকেত (সাধারণত নিয়ন্ত্রণ দ্বারা উত্পন্ন হয়-
টার্মিনাল থেকে C ক্যারেক্টার) বর্তমান এক্সিকিউশন ব্লক কার্যকর করবে
বিঘ্নিত করা এটি কোন ফাংশনটি নির্দেশ করে একটি "রানটাইম" ত্রুটি প্রদর্শন করবে
বাধাপ্রাপ্ত সমস্ত রানটাইম কাঠামো পরিষ্কার করার পরে, একটি বার্তা আসবে
ব্যবহারকারীকে অবহিত করার জন্য প্রিন্ট করা হয়েছে bc আরো ইনপুট জন্য প্রস্তুত. সব পূর্বে সংজ্ঞায়িত
ফাংশন সংজ্ঞায়িত থাকে এবং সমস্ত নন-অটো ভেরিয়েবলের মান হল এর মান
বাধা বিন্দু সমস্ত স্বয়ংক্রিয় ভেরিয়েবল এবং ফাংশন পরামিতি মুছে ফেলা হয়
পরিষ্কার প্রক্রিয়া চলাকালীন। একটি অ-ইন্টারেক্টিভ সেশনের সময়, SIGINT সংকেত
সম্পূর্ণ রানের অবসান ঘটাবে bc.

সীমা
এর জন্য বর্তমানে যে সীমা রয়েছে তা নিম্নরূপ bc প্রসেসর তাদের কিছু হতে পারে
একটি ইনস্টলেশন দ্বারা পরিবর্তন করা হয়েছে. প্রকৃত মান দেখতে সীমা বিবৃতি ব্যবহার করুন.

BC_BASE_MAX
সর্বাধিক আউটপুট বেস বর্তমানে 999 এ সেট করা হয়েছে। সর্বাধিক ইনপুট বেস হল 16।

BC_DIM_MAX
এটি বর্তমানে বিতরণ করা হিসাবে 65535 এর একটি নির্বিচারে সীমা। আপনার ইনস্টলেশন
ভিন্ন হতে পারে।

BC_SCALE_MAX
দশমিক বিন্দুর পরে সংখ্যার সংখ্যা INT_MAX সংখ্যার মধ্যে সীমাবদ্ধ। এছাড়াও,
দশমিক বিন্দুর আগে সংখ্যার সংখ্যা INT_MAX সংখ্যার মধ্যে সীমাবদ্ধ।

BC_STRING_MAX
একটি স্ট্রিং-এ অক্ষরের সংখ্যার সীমা হল INT_MAX অক্ষর৷

ঘাতক
রেজ অপারেশনে এক্সপোনেন্টের মান (^) LONG_MAX এ সীমাবদ্ধ।

পরিবর্তনশীল নাম
অনন্য নামের সংখ্যার বর্তমান সীমা প্রতিটি সাধারণের জন্য 32767
ভেরিয়েবল, অ্যারে এবং ফাংশন।

পরিবেশ বৈচিত্র্য


নিম্নলিখিত পরিবেশ ভেরিয়েবল দ্বারা প্রক্রিয়া করা হয় bc:

POSIXLY_CORRECT
এই হিসাবে একই -s বিকল্প।

BC_ENV_ARGS
এটি আর্গুমেন্ট পেতে আরেকটি পদ্ধতি bc. বিন্যাস হিসাবে একই
কমান্ড লাইন আর্গুমেন্ট. এই আর্গুমেন্ট প্রথম প্রক্রিয়া করা হয়, তাই তালিকাভুক্ত কোনো ফাইল
পরিবেশে আর্গুমেন্ট কোনো কমান্ড লাইন আর্গুমেন্ট ফাইলের আগে প্রক্রিয়া করা হয়।
এটি ব্যবহারকারীকে "স্ট্যান্ডার্ড" বিকল্পগুলি সেট আপ করতে এবং ফাইলগুলিকে প্রক্রিয়াকরণের অনুমতি দেয়৷
প্রতিটি আহ্বান bc. পরিবেশ ভেরিয়েবলের ফাইল সাধারণত হবে
ব্যবহারকারী প্রতিবার সংজ্ঞায়িত করতে চায় ফাংশনের জন্য ফাংশন সংজ্ঞা ধারণ করে bc is
চালানো।

BC_LINE_LENGTH
এটি একটি পূর্ণসংখ্যা হওয়া উচিত যা একটি আউটপুট লাইনে অক্ষরের সংখ্যা নির্দিষ্ট করে৷
সংখ্যা এর মধ্যে দীর্ঘ সংখ্যার জন্য ব্যাকস্ল্যাশ এবং নিউলাইন অক্ষর অন্তর্ভুক্ত রয়েছে। হিসাবে
একটি এক্সটেনশন, শূন্যের মান বহু-লাইন বৈশিষ্ট্যটিকে নিষ্ক্রিয় করে। অন্য কোন মান
এই ভেরিয়েবলের যেটি 3 এর চেয়ে কম, লাইনের দৈর্ঘ্য 70 এ সেট করে।

কারণ নির্ণয়


কমান্ড লাইনে কোনো ফাইল খোলা না গেলে, bc ফাইল যে রিপোর্ট করবে
অনুপলব্ধ এবং সমাপ্ত. এছাড়াও, কম্পাইল এবং রান টাইম ডায়াগনস্টিকস আছে যা উচিত
স্ব-ব্যাখ্যামূলক হতে

onworks.net পরিষেবা ব্যবহার করে bc অনলাইন ব্যবহার করুন


বিনামূল্যে সার্ভার এবং ওয়ার্কস্টেশন

উইন্ডোজ এবং লিনাক্স অ্যাপ ডাউনলোড করুন

  • 1
    ক্লোভার EFI বুটলোডার
    ক্লোভার EFI বুটলোডার
    প্রকল্প সরানো হয়েছে
    https://github.com/CloverHackyColor/CloverBootloader..
    বৈশিষ্ট্য: বুট macOS, Windows, এবং Linux
    এর সাথে ম্যাক বা পিসিতে UEFI বা লিগ্যাসি মোডে
    UE...
    ক্লোভার EFI বুটলোডার ডাউনলোড করুন
  • 2
    Unitedrpms
    Unitedrpms
    গিটারে আমাদের সাথে যোগ দিন!
    https://gitter.im/unitedrpms-people/Lobby
    আপনার মধ্যে URPMS সংগ্রহস্থল সক্ষম করুন
    পদ্ধতি -
    https://github.com/UnitedRPMs/unitedrpms.github.io/bl...
    Unitedrpms ডাউনলোড করুন
  • 3
    C ++ লাইব্রেরিগুলিকে বুস্ট করুন
    C ++ লাইব্রেরিগুলিকে বুস্ট করুন
    বুস্ট বিনামূল্যে পোর্টেবল প্রদান করে
    পিয়ার-পর্যালোচিত C++ লাইব্রেরি। দ্য
    পোর্টেবল লাইব্রেরির উপর জোর দেওয়া হয় যা
    C++ স্ট্যান্ডার্ড লাইব্রেরির সাথে ভাল কাজ করুন।
    দেখুন http://www.bo...
    বুস্ট সি++ লাইব্রেরি ডাউনলোড করুন
  • 4
    ভার্চুয়ালজিএল
    ভার্চুয়ালজিএল
    ভার্চুয়ালজিএল একটি থেকে 3D কমান্ড পুনঃনির্দেশ করে
    ইউনিক্স/লিনাক্স ওপেনজিএল অ্যাপ্লিকেশন এ
    সার্ভার-সাইড GPU এবং রূপান্তর করে
    একটি ভিডিও স্ট্রীমে 3D ছবি রেন্ডার করা হয়েছে
    যা দিয়ে ...
    ভার্চুয়ালজিএল ডাউনলোড করুন
  • 5
    libusb
    libusb
    ব্যবহারকারী স্থান সক্ষম করতে লাইব্রেরি
    যোগাযোগের জন্য অ্যাপ্লিকেশন প্রোগ্রাম
    ইউএসবি ডিভাইস। শ্রোতা: বিকাশকারী, শেষ
    ব্যবহারকারী/ডেস্কটপ। প্রোগ্রামিং ভাষা: সি.
    বিভাগগুলি...
    libusb ডাউনলোড করুন
  • 6
    সুইগ
    সুইগ
    SWIG একটি সফটওয়্যার ডেভেলপমেন্ট টুল
    যেটি সি এবং তে লেখা প্রোগ্রামগুলিকে সংযুক্ত করে
    বিভিন্ন উচ্চ-স্তরের সাথে C++
    প্রোগ্রামিং ভাষা. SWIG এর সাথে ব্যবহার করা হয়
    ভিন্ন...
    SWIG ডাউনলোড করুন
  • আরও »

লিনাক্স কমান্ডগুলি

  • 1
    অ্যাসিটোনিসো
    অ্যাসিটোনিসো
    acetoneiso - বৈশিষ্ট্য সমৃদ্ধ গ্রাফিক্যাল
    সিডি/ডিভিডি মাউন্ট এবং পরিচালনার জন্য অ্যাপ্লিকেশন
    ছবি...
    অ্যাসিটোনিসো চালান
  • 2
    ace_gperf
    ace_gperf
    ace_gperf - একটি নিখুঁত হ্যাশ তৈরি করুন
    একটি কী সেট থেকে ফাংশন...
    ace_gperf চালান
  • 3
    coresendmsg
    coresendmsg
    coresendmsg - একটি CORE API বার্তা পাঠান
    কোর-ডেমন ডেমনে...
    coresendmsg চালান
  • 4
    core_server
    core_server
    core_server - এর জন্য প্রাথমিক সার্ভার
    স্প্যামবেইস। বর্ণনা: বর্তমানে পরিবেশন করা হয়
    শুধুমাত্র ওয়েব ইন্টারফেস। প্লাগ ইন
    বিভিন্ন প্রোটোকলের জন্য শ্রোতা হল টিবিডি।
    এই ...
    core_server চালান
  • 5
    g.gui.gcpgrass
    g.gui.gcpgrass
    g.gui.gcp - একটি মানচিত্র জিওরেক্টিফাই করে এবং
    গ্রাউন্ড কন্ট্রোল পয়েন্ট পরিচালনার অনুমতি দেয়।
    কীওয়ার্ড: সাধারণ, GUI,
    জিওরেক্টিফিকেশন, জিসিপি...
    g.gui.gcpgrass চালান
  • 6
    g.gui.gmodelergrass
    g.gui.gmodelergrass
    g.gui.gmodeler - গ্রাফিকাল মডেলার।
    ইন্টারেক্টিভভাবে তৈরি, সম্পাদনা করার অনুমতি দেয়
    এবং মডেল পরিচালনা। কীওয়ার্ড: সাধারণ,
    GUI, গ্রাফিকাল মডেলার, ওয়ার্কফ্লো ...
    g.gui.gmodelergrass চালান
  • আরও »

Ad