مثال :
برنامه ای بنویسید که 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
* برای مرور درس های گذشته و نیزآشنایی با الگوریتم ها تصمیم گرفتم تا کار را با چند مثال برنامه نویسی ادامه دهم :
مثال ? :
برنا مه ای بنویسید که یک عدد بگیرد و فاکتوریل آن را حساب کند و در آخر نتیجه را نمایش دهد .
;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 نمایش داده خواعد شد .