লোড হচ্ছে…

অনলাইন Pascal কম্পাইলার ও প্লেগ্রাউন্ড

ব্রাউজার-ভিত্তিক কম্পাইলার ও প্লেগ্রাউন্ড, Pascal, Progsity IDE।

Pascal সম্পর্কে

Pascal বানানো হয়েছিল programming শেখানোর জন্য, আর সেটা লিখলেই টের পাওয়া যায়। Program উপর থেকে নিচে পড়া যায়, প্রতিটা variable ব্যবহারের আগে declare করতে হয়, আর প্রতিটা block এর শুরু শেষ begin আর end লিখে বোঝানো হয়। অনেক স্কুলের syllabus আর olympiad এর পুরনো problem এ এখনও Pascal আছে। Desktop software এ Delphi একে টিকিয়ে রেখেছে।

এই playground এ Free Pascal দিয়ে Delphi mode এ compile হয়, তারপর native binary টা sandbox এ চলে। এই mode এ Integer 32 bit এর, বেশি লাগলে Int64 আছে, আর string লম্বা হতে পারে, 255 character এর সীমা নেই। SysUtils, Math, StrUtils এর মতো run-time library র unit গুলো ব্যবহার করা যায়।

Compile হতে এক সেকেন্ডেরও কম লাগে। শেখার সময় একটা line বদলে আবার run করে দেখতে তাই কোনো ঝামেলা নেই।

কীভাবে ব্যবহার করবেন

  1. শুরুতে program Name; তারপর var অংশ, তারপর begin ... end. লিখুন। শেষের dot টা যেন বাদ না পড়ে।
  2. Input টা stdin panel এ লিখুন, Read বা ReadLn দিয়ে পড়ুন।
  3. Run চাপুন। Compiler error এ bracket এর ভেতরে line আর column থাকে, যেমন (7,12)।

প্রশ্নোত্তর

এটা কোন Pascal compiler?›

Free Pascal 3.2, Delphi mode এ, optimisation চালু রেখে। Turbo Pascal বা Delphi র console এর জন্য লেখা program সাধারণত কোনো বদল ছাড়াই compile হয়, crt এর মতো কিছু unit বাদে।

Integer কত বড়?›

এখানে 32 bit, মোটামুটি দুইশো কোটি পর্যন্ত। যোগফল বা গুণফল এর চেয়ে বড় হতে পারলে Int64 নিন।

crt unit বা graphics ব্যবহার করা যাবে?›

এগুলো বাদ দিন। ওরা আসল terminal চায়, আর এখানে program শুধু standard input পড়ে আর standard output এ লেখে। ClrScr এর জন্য কোনো screen নেই, ReadKey এর জন্য কোনো key ও নেই।

+= এর মতো C ধাঁচের operator চলে?›

চলে। সাধারণ := এর পাশাপাশি +=, -=, *= আর /= ও নেওয়ার মতো করে compiler ঠিক করা আছে।

Program save করা যায়?›

যায়, sign in করার পর। Run করতে account লাগে না।

কোড উদাহরণ

উপরের এডিটরে উদাহরণ লোড করতে “এটি চেষ্টা করুন” ট্যাপ করুন।

  • for loop

    program Squares;
    var
      i: Integer;
    begin
      for i := 1 to 5 do
        WriteLn(i, ' squared is ', i * i);
    end.
  • দুটো সংখ্যা পড়া

    program Sum;
    var
      a, b: Int64;
    begin
      ReadLn(a, b);
      WriteLn(a + b);
    end.
  • Array র সবচেয়ে বড় মান

    program Largest;
    const
      Nums: array[1..6] of Integer = (3, 1, 4, 1, 5, 9);
    var
      i, best: Integer;
    begin
      best := Nums[1];
      for i := 2 to 6 do
        if Nums[i] > best then
          best := Nums[i];
      WriteLn('Largest: ', best);
    end.
  • Recursive function

    program Factorial;
    
    function Fact(n: Integer): Int64;
    begin
      if n <= 1 then
        Fact := 1
      else
        Fact := n * Fact(n - 1);
    end;
    
    begin
      WriteLn(Fact(20));
    end.