آموزش پاسكال درس ۱۱
مثال : برنامه ای بنویسید که یک رشته ( متن) را از کاربر بگیرد و آخرين حرف رشته را ستاره بگذارد.
;Program myprog
;Uses WinCRT
var
;i:integer
;s:string
begin
;('writeln('enter string
;(readln(s
;(i:=lenght(s
;'*'=:[s[i
;(writeln(s
.end
دستور تبديل int به str
این دستور محتوي يك عد صحيح را به رشته تبديل مي كند
;(عدد,رشته)str
دستور mod
براي تعين زوج يا فرد بودن يك عد مورد استفاده قرار مي گيرد و اگر باقي مانده آن عد تقسيم بر دو صفر بود زوج و در غير اينصورت فرد است
mod 2=0 عدد
مثال : برنامه ای بنویسید که عدد از كاربر بگيرد و بگويد كه عدد متقارن است و اگر نبود بگويد كه عدد متقارن نيست
;Program myprog
;Uses WinCRT
var
;i,len:integer
;s:string
begin
;('writeln('enter number
;(readln(i
;(str(i,s
(len:=lenght(s
if len mod 2=0 then
begin
;('عد متقارن نيست')write
;halt
end;
for i:=1 to len/2 do
begin
if s[i]<>s[len-i+1] then
begin
;('عد متقارن نيست')writeln
halt
end
;('عد متقارن هست')writeln
.End
آموزش پاسکال درس ۱۰
متغير string
اين متغير مكانی از حافظه است كه نوشته ها و متن (به تعداد 256 character) را می توان درون آن قرار داد . فرق آن با متغیر char در این است که متغیر char می تواند یک حرف را در خود جا دهد در حالی که string می تواند کلمه و یا حتی کلمات (متن) که تعداد حروف آن بیش تر از 256 character نباشد را در آن جا داد .
توجه : رشته = string = متن یا نوشته
بدست آوردن طول رشته (string)
دستور length : از این دستور برای محاسبه تعداد حروف یک رشته استفاده می شود .
مثال : برنامه ای بنویسید که یک رشته ( متن) را از کاربر بگیرد و طول رشته (تعداد حروف آن) را چاپ کند .
;program ibprogrammer
;Uses WinCrt
var
;s:string
;begin
;(readln(s
;( (writeln( s , ' = ' , length(s
.end
توضیح مثال بالا
دو خط اول كه برای نوشتن هر برنامه در پاسكال استفاده می شه.
var را وقتی استفاده می كنيم كه بعدش بخواهيم متغير تعريف كنيم.
;s:string يعنی اين كه يك متغير از نوع string تعريف كرديم (كه می تواند حاوی متن باشد)
begin یعنی برنامه نویسی شروع شد.
;(readln(s یعنی از کاربر بخواه تا متنی که باید درون s قرار بگیرد را تایپ کند .
;( (writeln( s , ' = ' , length(s
یعنی طول رشته (تعداد حروف متن) را به کاربر به صورت زیر نشان بده ( اگر s = متن تایپ شده توسط کاربر=welcome to ib )
welcome to ib = 11
end یعنی برنامه را تمام کن.
آموزش پاسکال درس ۹
سلام
مثال : برنامه ای بنويسيد که سانتی متر را بگيرد و بر حسب اينچ چاپ کند .
inch <= cm
اطلا عات مورد نياز :
1inch = 1cm * 2.54
توجه : کاميوتر در حالت يش فرض، اعداد اعشاری را به صورت علمی نمايش می دهد . يعنی ۱۵ = ۱.۵ * ۱۰
;Program ibprogram
;Uses WinCrt
var
;n:real
;begin
;(':writeln('enter one real number
;(readln(n
;n:=n*2.54
;(writeln('n=' , n
.end
توضیح مثال بالا
دو خط اول كه برای نوشتن هر برنامه در پاسكال استفاده می شه.
var را وقتی استفاده می كنيم كه بعدش بخواهيم متغير تعريف كنيم.
;n:real يعنی اين كه يك متغير از نوع real تعريف كرديم (كه می تواند حاوی اعداد حقيقی باشد)
begin یعنی برنامه نویسی شروع شد.
;('writeln ('Enter one real number یعنی متن enter one real number را به کاربر نشان بده .
;(readln (n یعنی n يا همان عدد حقيقی را از کاربر بخواه
;n:=n*2.54 يعنی به جای مقدار n مقدار n*2.54 را قرار بده .
;(writeln('n=' , n يعنی < مقدار n = n > را به کاربر نشان بده.
end یعنی برنامه را تمام کن.
آموزش پاسکال درس ۸
با سلام
سال نو را به همه ايرانيان تبريک می گويم .
اميدوارم که سال خوب و موفقی داشته باشيد .
===========================
به زودی لینک همه درس های آموزش پاسکال را یکجا برای شما قرار می دهم . ه
: halt دستور
این دستور جهت اتمام برنامه در هر زمانی مورد استفاده قرار می گیرد . ه
: char متغییر
این نوع متغییر مکانی از حافظه است که یک حرف یا کاراکتر می توان درون آن جای داد . ه
: مثال
با استفاده از دستورfor برنامه ای بنویسید که مرتبا حروف از کاربر بگیرد و اگر کاراکتر مورد نظر Q بود برنامه خاتمه پیدا کند .
;program ib
;Uses WinCrt
var
;i:integer
;c:char
begin
;('writeln ('Enter character
for i:=1 to 28 do
begin
;(readln (c
if c='Q' then
;halt
;end
;end
.end
توضیح مثال بالا
دو خط اول كه برای نوشتن هر برنامه در پاسكال استفاده می شه.
var را وقتی استفاده می كنيم كه بعدش بخواهيم متغير تعريف كنيم.
;i:integer يعنی اين كه يك متغير از نوع inteegr تعريف كرديم (كه می تواند حاوی عدد باشد)
;i:char يعنی اين كه يك متغير از نوع charactr تعريف كرديم (كه می تواند حاوی حرف باشد)
begin یعنی برنامه نویسی شروع شد.
;('writeln ('Enter character یعنی متنenter character را به کاربر نشان بده .
for i:=1 to 28 do
begin
;end
یعنی دستورات بین begin و end را 28 بار تکرار کن .
;(readln (c یعنی c را از کاربر بخواه
if c='Q' then
;halt
;end
یعنی اگر C برابر کاراکتر Q بود برنامه را تمام کن .
end یعنی برنامه را تمام کن.
آموزش پاسکال درس ۷
شهادت امام حسين را به همه شيعيان تسليت می گويم
مثال :
برنامه ای بنويسيد که مرتبا حروف را از کاربر بگيرد و اگر کاراکتر مورد نظر Q بود از برنامه خارج شود .
;program myprog
;uses wincrt
var
;c:char
begin
;clrscr
;(readln(c
while c<>'a' do
begin
;(readln(c
;end
;end
توضيح مثال بالا :
دو خط اول كه برای نوشتن هر برنامه در پاسكال استفاده می شه .
var را وقتی استفاده می كنيم كه بعدش بخواهيم متغير تعريف كنيم .
;c:char يعنی اين كه يك متغير از نوع char (كه می تواند حاوی يك حرف باشد) تعريف كرديم .
begin يعنی اينكه می خواهيم برنامه نويسی را شروع كنيم .
;clrscr يعنی اينكه اگر در صفحه نوشته ای از قبل باقی مانده است اون را پاك كند .
;(readln(c
يعنی اينكه از كاربر c را بپرس يعنی اينكه كاربر می تونه هر چيزی رو كه می خواهد در c قرار بگيره تايپ كنه
while c<>'a' do
begin
;(readln(c
;end
در اينجا از دستور WHILE استفاده كردم و گفتم تا وقتی كه شرط درست نيست دستور بين begin و end را تكرار كن .در اينجا 'c<>'a همون شرط ما هستش و يعنی اينكه تا وقتی كه C نا مساوی a هستش دستورات بين begin و end را تكرار كن .
;(readln(c رو هم كه قبلا توضيح دادم .
end هم كه يعنی تمام .
متغير char
اين متغير مكانی از حافظه است كه يك حرف را می توان درون آن جا داد .
==============================
دوستان اگر در فهم مثال ها مشكل داريد در قسمت پيشنهادات بپرسيد تا برايتون بيشتر توضيح بدهم .
آموزش پاسکال درس ۶
مثال :
برنامه ای بنويسيد که N را از ورودی بگيرد و نتيجه اين سری را محاسبه كند .
1+2+3+4+....+N
;program seri
;Uses WinCrt
var
;i,m,n : integer
begin
;('writeln('Enter one number
;(readln(n
;m:=0
for i:=1 to n do
begin
;m:=m+i
;end
;(writeln('Enter one number:',m
.End
مثال:
برنامه ای بنويسيد كه اسامی ۱۰ نفر را بگيرد و آن كدام كه حرف اولش (با توجه به ترتيب حروف الفبای انگليسی) بزرگتر است را چاپ كند .
;program biger name
;uses wincrt
var
;n,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10:string
begin
;('writeln('Enter Name
;(readln(s1,s2,s3,s4,s5,s6,s7,s8,s9,s10
if s1<n then
begin
;n:=s1
;end
if s2<n then
begin
;n:=s2
;end
به اين ترتيب تا s10 می نويسيم
;(writeln('n=',n
.end
در درس بعد از مثالی با شرح زير را برای شما می نويسم ولی شما سعی كنيد تا خودتان آن را بنويسيد . نتيجه را به من ايميل بزنيد تا ايرادهاي آن را به شما بگويم .
مثال درس بعد :
برنامه ای بنويسيد كه مرتبا حروف را از كاربر بگيرد و اگر حرف مورد نظر Q بود از برنامه خارج شود .
آموزش پاسکال درس ۵
# دستور while
این دستور برای تکرار دستورات به کار می رود . به این ترتیب که تا زمانی كه شرط صادق است دستورات بين begin و end تكرار می شود .
فرق دستور while با for در اين است كه در for تعداد تكرار مشخص است ولی در while اين شرط است كه مشخص ميكند يك دستور چند بار تكرار می شود .
ساختار این دستور به صورت زیر می باشد .
do شرط while
begin
دستورات
;end
مثال :
در اين مثال كه از دستور while كمك گرفتيم كامپيوتر مرتبا' يك حرف را از كاربر می گيرد و اگر آن حرف برابر q بود متوقف می شود .
;program ibpersianblogcom
;uses wincrt
var
;c : char
begin
;clrscr
;(readln(c
while c<>'Q' do
begin
;(readln(c
.end
* برای مرور درس های گذشته و نيزآشنايی با الگوريتم ها تصميم گرفتم تا كار را با چند مثال برنامه نويسی ادامه دهم :
مثال ۱ :
برنا مه ای بنويسيد كه يك عدد بگيرد و فاكتوريل آن را حساب كند و در آخر نتيجه را نمايش دهد .
;program faktoriel
;uses wincrt
var
;fact,n,i : longint
begin
;'(writeln('enter an integer number
;(readln(n
fact:=1
for i:=1 to n do
fact:=fact*i
;end
;(writeln('factorial=',fact
.end
+ ما در اينجا از متغيير longint استفاده كرديم كه همان integer است ولی ظرفيت بيشتری دارد .
+ الگوريتم هم كه بسيار ساده است ابتدا عدد را از كاربر می گيرد بعد ۱ يا همان fact را به تعداد دفعات بزرگی عدد در آن عدد ضرب می كند كه حاصل با راه حل رياضی نيز هماهنگی دارد .
+++++++++++++++++++++++++++++++++
در درس های بعد مثال هايی ديگر را همراه با آموزش ديگر دستور ها خواهم نوشت .
آموزش پاسکال درس ۴
# دستورfor
این دستور برای تکرار دستورات به کار می رود . به این ترتیب که تعداد دفعات تکرار دستور را با دو مقدار (اولیه و نهایی) مشخص می کنیم .
برای استفاده از این دستور ما باید از قبل متغیر تعریف کنیم .
ساختار این دستور به صورت زیر می باشد .
;Program ibpersianblogcom
;Uses WinCRT
var
;integer:اسم شمارندهBegin
do مقدار نهایی to مقدار اولیه := اسم شمارنده for
begin
دستورات;end
.End
مثلا" :
;Program ibpersianblogcom
;Uses WinCRT
var
;i:integer
Begin
for i:=1 to 200 do
begin
;('writeln('visit our site => http://ib.co.sr
;end
.End
که در این دستور ما ابتدا متغیر
i را از نوع integer تعریف کردیم . سپس با استفاده از دستور for از کامپیوتر خواستیم تا 200 بار دستور writeln را انجام دهد که نتیجه آن 200 بار نوشته شدن متن 'visit our site => http://ib.co.sr' است .مثال :
برنامه ای بنویسید که 5 عدد را بگیرد و معدل را بدهد .
نکته :
متغیر real برای اعداد اعشاری استغاده می شود .;Program ibpersianblogcom
;Uses WinCRT
var
;i:integer
;num:real
;average:real
Begin
for i:=1 to 5 do
begin
;('writeln('please type your number
;(read(num
avarage:=avarage+num
;end
;(writeln (avarage/5
.End
توجه :
در اینجا در دستور writeln ما avarage/5 را بین دو علامت ' ' نگذاشتیم چون :فقط وقتی از
' ' استفاده می کنیم که بخواهیم دقیقا" متن نوشته شده توسط ما چاپ شود یعنی در این مثال اگر 'avarage/5' را می نوشتیم خود avarage/5 چاپ می شد ولی اکنون که از ' ' استفاده نکرده ایم نتیجه ی تقسیم مقدار avarage به عدد 5 نمایش داده خواعد شد .آموزش پاسکال درس ۳
امروز می خواهم یک دستور مهم و پر کاربرد را به شما آموزش بدهم :
# دستور if
این دستور را اگر بخواهیم با معنای فارسی آن که در ( ) نوشته ام بنویسیم اینطور می شود :
(سپس)then شرط (اگر)if
(شروع)begin
;دستورات
;(پایان)end
که یعنی اگر شرط ما درست بود دستورات را انجام بده .
مثال :
در مثال زیر یک عدد از کاربر می گیریم و اگر آن عدد از 100 بزرگتر بود yes و اگر مساوی 100 بود yesno و اگر کوچکتر از 100 بود no را در جواب نمایش میدهد .
;Program ibpersianblogcom
;Uses WinCRT
var
;a:integer
Begin
;clr scr
;('write('enter greade of our weblog more than 100 or 100 or less than 100
;(readln(a
if a>100 then
begin
;('writeln ('yes
;end
if a=100 then
begin
;('writeln ('yesno
;end
if a<100 then
begin
;('writeln ('no
;end
.End
همانطور که در مثال بالا دیدید در بیان شرط از علامت های <>= استفاده کرده ایم . در زیر اینگونه علامت ها را به طور کامل توضیح می دهیم .
تساوی =
نامساوی<>
کوچکتر>
بزرگتر<
کوچکتر یا مساوی >=
بزرگتر یا مساوی <=
نکته !
اگر ما از دستور if در یک خط استفاده کنیم نیاز به brgin و end نیست مانند این مثال :
('if a=100 then writeln('yesno
توجه !
از {} برای نوشتن توضیحات در وسط کد استفاده می شود . از این پس هر متنی را که در میان {} در کدها نوشتیم فقط برای توضیح بیشتر است .
# دستور if به همراه else
این دستور دقیقا" مثل if است ولی فقط قسمتی به نام else دارد که توضیح می دهم :
(سپس)then شرط (اگر)if
(شروع)begin
;دستورات
|(پایان)end
(در غیر اینصورت)else
(شروع)begin
;دستورات
;(پایان)end
;End
که یعنی اگر شرط ما درست بود دستورات قسمت اول را انجام بده و در غیر اینصورت اگر شرط درست نبود دستورات قسمت دوم را انجام بده .
نکته !
قبل از else , در خط بالایش نباید ; قرار بگیرد که من با | نشان داده ام .
آموزش پاسکال درس ۲
# دستور: writeln
همان دستورwrite می باشد با این تفاوت که بعد از عمل نوشتن نوشته به خط بعد می رود .
;Program ibpersianblogcom
;Uses WinCRT
Begin
;('writeln('IB hopes to teach you pascal
.End
استفاده از متغیر :
داده ها اطلاعاتی هستند که از کاربر گرفته می شوند . مثلا اگر کامپیوتر باید عمل جمع را انجام دهد نیاز به اعدادی دارد تا آن ها را جمع کند که این اعداد همان داده هستند .
برای این که بتوان از کاربر داده گرفت ما نیاز به متغیری داریم که این داده در آن قرار گیرد . برای استفاده از متغیر ها ابتدا باید آن ها را تعریف کرد . برای تعریف متغیر باید مانند قسمت هایی که به رنگ بنفس هستند عمل کرد .
من در اینجا یک متغیر از نوع string (متنی) تعریف کرده ام .پس از تعریف متغیر باید داده را در آن قرار داد که برای این کار از علامت انتصاب یعنی := مانند قسمت قهوه ای استفاده می کنیم .
;Program ibpersianblogcom
;Uses WinCRT
var
;a:string
;b:string
Begin
'a:='hello
;a:=b
;(write (a
;(write (b
End.
متغیر متغیر ها انواع مختلفی دارند که هر نوع آن ها استفاده مخصوص به خود را دارند . مثلا متغیر strin برای متن وintegerبرای اعداد می باشد .
در درس های بعد به طور مفصل متغیر ها را مورد بررسی قرار می دهیم .
# دستورread
این دستور برای گرفتن داده از کاربر مورد استفاده قرار می گیرد .
مثال :
این برنامه یرای مثال ابتدا 2 عدد از کاربر می گیرد و آن ها را جمع می کند ، سپس نتیجه را نمایش می دهد .
همچنین دستورreadln داده ها را از کاربر در خط بعد می گیرد .;Program ibpersianblogcom
;Uses WinCRT
var
;a:integer
;b:integer
Begin
;('write('enter two numbers to add
;(readln(a,b
;a:=a+b
;(write ('a=',a
.End
آموزش پاسکال درس ۱
# انواع زبان های برنامه نویسی:
زبان های نسل اول : زبان ماشین 010110
زبان های نسل دوم : نزدیک به سخت افزار ولی بهتر از زبان ماشین مثل اسمبلی
زبان های نسل سوم : پاسکال ،3GL , Basic , Ada , PL1 , C T ...
زبان های نسل چهام : دلفی ، ویژوال بیسیک ، جاوا ، asp.net
زبان های نسل پنجم : زبان های هوشمند
برای برنامه نویسی به سه چیز نیاز داریم : 1.الگوریتم 2.کامپیوتر 3.برنامه
برای دانلود زبان برنامه نويسی پاسکال به اين لينک برويد.
# ساختار کلی برنامه نویسی به زبان پاسکال :
; نام برنامه Programبرای پاسکال تحت داس یا Uses WinCRT; برای پاسکال تحت ویندوز ;Uses CRT
Begin
دستورات.End
:# دستور write
جهت نوشتن هر متنی روی صفحه ی مونیتور مورد استفاده قرار می گیرد .
;Program ibpersianblogcom
;Uses WinCRT
Begin
;('نوشته ی مورد نظر مثل=>Write(' This is made by ib.persianblog.ir
.End
:# دستور gotoxy
جهت دادن مختصات چاپ بکار می رود .
;Program ibpersianblogcom
;Uses WinCRT
Begin
;(Gotoxy(10,18
;('.Write('This is made by I.B
;(Gotoxy(5,10
;('Write(' ib.persianblog.ir is the weblog of IB programming group
.End
:# دستور CLRscr
Begin جهت پاک کردن صفحه ی نمایش معمولا" بعد از قرار می گیرد .:# دستور Textbackground
با استفاده از این دستور می توانیم رنگ زمینه را با استفاده از نام خود رنگ ها تغییر دهیم .(
توجه : این دستور در توربو پاسکال تحت ویندوز کار نمی کند );Program ibpersianblogcom
;Uses WinCRT
Begin
CLR Scr
);Textbackground(green
);Gotoxy(10,18
;('Write('Our e-mail address is iran@programmer.net
.End
:# دستور Textcolor
جهت تغییر رنگ نوشته به کار می رود .(
توجه : این دستور در توربو پاسکال تحت ویندوز کار نمی کند )از blink همچنین جهت چشمک زدن متن استفاده می شود که در این مثال هم ما رنگ آبی را چشمک زن قرار دادیم .
;Program ibpersianblogcom
;Uses WinCRT
Begin
;(Textbackground(green
CLR Scr
;(textcolor(red
('write('IB hopes to learn you pascal
;(textcolor(blue + blink
;('Write('you can ask your questions by wayiran@yahoo.com
.End
ادامه دارد ....
