چگونگي نامگذاري شناسه ها يا متغير ها

شناسه ها در پاسکال بايد با يک حرف يا يک خط زير ( _ ) شروع
بشن . و نبايد براي نامگذاري شناسه اون رو با عدد شروع کرد
همچنین نباید برای نامگذاری یک شناسه یا متغیر از کاراکتر
فاصله استفاده کرد

نکته
: بعضي از کلمات براي پاسکال معني خاصي دارن
که نبايد از اونا براي نامگذاري متغير يا شناسه استفاده بشه
اين کلمات رو کلمات ذخيره شده در پاسکال مي نامند
تمامي دستورات پاسکال و توابع از اين قبيل هستند
(Read - Begin - End - Write , ... )

مثال
: چند شناسه قابل قبول در پاسکال

Test - Ali - Ab3f - ok_2005 - _reza

چند شناسه غير قابل قبول در پاسکال

45df -d sds - read - write

2. تعريف يک شناسه

شکل کلي :

Var
نوع داده : نام متغير يا متغيرها;

مثال :

Var
Test:integer;

3. انواع داده هاي موجود در پاسکال

الف : داده هاي عددي که خود دو نوع است

1.
 
داده از نوع صحيح
2.داده از نوع اعشاري
 


انواع داده نوع صحيح :

1. Short int ( 1 byte فضا اشغال ميکند )
2. Byte ( 1 byte فضا اشغال مي کند )
3. Integer ( 2 byte فضا اشغال مي کند )
4. Word ( 2 byte فضا اشغال مي کند )
5. Longint ( 4 byte فضا اشغال مي کند )

داده اعشاري :

1. Real ( 6 byte فضا اشغال ميکند )

ب: Boolean

اين نوع داده يکي از دو مقدار
True يا False
را در خود نگه ميدارد

ج : String

اين نوع داده داده کاراکتري است و مي توان
تا 255 کاراکتر در ان قرار داد



مثال :
Var
a,b:integer;

str:string

c:Real;

f,k,h:word;

3. Const ( ثابت ها )

ثابت ها مقاديري هستندکه در طول اجراي برنامه
به هيچ وجه تغيير نمي کنند و ثابت هستند

شکل کلي تعريف يک ثابت

Const
شناسه=مقدار;

مثال :

Const
Test=42.35;

نکته :
( ; )
پس از پايان هر دستور بايد علامت
سيمي کالن را قرار بدين . در غير اين صورت با پيغام خطاي
Error 85 : ";" expected
مواجه ميشيد

ثابت ها يکي از کم کاربرد ترين شناسه ها در
پاسکال هستند و معمولا در برنامه هايي که داده هاي
ان مشخصند و تغيير نمي کنند مي تونيم از ثابت ها
استفاده کنيم

4 . علايم () - { } - [ ]

اين علايم نيز معني خاصي براي پاسکال دارند
که به ترتيب در مورد هر يک توضيح مي دم

(
) : مي تونيد عبارتي رو توش قرار بديد

{ }
: مي تونيد داخلش توضيحي بنويسيد . نوشتن
توضيح هيچ تا ثيري در برنامه شما نداره و صرفا
پاسکال اون رو يک توضيح فرض ميکنه

[ ] :
مي تونيد شروع يا پايان انديس ارايه اي رو
درش قرار بدين در مورد ارايه بعدا صحبت ميکنيم

ساختار يک برنامه پاسکال
هر برنامه پاسکال از سه بخش تشکيل شده

1 . Heading ( عنوان )

2 . Declarations ( تعاريف )

3 . Block ( بلاک يا تنه اصلي )


شروع شده و به Begin نکته :
تنه اصلي با
ختم مي شود End.

حالا يک مثال ساده براي اين که خوب جا بيفته
( در مورد دستورات به کار رفته در برنامه
بعدا توضيح مي دم اين برنامه صرفا براي
اشنايي با ساختار يک برنامه پاسکاله )

مثال 1
. برنامه اي بنويسيد تا نام شما را از ورودي
گرفته سپس ان را نمايش دهد

Program Test; ( عنوان که ميتوانيد ان را ننويسيد )
uses crt;
Var ( بخش تعاريف )
Name:string;
a:integer;
Begin ( تنه اصلي )
clrscr;
write('Please Enter Your Name:');
read(name);
writeln('Salam',Name);
read(a)
end;


دستورات پاسکال

1.Read :

شکل کلي:

read(متغير )

توضيح : اين دستور داده اي را از طرف کاربر

دريافت مي کند . اين داده ممکن است يک عدد يا يک

عبارت( رشته ) باشد.


2. readln :

را انجام Read اين دستور کاري مشابه دستور

ميدهد با اين تفاوت که بعد از دريافت داده مکان نما

به يک خط پايين تر منتقل مي شود


نکته :

اگر تعداد داده هاي داده شده توسط read در دستور

کاربر بيشتر از متغير ها باشد داده هاي اضافي حذف نميشود


مثال :

مثلا اگر :

read(a,b,c);

يعني ما سه متغير داشته باشيم و کاربر هم اعداد :

8و 7 و 3 و 12 و 4

را وارد کند انگاه اعداد 7 و 8 اعداد اضافي هستند

که حذف نميشن و ميشه در ادامه برنامه از اونا استفاده

کرد


3 . write

از اين دستور براي نمايش اطلاعات استفاده مي شود
و شکل کلي ان به صورت زير است :

write(' عبارت ' );

يا

write(متغير );

يا ترکيبي از هردو .

تذکر : هر چيزي را که بين دو علامت ' ' بنويسيم به عنوان

يک رشته يا يک عبارت محسوب مي شود حتي اگر چيزي که

مي نويسيم يک دستور پاسکال باشد

نکته : براي انجام عمليات رياضي در پاسکال از

( + , - , * , / , mod , div ,abs , sqr , ... )

استفاده مي کنيم و اما کاربردشون :

از بالا به پايين اولويت ها کم ميشود

منظور از اولويت اينه که در انجام محاسبات کدام

علامت مقدم تره مثلا قرينه سازي بالاترين اولويت

و جمع و تفريق کمترين اولويت رو دارن

1. + , - :( قرينه سازي ( يا همون مثبت و منفي

2. * , /: ضرب و تقسيم اعشاري

3. div , mod :

div : تقسيم صحيح

mod : باقيمانده صحيح

4. + , - : جمع وتفريق

نکته : عملگرهايي که داراي اولويت يکساني هستند

اگر در عبارتي به کار برن ابتدا عملگري که در سمت

چپ قرار ميگيره داراي بالاترين اولويته

همچنين براي عوض کردن اولويتها از علامت ( ) استفاده

ميکنيم به طوري که هر عملگري که بين دو علامت ( ) قرار

بگيرد داراي بالاترين اولويت است

لازم به ذکره که توابع در پاسکال همواره اولويت

بالاتري نسبت به عملگرها دارن در مورد توابع بعد

بحث مي کنيم
يک مثال :

برنامه اي بنويسيد تا از کاربر 2 عدد دريافت

کند سپس حاصلجمع و حاصلضرب و حاصل تقسيم

و حاصل تفريق اين دو عدد را در خروجي نمايش دهد


جواب :

program math;

var

a,b:integer;

begin

write('Please Enter 2 Number :');

Read(a,b);

write('a + b =' , a+b);

write('a - b =' , a*b);

write ('a * b =' a*b);

write('a / b =' a/b);

readln(a)

end;

در مثال بالا تعريف a,b چند سوال : اگر متغيرهاي

نميشد اون وقت برنامه چه پيغامي رو صادر ميکرد ؟

; علامت end; چرا در دستور قبل از

سيمي کالن نگرفت ؟

اگه متغیرها تعریف نشده باشند پیغام خطای

Error 3: Unknown identifier

نمایش داده میشود یعنی " متغیر ناشناخته " اما سوال بعدی

اگر در دستور یکی مانده به اخر علامت سیمی کالن قرار نگیرد

پاسکال خطایی نخواهد گرفت

يونيت ها :
unit :

يونيتها همان کتابخانه ها در پاسکال هستند

در پاسکال يونيت هاي زيادي وجود دارد از جمله :

unit graph , unit crt , strings , win dos

, win crt , ...

در ادمه با بعضي يونيت ها اشنا ميشيم

unit crt : اين يونيت شامل دستوراتي نظير

gotoxy , textcolor , textbackground , ...

مي باشد . براي استفاده از يونيتها در برنامه از کلمه

استفاده مي کنيم مثلا براي استفاده uses ذخيره شده

معمولا در ابتداي برنامه crt از يونيت

را مينويسند uses crt; عبارت

 1.gotoxy: از اين دستور براي انتقال مکان نما در

سطر يا سطون دلخواه در صفحه نمايش استفاده ميشود

لازم به ذکره که صفحه نمايش يا همون مانيتور

داراي 80 ستون و 25 سطر است که در دستور بالا

x=ستون

y=سطر

مي باشد


2.textcolor:

از اين دستور براي تايين رنگ قلم استفاده مي شود

شکل کلي :

text color ( نام رنگ يا شماره ان )


شماره رنگ
           نام ثابت             نام رنگ

سياه
              Black                 
0

ابي
                 Blue                
1

سبز
               Green                
2

فيروزه اي
          Cyan               
 3

قرمز
                red                   
4

بنفش
                  magenta        
 5

قهوه اي
              Brown            
 6

خاکستري روشن
   lightgray           
 7

خاکستري تيره
     Darkgray         
8

ابي روشن
     lightblue              
9

سبز روشن
      lightgreen        
10

فيروزه اي روشن
     lightcyan     
11

  قرمز روشن            lightred      
 12

بنفش روشن
   lightmagenta   
13

زرد
                   Yellow          
14

سفيد
                        white       
15


حالايک سوال براي شما :
1.

برنامه اي بنويسيد تا کاراکتر ستاره را در چهار گوشه

مانيتور با رنگهاي متفاوت نمايش دهد





 

  
نویسنده : نظیره حیدرزاده ; ساعت ۱:٠٤ ‎ب.ظ روز پنجشنبه ٢٦ آبان ،۱۳۸٤
تگ ها :

 

من خواسته بودید که در مورد یونیت های پاسکال توضیح بدم  به روی چشم

خوب ابتدا یک تعریف کلی از یونیت برایتان می گم

یونیت چیست و چگونه می توان از آن استفاده کرد؟

یونیت مجموعه ای از تعاریف شامل نوع داده ها ثابت ها متغییرها و زیربرنامه هاست که به طور مستقل کامپایل می شود

به عبارت دیگر یونیت مجموعه ای از دستورالعمل ها و دستورالعمل هاست که به طور مستقل قادر است کامپایل شود اما هیچ وقت به .تنهایی قادر به اجرا شدن نیست و حتما باید در یک برنامه به کار رود

توجه


. می شودTpu دارای پسوند EXE وقتی که یوینت را کامپایل می کنید به جای پسوند  


:به طور کلی در پاسکال دو نوع یونیت وجود دارد

1-یونیت هایی که در خود پاسکال وجود دارند و کاربر در مواقع لزوم می تواند از آنها استفاده کند مانند:

قرار داردTpو ... .این یونیت ها در ساب دایرکتوری یونیت از دایرکتوری  crt,dos,graph یونیت های

tp=>>units

2-یونیت هایی که توسط برنامه نویس تعریف می شوند.که ساختار این نوع یونیت ها شبیه به ساختار کلی یک  برنامه است با این تفاوت که با کلمه ذخیره شده یونیت شروع می شود و با  اند. به اتمام می رسد شکل کلی آن به صورت زیر است

Unit         نام یونیت ;

InterFace

-----------------

-----------------                         تعارف

-----------------

implementation

-----------------

-----------------                        عنوان همراه با بدنه اصلی توابع وزیر برنامه ها تعارف

-----------------

End.

نکته مهم

سرس برنامه یونیت را باید با نام خود یونیت ذخیره کنیم زیرا هنگامی که برنامه اصلی را کامپایل می کنیم فایل تی پی یو بر اساس آن نامیده می شود که اگر همنام با یونیت نباشد به وسیله ان فایل تی پی یو نمی توان به یونیت مورد نظر دسترسی پیدا کرد

تبدیل شود   destinatio Distرو فعال کنید تا به گزینه  destination برای ساختن فایل  تی پی یو حتما باید از منوی کامپایل گزینه   

اگه باز مشکلی داشتید در قسمت نظرات بنویسید

 

  
نویسنده : نظیره حیدرزاده ; ساعت ۱٢:٥۳ ‎ب.ظ روز پنجشنبه ٢٦ آبان ،۱۳۸٤
تگ ها :

 

نکته مهم

سرس برنامه یونیت را باید با نام خود یونیت ذخیره کنیم زیرا هنگامی که برنامه اصلی را کامپایل می کنیم فایل تی پی یو بر اساس آن نامیده می شود که اگر همنام با یونیت نباشد به وسیله ان فایل تی پی یو نمی توان به یونیت مورد نظر دسترسی پیدا کرد

تبدیل شود   destinatio Distرو فعال کنید تا به گزینه  destination برای ساختن فایل  تی پی یو حتما باید از منوی کامپایل گزینه   

اگه باز مشکلی داشتید در قسمت نظرات بنویسید

  
نویسنده : نظیره حیدرزاده ; ساعت ۱٢:٥٢ ‎ب.ظ روز پنجشنبه ٢٦ آبان ،۱۳۸٤
تگ ها :

 

سلام در مورد مشکل  devision by zero  براتون بگم

اگه کامپيوتر شما مدلش بالا باشه اين خطا نمايش داده می شه

برای رفع اين مشکل بايد فايل turbo.tpl در دايرکتوری bin خودتون کپی کنيد اگر اين فايل رو نداريد  به من ميل بزنيد براتون می فرستم

  
نویسنده : نظیره حیدرزاده ; ساعت ۱٢:٥٢ ‎ب.ظ روز پنجشنبه ٢٦ آبان ،۱۳۸٤
تگ ها :

 

خوب من ابتدا درباره اجزای
یک برنامه در پاسکال برایتان میگوم

                
برنامه عبارت است از تعدادی دستورالعمل به یک زبان مشخص که هدف خاصی را دنبال می
کنند در هر برنامه .تعدادی :  حرف,علامت
وکلمه معنی دار وجود دارد که می توان آنها را به چها دسته زیر تقسیم کرد


 


1-کلمات ذخیره
شده


 


2-شناسه ها


 


3-ثابتها


 


4-علائم


 

نحوه چیدن این اجزا در
کنار هم را مقررات یا نحو
SYNTAX
زبان نامیده می شود وباید در برنامه
نویسی رعایت شود


 

حال ما به تعریف از
علائم می کنیم:


 


1-کلمات ذخیره شده:
کلماتی هستند که منحصرا در اختیار زبان برنامه نویسی
قرار دارند و به منظور خاصی در نظر گرفته شده اند مانند:FOR,BEGIN,END,PROGRAM
که از این کلمات نمی توان برای منظورهای دیگر استفاده کرد .


 


2-شناسه ها:
شناسه ها به دو دسته شناسه های استاندارد وشناسه های غیر
استاندارد تقسیم می شوند.شناسه های استاندارد کلماتی هستند که از سوی توربو پاسکال
برای منظورهای خاص تعریف شده اند.مانند:Writeln,Readln,Strln;
اماشناسه های غیر استاندار کلماتی هستند که از برنامه نویس تعریف می شوند. مثل
sum,fact,.....;








توجه


 


 

.حروف کوچک
و بزرگ در کلمات کلیدی وشناسه ها یکسان تلقی می شود


 

 .اشاره
دارندBEGIN هر دو به کلمه ذخیره شده  Begin,BEGinیکسان
اند ویا کلمات  SUM,sumیعنی دو شناسه


 


3-تابتها
:مقادیری هستند که در طول اجرای برنامه تغییر
نمی کنند.ثابتها به دو دسته عددی ورشته ای تقسیم می شوند.


 

هر آنچه
بین علامت گیومه قرار داشته باشد تابت رشته ای تلقی می شود


 


4-علائم:
علامت از یک یا چند کراکتر تشکیل شده است که
معنی بخصوصی در یک زبان دارد مثلا علامت *

به معنی عملگر ضرب و کاراکتر$
رای مشخص کردن اعداد در مبنای 16 به کار می رود
.


 

خوب این مقدمه ای بود که
برایتان گفیم در درس های بعد شما را با دیگر دستورات وبرنامه ها آشنا می کنیم هر
گونه نظر ویا سوال را به پست الکترونیکی من ارسال کنید تا در اسرع وقت به آن پاسخ
دهم.


 


GOOD LUCK


 

 



 

  
نویسنده : نظیره حیدرزاده ; ساعت ۱٢:٥۱ ‎ب.ظ روز پنجشنبه ٢٦ آبان ،۱۳۸٤
تگ ها :

 

برنامه نويسی پاسکال

اين زبان برنامه نويسی توسط نيکلاس ويرث در دانشگاه زوريخ طراحی شد.

اين زبان جزئ زبانهای سطح بالا به حساب می آيد.

قالب دستورات اين زبان نزديک به زبان محاورهای می باشد.

تعريف متغيرها توسط همان تعاريف داس می باشد.

متغيرها

فضايی از حافظه که برای ذخيره اطلاعات مورد استفاده قرار ميگيرد

ثابت

فضايی از حافظه که دارای مقدار ثابتی اشت و شما نمی توانيد در طول برنامه مقدار آن را تغيير دهيد

غالب برنامه پاسکال

program {name program}          (نام برنامه )

const  تعريف ثابت

var                تعريف متغير

begin        شروع برنامه

کدهای برنامه

end.   پايان برنامه

 

  
نویسنده : نظیره حیدرزاده ; ساعت ۱٢:٤٩ ‎ب.ظ روز پنجشنبه ٢٦ آبان ،۱۳۸٤
تگ ها :

 

سلام

امروز شروع به آموزش برنامه نويسی پاسکال  ميکنم

شما برای پيشرفت در برنامه نويسی بايد يک زبان پايه را ياد بگيريد .

من چون بيشتر با برنامه نويسی پاسکال آموزش ميدهند با اين زبان برنامه نويسی شروع ميکنم. شما دوستان عزيز ممکن است با اين زبان آشنايی داشته باشيد . اگر تمايل دلريد با زبانهای ديگری کار کنيد ميتوانيد با من در تماس باشيد تا برنامه نويسی در زبانهای ديگر را نيز آموزش دهم.

از نظرات وپيشنهادات شما خوشحال ميشوم

  
نویسنده : نظیره حیدرزاده ; ساعت ۱٢:٤۸ ‎ب.ظ روز پنجشنبه ٢٦ آبان ،۱۳۸٤
تگ ها :