ফোরট্রান এর বেসিক সিনট্যাক্স (Basic Syntax in Fortran)
ফোরট্রান একটি উচ্চস্তরের প্রোগ্রামিং ভাষা, যার সিনট্যাক্স তুলনামূলকভাবে সহজ এবং তা গাণিতিক সমাধান ও বিজ্ঞানী গবেষণার জন্য অত্যন্ত কার্যকরী। ফোরট্রান-এর বেসিক সিনট্যাক্সের কিছু গুরুত্বপূর্ণ দিক নিচে আলোচনা করা হলো।
১. প্রোগ্রাম স্ট্রাকচার
ফোরট্রান প্রোগ্রাম সাধারণত program এবং end program ব্লক দিয়ে শুরু এবং শেষ হয়। প্রোগ্রামের ভিতরে কোড লেখা হয়।
program hello
print *, "Hello, World!"
end program helloএটি একটি সাধারণ "Hello, World!" প্রোগ্রাম, যা স্ক্রীনে "Hello, World!" প্রদর্শন করবে।
২. ভেরিয়েবল ডিক্লারেশন (Variable Declaration)
ফোরট্রানে ভেরিয়েবলগুলি একটি নির্দিষ্ট ডাটা টাইপের সাথে ডিক্লেয়ার করা হয়। ডাটা টাইপে কিছু জনপ্রিয় টাইপ হলো integer, real, character, logical ইত্যাদি।
উদাহরণ:
integer :: i
real :: x
character(len=20) :: name
logical :: flagএই উদাহরণে:
integerভেরিয়েবলiঘোষণা করা হয়েছে।realভেরিয়েবলxঘোষণা করা হয়েছে।characterভেরিয়েবলname২০ ক্যারেক্টার দৈর্ঘ্যের একটি স্ট্রিং হিসাবে ঘোষণা করা হয়েছে।logicalভেরিয়েবলflagঘোষণা করা হয়েছে যা সত্য/মিথ্যা মান ধারণ করতে পারে।
৩. এ্যাসাইনমেন্ট (Assignment)
ফোরট্রানে ভেরিয়েবলের মান নির্ধারণের জন্য = চিহ্ন ব্যবহার করা হয়। এটি স্টেটমেন্টের মাধ্যমে ভেরিয়েবলগুলির মান দেওয়া হয়।
উদাহরণ:
i = 10
x = 3.14
name = "Fortran"
flag = .TRUE.এখানে:
iকে ১০ দেওয়া হয়েছে।xকে ৩.১৪ দেওয়া হয়েছে।nameকে "Fortran" দেওয়া হয়েছে।flagকে.TRUE.দেওয়া হয়েছে।
৪. প্রিন্ট স্টেটমেন্ট (Print Statement)
ফোরট্রানে আউটপুট প্রদর্শন করতে print স্টেটমেন্ট ব্যবহৃত হয়। এটি কনসোলে কোনো মান বা বার্তা প্রদর্শন করতে ব্যবহৃত হয়।
উদাহরণ:
print *, "The value of x is: ", x
print *, "Hello, ", nameএই কোডটি আউটপুটে x এর মান এবং name এর মান প্রদর্শন করবে।
৫. কন্ডিশনাল স্টেটমেন্ট (Conditional Statements)
ফোরট্রানে if এবং else স্টেটমেন্ট ব্যবহার করে শর্ত নির্ধারণ করা যায়। শর্ত অনুযায়ী কোডের ভিন্ন অংশ কার্যকর করা সম্ভব।
উদাহরণ:
if (x > 0.0) then
print *, "x is positive"
else
print *, "x is non-positive"
end ifএই উদাহরণে:
- যদি
x০ এর চেয়ে বড় হয় তবে "x is positive" প্রিন্ট হবে। - অন্যথায় "x is non-positive" প্রিন্ট হবে।
৬. লুপ স্টেটমেন্ট (Loop Statements)
ফোরট্রানে লুপ তৈরি করতে do লুপ ব্যবহৃত হয়, যা নির্দিষ্ট শর্তে কোড পুনরাবৃত্তি করতে সাহায্য করে।
উদাহরণ:
do i = 1, 5
print *, "i = ", i
end doএই লুপটি ১ থেকে ৫ পর্যন্ত পুনরাবৃত্তি করবে এবং প্রতিটি মান আউটপুটে প্রদর্শন করবে।
৭. ফাংশন এবং সাবরুটিন (Functions and Subroutines)
ফোরট্রানে কোডকে আরও মডুলার এবং পুনঃব্যবহারযোগ্য করতে function এবং subroutine ব্যবহার করা হয়। ফাংশন কোনো মান ফেরত দেয়, আর সাবরুটিন শুধু কার্যক্রম সম্পাদন করে।
উদাহরণ (ফাংশন):
function square(x)
real :: square
real, intent(in) :: x
square = x * x
end function squareএই ফাংশনটি একটি সংখ্যার বর্গফল গণনা করবে।
উদাহরণ (সাবরুটিন):
subroutine print_message(message)
character(len=*) :: message
print *, message
end subroutine print_messageএই সাবরুটিনটি একটি মেসেজ প্রিন্ট করবে।
৮. অ্যারেস (Arrays)
ফোরট্রানে একাধিক মান সংরক্ষণ করার জন্য অ্যারে ব্যবহার করা হয়। অ্যারে ডিক্লেয়ার করতে নিচের সিনট্যাক্স ব্যবহার করা হয়:
উদাহরণ:
integer, dimension(5) :: arr
arr(1) = 10
arr(2) = 20
arr(3) = 30
arr(4) = 40
arr(5) = 50এই কোডে arr নামক একটি ৫ আউটপুট অ্যারে ডিক্লেয়ার করা হয়েছে এবং তার মান প্রদান করা হয়েছে।
৯. কমেন্ট (Comment)
ফোরট্রানে কমেন্টের জন্য ! চিহ্ন ব্যবহার করা হয়। এটি কোডের বর্ণনা বা বিশ্লেষণ করার জন্য ব্যবহৃত হয়, যা কোড কম্পাইল বা রান না করেও থাকা উচিত।
উদাহরণ:
! This is a comment
print *, "Hello, World!" ! This prints a messageউপসংহার
ফোরট্রানের বেসিক সিনট্যাক্স বেশ সহজ এবং সরল। গাণিতিক এবং বৈজ্ঞানিক সমস্যা সমাধানে ফোরট্রান অত্যন্ত কার্যকরী, এবং এর সিনট্যাক্সের মাধ্যমে আপনি দ্রুত কোড লেখার মাধ্যমে বিভিন্ন জটিল সমাধান তৈরি করতে পারেন।
ফোরট্রান এর প্রোগ্রামের স্ট্রাকচার
ফোরট্রান প্রোগ্রামগুলি বেশ সহজ এবং সোজা স্ট্রাকচারে লেখা হয়। এর মধ্যে সাধারণত কিছু মৌলিক উপাদান থাকে, যেমন ইনক্লুড স্টেটমেন্ট, ডাটা ডিক্লেয়ারেশন, লজিক্যাল স্টেটমেন্ট, এবং ফাংশন বা সাবরুটিন। ফোরট্রান প্রোগ্রামের স্ট্রাকচারকে সাধারণত তিনটি প্রধান অংশে ভাগ করা হয়:
- ডিক্লেয়ারেশন সেকশন
- এগজিকিউটেবল সেকশন
- এন্ড স্টেটমেন্ট
নিচে ফোরট্রান প্রোগ্রামের একটি সাধারণ স্ট্রাকচার দেওয়া হলো:
১. ডিক্লেয়ারেশন সেকশন (Declaration Section)
এই সেকশনে আপনি সমস্ত ভ্যারিয়েবল, কনস্ট্যান্ট এবং আর্কিটেকচার সম্পর্কে ঘোষণা করেন। ফোরট্রানে ডাটা টাইপ এবং আর্কিটেকচার সম্পর্কে জানানো হয় যাতে প্রোগ্রামটি সঠিকভাবে কাজ করতে পারে। সাধারণত এখানে INTEGER, REAL, CHARACTER ইত্যাদি ডাটা টাইপ ডিক্লেয়ার করা হয়।
উদাহরণ:
INTEGER :: i, j ! i এবং j একটি ইন্টিজার টাইপ ভ্যারিয়েবল
REAL :: x, y ! x এবং y একটি রিয়েল টাইপ ভ্যারিয়েবল
CHARACTER(LEN=10) :: name ! name একটি স্ট্রিং টাইপ ভ্যারিয়েবল২. এগজিকিউটেবল সেকশন (Executable Section)
এই সেকশনে প্রোগ্রামের কার্যকর অংশ থাকে। এখানে আপনি গাণিতিক অপারেশন, লজিক্যাল স্টেটমেন্ট, লুপ, কন্ডিশনাল স্টেটমেন্ট ইত্যাদি ব্যবহার করে কোড লিখেন। এটি মূলত প্রোগ্রামের নির্দেশাবলী (commands) যা কম্পিউটারকে কর্ম করতে বলে।
উদাহরণ:
i = 5 ! i তে ৫ ভ্যালু অ্যাসাইন করা
x = 3.14 ! x তে ৩.১৪ ভ্যালু অ্যাসাইন করা
name = "John" ! name তে "John" স্ট্রিং অ্যাসাইন করা
! গাণিতিক অপারেশন
y = x + 2.0
z = x * y৩. এন্ড স্টেটমেন্ট (End Statement)
এটি প্রোগ্রামের শেষে থাকে এবং প্রোগ্রামটিকে বন্ধ করে দেয়। ফোরট্রানে প্রোগ্রামটি বন্ধ করতে END বা END PROGRAM স্টেটমেন্ট ব্যবহৃত হয়।
উদাহরণ:
END PROGRAM my_programফোরট্রান প্রোগ্রামের একটি সম্পূর্ণ উদাহরণ
নিচে একটি সাধারণ ফোরট্রান প্রোগ্রামের উদাহরণ দেওয়া হলো যা দুটি সংখ্যার যোগফল বের করবে:
PROGRAM sum_example ! প্রোগ্রামের নাম
! ডিক্লেয়ারেশন সেকশন
INTEGER :: num1, num2, sum ! num1, num2, sum ইন্টিজার টাইপ
! ইনপুট নেওয়া
PRINT *, 'Enter the first number:'
READ *, num1
PRINT *, 'Enter the second number:'
READ *, num2
! যোগফল বের করা
sum = num1 + num2
! ফলাফল প্রিন্ট করা
PRINT *, 'The sum of the two numbers is: ', sum
END PROGRAM sum_example ! প্রোগ্রাম শেষফোরট্রান প্রোগ্রামের মৌলিক স্ট্রাকচার:
PROGRAM: প্রোগ্রামের শুরুতে ব্যবহৃত হয়।- ডিক্লেয়ারেশন সেকশন: ভ্যারিয়েবল ডিক্লেয়ারেশন, ডাটা টাইপ ইত্যাদি।
- এগজিকিউটেবল সেকশন: গাণিতিক অপারেশন, ইনপুট, আউটপুট ইত্যাদি।
END PROGRAM: প্রোগ্রামের শেষ।
উপসংহার
ফোরট্রান প্রোগ্রামের স্ট্রাকচার খুবই সরল এবং তার প্রোগ্রামিং শুরু করার জন্য খুবই উপযোগী। এটি তিনটি প্রধান অংশে বিভক্ত: ডিক্লেয়ারেশন সেকশন, এগজিকিউটেবল সেকশন, এবং এন্ড স্টেটমেন্ট। সহজ গাণিতিক সমাধান থেকে জটিল বৈজ্ঞানিক এবং প্রকৌশল সমস্যার সমাধান পর্যন্ত এটি খুব কার্যকর।
স্টেটমেন্ট এবং এক্সপ্রেশন এর ব্যবহার
প্রোগ্রামিং ভাষায়, স্টেটমেন্ট এবং এক্সপ্রেশন দুটি মৌলিক ধারণা যা কোডের কার্যকারিতা নির্ধারণ করে। স্টেটমেন্ট এবং এক্সপ্রেশন উভয়ই প্রোগ্রামিংয়ের গুরুত্বপূর্ণ অংশ, কিন্তু তারা বিভিন্ন ধরনের কাজ করে।
১. স্টেটমেন্ট (Statement)
স্টেটমেন্ট হলো একটি একক নির্দেশনা যা একটি নির্দিষ্ট কাজ সম্পন্ন করে। এটি সাধারণত প্রোগ্রামের কার্যক্রম বা আচরণকে নির্দেশ করে। একটি স্টেটমেন্ট সাধারণত কোন এক্সপ্রেশন বা অপারেশন সম্পন্ন করার জন্য ব্যবহৃত হয়।
স্টেটমেন্টের বৈশিষ্ট্য:
- এটি প্রোগ্রামে কোনও ক্রিয়া সম্পন্ন করার জন্য ব্যবহৃত হয়, যেমন ভ্যারিয়েবলের মান সেট করা, শর্ত পরীক্ষার জন্য
ifবাwhileলুপ ব্যবহার করা, বা একটি ফাংশন কল করা। - স্টেটমেন্ট সাধারণত একটি সম্পূর্ণ একক কাজের সাথে সম্পর্কিত হয়।
- প্রোগ্রামটি স্টেটমেন্ট দ্বারা নিয়ন্ত্রিত হয় এবং প্রতিটি স্টেটমেন্টের মাধ্যমে কোডের চলমান নির্দেশনা নির্ধারণ করা হয়।
উদাহরণ:
x = 5 ! এটি একটি অ্যাসাইনমেন্ট স্টেটমেন্ট
if (x > 0) then
print *, "Positive number"
end if ! এটি একটি শর্ত পরীক্ষা স্টেটমেন্টএখানে:
x = 5একটি অ্যাসাইনমেন্ট স্টেটমেন্ট যাxভ্যারিয়েবলে ৫ মান নির্ধারণ করে।if (x > 0)একটি শর্ত পরীক্ষা স্টেটমেন্ট যাxএর মান যদি ০ এর বেশি হয় তাহলে একটি কাজ করবে।
২. এক্সপ্রেশন (Expression)
এক্সপ্রেশন হলো এমন একটি কনস্ট্রাক্ট যা একটি মান প্রদান করে। এক্সপ্রেশন সাধারণত এক বা একাধিক অপারেটর এবং অপারেন্ডের সমন্বয়ে গঠিত হয়, যা কোনও নির্দিষ্ট মান বা ফলাফল উৎপন্ন করে।
এক্সপ্রেশন এর বৈশিষ্ট্য:
- এক্সপ্রেশন কোন মান উৎপন্ন করে।
- এটি একটি গাণিতিক, লজিকাল বা স্ট্রিং অপারেশন হতে পারে যা কোন ভ্যালু প্রদান করে।
- এক্সপ্রেশন সাধারণত একটি স্টেটমেন্টের অংশ হিসেবে কাজ করে, যেমন একটি অ্যাসাইনমেন্ট স্টেটমেন্ট বা শর্ত পরীক্ষা স্টেটমেন্টের মধ্যে।
উদাহরণ:
x = 5 + 10 ! এটি একটি অ্যাসাইনমেন্ট স্টেটমেন্ট, যেখানে ৫ + ১০ এক্সপ্রেশন
y = x * 2 ! এটি একটি আরেকটি এক্সপ্রেশনএখানে:
5 + 10একটি গাণিতিক এক্সপ্রেশন যা ১৫ মান প্রদান করবে।x * 2একটি গাণিতিক এক্সপ্রেশন যাxএর মানের সাথে ২ গুণ করবে।
স্টেটমেন্ট এবং এক্সপ্রেশন এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | স্টেটমেন্ট | এক্সপ্রেশন |
|---|---|---|
| কাজ | এটি একটি নির্দিষ্ট কাজ বা ক্রিয়া সম্পন্ন করে। | এটি একটি মান প্রদান করে। |
| উদাহরণ | x = 5, if (x > 0), print *, "Hello" | x + y, a * b, x > 5 |
| ভূমিকা | প্রোগ্রামের ফ্লো নিয়ন্ত্রণ করে। | মান বা ফলাফল হিসেব প্রদান করে। |
| নির্দিষ্ট কাজ | স্টেটমেন্ট একটি কার্যকলাপ বা কাজ নির্দেশ করে। | এক্সপ্রেশন একটি গাণিতিক বা লজিকাল ফলাফল প্রদান করে। |
স্টেটমেন্ট এবং এক্সপ্রেশন এর ব্যবহার
প্রোগ্রামিংয়ে, স্টেটমেন্ট এবং এক্সপ্রেশন সাধারণত একসাথে ব্যবহৃত হয়। এক্সপ্রেশন একটি মান প্রদান করে যা পরে স্টেটমেন্টে ব্যবহার হয়। উদাহরণস্বরূপ:
if (x > 0) then
print *, "Positive number"
else
print *, "Non-positive number"
end ifএখানে:
x > 0হলো একটি এক্সপ্রেশন যাxএর মানের সাথে তুলনা করে, এবং এটি একটি লজিক্যাল মান প্রদান করে।if (x > 0)হলো একটি স্টেটমেন্ট যা শর্তের উপর ভিত্তি করে একটি কাজ (প্রিন্ট) করবে।
এছাড়াও, এক্সপ্রেশনগুলিকে স্টেটমেন্টগুলির মধ্যে যেমন অ্যাসাইনমেন্ট, শর্ত পরীক্ষা, এবং লুপে ব্যবহৃত হতে দেখা যায়।
উপসংহার
- স্টেটমেন্ট প্রোগ্রামটির কার্যকলাপ নির্দেশ করে এবং এক্সপ্রেশন মান প্রদান করে।
- প্রোগ্রামে একটি স্টেটমেন্টের মধ্যে এক্সপ্রেশন থাকতে পারে, এবং এক্সপ্রেশন সাধারণত মানের জন্য একটি হিসাব বা গণনা সম্পন্ন করে, যা পরে স্টেটমেন্টে ব্যবহৃত হয়।
ফোরট্রান প্রোগ্রামে কমেন্টিং এবং ফাইল স্ট্রাকচার
ফোরট্রানে প্রোগ্রাম লেখা এবং সেটি সংগঠিত করার সময় কমেন্টিং এবং সঠিক ফাইল স্ট্রাকচার অত্যন্ত গুরুত্বপূর্ণ। এগুলো কোডের পাঠযোগ্যতা এবং রক্ষণাবেক্ষণ সহজ করে তোলে। নিচে ফোরট্রানে কমেন্টিং এবং ফাইল স্ট্রাকচারের ব্যাখ্যা দেওয়া হলো।
১. ফোরট্রান কমেন্টিং (Commenting in Fortran)
ফোরট্রান প্রোগ্রামে কমেন্ট ব্যবহার করা হয় কোডের মধ্যে কোনো ব্যাখ্যা বা মন্তব্য যোগ করার জন্য যা প্রোগ্রাম চলাকালীন সময়ে উপেক্ষা করা হয়। কমেন্ট ব্যবহারের মাধ্যমে কোডের উদ্দেশ্য বা কাজ সহজে বোঝানো যায়।
কমেন্ট লিখার নিয়ম:
একক লাইন কমেন্ট:
- ফোরট্রানে একক লাইন কমেন্ট লেখার জন্য আপনি
!চিহ্ন ব্যবহার করবেন। যে লাইনেই!থাকবে, সেটি কমেন্ট হিসেবে গণ্য হবে।
! এটি একটি একক লাইন কমেন্ট program hello ! প্রোগ্রাম শুরু হচ্ছে print *, 'Hello, World!' ! এখানে প্রিন্ট করা হচ্ছে end program hello- উপরের কোডে,
!চিহ্নের পরের অংশগুলি কমেন্ট হিসেবে গণ্য হবে এবং এগুলি কোডের কার্যকারিতার ওপর কোনো প্রভাব ফেলবে না।
- ফোরট্রানে একক লাইন কমেন্ট লেখার জন্য আপনি
বহু লাইন কমেন্ট:
- ফোরট্রানে বহু লাইন কমেন্ট করার জন্য একটি সাধারণ পদ্ধতি হলো প্রতিটি লাইনে
!চিহ্ন ব্যবহার করা। ফোরট্রানে অন্তত কোনো স্বীকৃত ব্লক কমেন্টিং পদ্ধতি নেই, তবে আপনি একাধিক!চিহ্ন দিয়ে একাধিক লাইনকে কমেন্ট করতে পারেন।
! প্রথম লাইন ! দ্বিতীয় লাইন ! তৃতীয় লাইন- ফোরট্রানে বহু লাইন কমেন্ট করার জন্য একটি সাধারণ পদ্ধতি হলো প্রতিটি লাইনে
কমেন্টের ব্যবহার:
- কোডের উদ্দেশ্য ব্যাখ্যা করা: কোডটি কী কাজ করছে, কেন এটি করা হয়েছে, এবং অন্যান্য সংশ্লিষ্ট তথ্য প্রদান করা।
- দুর্বল অংশ নির্দেশ করা: কোন অংশে সম্ভাব্য বাগ বা উন্নতি করা দরকার তা মন্তব্যে উল্লেখ করা।
২. ফোরট্রান ফাইল স্ট্রাকচার (Fortran File Structure)
ফোরট্রান প্রোগ্রামের ফাইল স্ট্রাকচার একটি সঠিকভাবে সংগঠিত কোড তৈরির জন্য গুরুত্বপূর্ণ। এটি কোডের গঠন এবং কাজের ধারাবাহিকতা নিশ্চিত করে।
a. প্রোগ্রাম এবং সাবরুটিনের গঠন
ফোরট্রানে সাধারণত তিন ধরনের অংশ থাকে:
- প্রোগ্রাম অংশ: যেখানে কোডের মূল কার্যকলাপ লেখা হয়।
- সাবরুটিন এবং ফাংশন: যেখানে কোডের বিশেষ অংশগুলি মডিউল আকারে রাখা হয়।
- ইম্পোর্ট বা মডিউল অংশ: যেখানে বাইরের লাইব্রেরি বা মডিউল ইম্পোর্ট করা হয় (যেমন LAPACK, BLAS ইত্যাদি)।
উদাহরণ: ফোরট্রান ফাইল স্ট্রাকচার
! ফোরট্রান প্রোগ্রাম ফাইল স্ট্রাকচার উদাহরণ
program hello
! মূল প্রোগ্রাম যেখানে কোডের কার্যক্রম শুরু হয়
print *, 'Hello, World!'
call subroutine_example
end program hello
! সাবরুটিন ফাংশন
subroutine subroutine_example
print *, 'This is a subroutine.'
end subroutine subroutine_exampleb. ফাইল স্ট্রাকচারের নির্দিষ্ট নিয়ম
- প্রথম লাইন: প্রোগ্রামের নাম (যেমন
program hello)। - প্রোগ্রামের কোড: প্রোগ্রাম অংশের মধ্যে কোডটি লিখুন। এটি সাধারণত
printবা অন্যান্য স্টেটমেন্ট দ্বারা শুরু হয়। - ফাংশন বা সাবরুটিন: যখনই প্রয়োজন, সাবরুটিন বা ফাংশন তৈরি করুন এবং সেগুলিকে ডাকা যেতে পারে। একটি সাবরুটিন
subroutineকিওয়ার্ড দিয়ে শুরু হয় এবংend subroutineদিয়ে শেষ হয়। - এন্ড প্রোগ্রাম: প্রোগ্রামের শেষের দিকে
end program <program_name>লিখে প্রোগ্রামটি শেষ করুন।
৩. ফোরট্রান ফাইলের নামকরণ এবং সংরক্ষণ
ফোরট্রান প্রোগ্রাম সাধারণত .f90, .for, বা .f এক্সটেনশন সহ সংরক্ষণ করা হয়। .f90 এক্সটেনশন ফোরট্রান 90 এবং তার পরবর্তী সংস্করণগুলির জন্য ব্যবহৃত হয়।
- ফাইল নামকরণ: কোডের উদ্দেশ্য বা প্রকৃতি অনুসারে ফাইলের নাম রাখতে পারেন। যেমন
hello.f90,matrix_multiplication.f90ইত্যাদি।
৪. ফোল্ডার এবং ফাইল সংগঠন
বড় প্রকল্পগুলির জন্য, কোডের ফাইলগুলিকে যথাযথভাবে সংগঠিত করতে হবে। উদাহরণস্বরূপ, প্রকল্পে আলাদা ফোল্ডারে সাবরুটিন বা মডিউল রাখা যেতে পারে। এতে কোড রক্ষণাবেক্ষণ সহজ হয়।
উদাহরণ:
/Project_Folder
/src
hello.f90
subroutine_example.f90
/lib
matrix_operations.f90
/bin
hello.exe- /src: সোর্স কোড ফাইল সংরক্ষণের জন্য।
- /lib: লাইব্রেরি ফাইল বা মডিউল সংরক্ষণের জন্য।
- /bin: কম্পাইলড এক্সিকিউটেবল ফাইল।
উপসংহার
ফোরট্রান প্রোগ্রামে কমেন্টিং এবং সঠিক ফাইল স্ট্রাকচার অত্যন্ত গুরুত্বপূর্ণ। কমেন্টিং কোডের উদ্দেশ্য এবং কার্যকারিতা বুঝতে সহায়ক হয়, এবং সঠিক ফাইল স্ট্রাকচার কোডের রক্ষণাবেক্ষণ সহজ করে তোলে। বড় প্রজেক্টে ফাইল গঠন এবং সঠিক ফোল্ডারিং পদ্ধতি ব্যবহার করা উচিত, যাতে কোডের কার্যকারিতা এবং মডুলারিটি বজায় থাকে।
ফোরট্রান এর Case Insensitivity এবং Free/Fixed Format Syntax
ফোরট্রান প্রোগ্রামিং ভাষা কিছু বিশেষ বৈশিষ্ট্য প্রদান করে, যার মধ্যে case insensitivity এবং free/ fixed format syntax অন্যতম। নিচে এই বৈশিষ্ট্যগুলির বিস্তারিত আলোচনা করা হলো:
১. ফোরট্রান এর Case Insensitivity
ফোরট্রান একটি case-insensitive ভাষা, এর মানে হল যে আপনি যখন কোড লিখবেন, তখন বড় হাতের (uppercase) বা ছোট হাতের (lowercase) অক্ষরের মধ্যে পার্থক্য করা হয় না। আপনি যেকোনো অক্ষরের ক্ষেত্রে ব্যবহার করতে পারেন, এবং ফোরট্রান কম্পাইলার তা সঠিকভাবে গ্রহণ করবে।
উদাহরণ:
PROGRAM HELLO
PRINT *, 'Hello, World!'
END PROGRAM helloউপরের কোডে, HELLO এবং hello একে অপরের সমান। উভয় ক্ষেত্রেই একই প্রোগ্রামটি কাজ করবে।
ফোরট্রান সব বড় হাতের এবং ছোট হাতের অক্ষরকে সমানভাবে চিহ্নিত করে, এবং এটি কোডটি কোথায় বা কীভাবে লেখা হয়েছে, সে সম্পর্কে কোনো পার্থক্য সৃষ্টি করে না।
২. ফোরট্রান এর Free Format Syntax
Free format ফোরট্রান কোড লেখার একটি আধুনিক পদ্ধতি। এই ফর্ম্যাটে কোড লেখার সময়, কোন নির্দিষ্ট কলাম বা স্থান রাখার প্রয়োজন হয় না, এবং আপনি কোডটি যে কোনো স্থানে এবং যেকোনো সংখ্যা বা শব্দের মধ্যে আলাদা করতে পারেন। এটি প্রোগ্রামটি আরও পাঠযোগ্য এবং সহজ করে তোলে।
উদাহরণ:
program hello_world
print *, "Hello, World!"
end program hello_worldএখানে আপনি কোডটির প্রতিটি লাইনে কোনও নির্দিষ্ট সেকশন বা ইনডেন্টেশন ব্যবহার করতে বাধ্য নন। print *, "Hello, World!" এবং program hello_world যেকোনো স্থানে লেখা যেতে পারে, এবং ফোরট্রান একে ঠিকভাবে সনাক্ত করবে।
৩. ফোরট্রান এর Fixed Format Syntax
Fixed format ফোরট্রান প্রোগ্রাম লেখার পুরনো পদ্ধতি। এই ফর্ম্যাটে কোড লেখার সময়, আপনাকে নির্দিষ্ট কলামে লিখতে হয় এবং সেগুলির জন্য একটি নির্দিষ্ট বিধি মেনে চলতে হয়। এই ফর্ম্যাটে কোড লেখার জন্য পূর্বে ৭০টি কলাম ব্যবহার করা হত, যেখানে কিছু কলাম নির্দিষ্ট কাজের জন্য সংরক্ষিত ছিল।
উদাহরণ:
PROGRAM HELLO_WORLD
PRINT *, 'Hello, World!'
END PROGRAM HELLO_WORLDএখানে, প্রথম কলামে PROGRAM এবং PRINT লাইন শুরু হতে হবে এবং বাকি অংশ অবশ্যই নির্দিষ্ট কলাম অনুসারে হতে হবে।
- প্রথম 6 কলাম সাধারণত মন্তব্য বা প্রোগ্রাম নির্দেশিকা (নাম এবং টাইপ) জন্য ব্যবহৃত হত।
- 7-72 কলাম কোড লেখার জন্য।
- 73-80 কলাম অতিরিক্ত তথ্যের জন্য ব্যবহৃত হত (যেমন, লাইন নম্বর)।
৪. Free Format এবং Fixed Format এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | Fixed Format | Free Format |
|---|---|---|
| স্টাইল | নির্দিষ্ট কলাম অনুসরণ করা হয় | কোড যেকোনো জায়গায় লেখা যেতে পারে |
| এনকোডিং | প্রতিটি লাইনের নির্দিষ্ট কলাম পজিশন | কোনো নির্দিষ্ট পজিশন বাধ্যতামূলক নয় |
| প্রচলিত ব্যবহার | পুরানো ফোরট্রান সংস্করণে ব্যবহৃত | আধুনিক ফোরট্রান সংস্করণে ব্যবহৃত |
| পাঠযোগ্যতা | কিছুটা কঠিন | সহজ এবং পড়তে সুবিধাজনক |
৫. ফোরট্রান কম্পাইলার এবং ফরম্যাটের নির্বাচন
এটি মনে রাখা গুরুত্বপূর্ণ যে, Free Format এবং Fixed Format ফর্ম্যাটে কোড লেখার ক্ষেত্রে আপনার কম্পাইলার এবং ফোরট্রান সংস্করণ নির্ভর করবে। আধুনিক ফোরট্রান কম্পাইলার যেমন gfortran সাধারণত free format সমর্থন করে। তবে, পুরনো ফোরট্রান সংস্করণগুলি fixed format-এ কোডের জন্য ব্যবহৃত হয়।
ফোরট্রান 90 এবং তার পরবর্তী সংস্করণগুলো মূলত free format সমর্থন করে, যা আধুনিক প্রোগ্রামিং স্টাইল অনুসরণ করে।
উপসংহার
ফোরট্রান একটি case-insensitive ভাষা যা প্রোগ্রাম লেখার সময় বড় হাতের এবং ছোট হাতের অক্ষরকে সমানভাবে গ্রহণ করে। এর দুটি প্রধান syntax style রয়েছে: free format এবং fixed format। Free format বর্তমানে আধুনিক ফোরট্রান কোড লেখার পদ্ধতি, যেখানে কোডের স্থানে কোনো নির্দিষ্ট সীমাবদ্ধতা নেই, এবং fixed format পুরনো ফোরট্রান সংস্করণে ব্যবহৃত হয় যেখানে নির্দিষ্ট কলামে কোড লেখার প্রয়োজন হয়।
Read more