Algorithm Questions in Persian
Algorithm Questions in Persian
:مثال
.الگوریتمی بنویسید که دو عدد از کاربر گرفته و حاصل جمع آن ها را حساب نماید
ش,,روع)1
)b2وAرا دریافت کن
c a + b (3
)c4را نمایش بده
پ,,,ایان)5
:مثال
.الگوریتمی بنویسید که دو عدد را از کاربر گرفته و حاصل ضرب آن ها را حساب کند
ش,,روع)1
)b2وaدریافت کن
)C=a*b3
)c4نمایش بده
.پ,,,ایان)5
:مثال
.الگوریتم محاسبه ی میانگین دو عدد را بنویسید
ش,,روع)1
)a2وbرا دریافت کن
)C=a+b3
)D=c/24
)D5را نمایش بده
پ,,,ایان)6
:مثال
.الگوریتم دریافت یک عدد و حساب کردن مربع آن را بنویسید
ش,,روع)1
)a2را دریافت کن
)B=a*a3
)B4را نمایش بده
پ,,,ایان)5
:مثال
A x^2+Bx+C=0الگوریتم حل یک معادله ی درجه دو با فرض وجود ریشه بنویسید
ش,,روع)1
)C2وBوAرا دریافت کن
)D=B^2-4A*C3
)D)/2A4ج,ذرX1=(B+
)D)/2A5ج,ذرX2=(B-
)x26وx1را نمایش بده
پ,,,ایان)7
:الگوریتم با استفاده از مکانیزم شرطی
:مثال
الگوریتمی بنویسید که عدد طبیعی را از کاربر گرفته و مقسوم ,علیه های آن را چاپ کند.
)1شروع
)n2را از کاربر دریافت کن
اگرn<23),آنگاه دستور شماره 2را دوباره اجراکن.درغیراینصورت بروبه دستور شماره4
)m=14
)K=n-int(n/m)*m5
اگرk6),برابر 0شد mرا چاپ کن.درغیراینصورت بروبه دستور 7و ادامه بده
)m= m+17
اگرm8),کوچکتر یا مساویnبود برگرد به دستور شماره.5درغیراینصور,ت فرآیند رو متوقف کن
پ,,,ایان)9
:مثال
الگوریتمی بنویسید که سه عدد را از کاربر گرفته و ماکزیمم آنان را نمایش دهید
ش,,روع)1
) n1,n2,n32را از کاربر دریافت کن
)Max=n13
ا,گر)،n2>n14ب,,,اشدMax=n2درغیرا,ینصورتب,,,روبه ,دستور ش,,ماره.6,
اگر)،n3>n25باشدMax=n3و بروبه شماره.7درغیراینصورتMax=n2و بروبه شماره7
اگر)،n3>n16باشد Max=n3و بروبه شماره .7درغیراینصورتMax=n1و بروبه شماره7
)Max7را چاپ کن
پ,,,ایان)8
:مثال
الگوریتمی بنویسید که3عددرا دریافت کند ومشخص کند که میتوان با این 3عدد مثلث تشکیل بدهند این است که
ساخت یا خیر.همانطورکه میدانید شرط اینکه3عددa,b,cروابط
a<=b+c b<=a+c c<=b+a :روبه ,رو ب,,,رقرار ب,,,اشد
ش,,روع)1
)a,b,c2را دریافت کن
اگر)a<=b+c 3آنگاه به خط4برو درغیراینصورت به خط 7برو
اگر) b<=a+c 4آنگاه به خط4برو درغیراینصورت به خط 7برو
اگر) c<=b+a 5آنگاه به خط4برو درغیراینصورت به خط 7برو
چ,اپک,,,نمیتوا,نی,,کمثلثس,,اخت)6
چ,اپک,,,نمیتوا,نی,,کمثلثس,,اخت)7
پ,,,ایان)8
:مثال
الگوریتمی بنویسید که سه عدد دریافت و آنهارا به ترتیب نزولی چاپ کند
ش,,روع)1
)n1,n2,n32را دریافت کن
)Min=n13
ا,گر)،n2<n14ب,,,اشد Min=n2درغیرا,ینصورتب,,,رو ب,,,ه ,دستور ش,,ماره.7,
اگر)n3<n25باشد،چاپ کنn3,n2,n1و برو به دستور شماره .9در غیراینصورت برو به دستور شماره6
اگر)n3<n16باشد،چاپ کن n2,n3,n1و بروبه دستور شماره .9درغیراینصورت چاپ کن n2,n1,3و بروبه دستور شماره9
اگر)n3<n17چاپ کن n3,n1,n2و بروبه دستور شماره .9درغیراینصورت بروبه دستور شماره8
اگر)n3<n28چاپ کن n1,n3,n2و بروبه دستور شماره.9درغیراینصورت چاپ کن n1,n2,n3و بروبه دستور شماره9
پ,,,ایان)9
:الگوریتم بااستفاده از مکانیزم حلقوی
:مثال
.الگوریتمی بنویسید که با دریافت دوعدد طبیعی،اولی را به توان دومی برسانید
ش,,روع)1
)b2وaرا از کاربر دریافت کن
)c=13
تا زمانیکه)b>04برو سراغ دستورات4تا6؛درغیراینصورت بروسراغ دستورات7و بعداز آن
)c=c*a5
)b=b-16
)c7را چاپ کن
پ,,,ایان)8
:مثال
الگوریتمی بنویسید که عددی دریافت کنند،تعیین کند رقم اول و آخر آن برابر است یا خیر
ش,,روع)1
)n 2را دریافت کن
)First=n%103
)n=n/104
مادامیکه){n>05تکرار کن
Last=n%10
n=n/10
{
اگر)First=Last6باشد،آنگاه "بله"را نمایش بده درغیراینصورت "نه" نمایش بده
پ,,,ایان)7
:مثال
.الگوریتمی بنویسید که عددی صحیح دریافت کرده اگر منفی بود تعیین کند که زوج است یا فرد
ش,,روع)1
)A2را دریافت کن
اگر){A<03آنگاه
اگر{A%2=0آنگاه
,ست ن,,مایشب,,,ده",
,ینصورتع,دد ف,,,رد ا "
" ,سترا ن,,مایشب,,,ده ,درغیر ا
}ع,دد زوج ا "
}
پ,,,ایان)4
:مثال
الگوریتمی بنویسید که یک عددصحیح دریافت کند مجموع ارق,ام آن را به دست آورده و چاپ کند
ش,,روع)1
)n2را دریافت کن
)Sum=03
مادامیکه){n>04تکرار کن
Sum=Sum+n%10
n=n/10
{
)Sum5را چاپ کن
پ,,,ایان)6
:مثال
الگوریتمی بنویسید که عددی صحیح دریافت کرده و ارقام آن را تک تک چاپ کند
ش,,روع)1
)n2را دریافت کن
مادامیکه){n>03تکرار کن
n%10را چاپ کن
n=n/10
{
پ,,,ایان)4
:مثال
.الگوریتمی بنویسید که عددی صحیح دریافت کرد,ه،تعیین کند چندرقمی است
ش,,روع)1
)n2را دریافت کن
)C=13
مادامیکه){n>04تکرار کن
n=n/10
C=c+1
{
)C5را چاپ کن
پ,,,ایان)6
:مثال
.الگوریتمی بنویسید که هربار عددی دریافت کند تازمانیکه صفر وارد شود،درپایان تعداد اعداد زوج مثبت را چاپ کند
ش,,روع)1
)n2را دریافت کن
)c=13
مادامیکه){n!=04تکرار کن
nرا دریافت کن
ا,گر n>0 AND n%2=0آ,نگاهc=c+1 ,
{
)c5را چاپ کن
پ,,,ایان)6
:مثال
الگوریتمی بنویسید که عددی دریافت کرده،معکوس آن را چاپ کند
ش,,روع)1
)n2را دریافت کن
C=0(3
مادامیکه){n>04تکرار کن
B=n%10
C=B*10+C
n=n/10
{
پ,,,ایان)4
:مثال
الگوریتمی بنویسید که عدد 1تا 100را تک تک چاپ کند
ش,,روع)1
)i=12
مادامیکه){i<=1003تکرار کن
iرا نمایش بده
i=i+1
{
پ,,,ایان)4
:مثال
الگوریتمی بنویسید که دوعددaوbرا دریافت کرده،اعداد زوج بین آنهارا چاپ کند
ش,,روع)1
)b2وaرا دریافت کن
)a=a+1 3
مادامیکه){a<b4تکرار کن
اگرa%2=0باشدaرانمایش بده
a=a+1
{
پ,,,ایان)5
:مثال
الگوریتمی بنویسید که nعددصحیح را دریافت و حداکثر و حداقل آنهارا چاپ کند
ش,,روع)1
)n2را بخوان
)a3را بخوان
)Min=a,max=a4
)i=25
(تا زمانیکه)(i<=n6دستورات7تا10را تکرار کن
)a7را بخوان
(ا,گر) (a>max8آ,نگاهmax=a ,
ت,گر) (a<Min 9آ,نگاهMin=a ,
(درغیرا,ینصور ا
)i=i+110
)max,Min11را چاپ کن
پ,,,ایان)12
:مثال
الگوریتمی بنویسید که عددطبیعیnرادریافت کند و مجموع عبارات زیر را محاسبه و چاپ
ن,,مایدS=1+1/2+1/3+….+1/n
ش,,روع)1
)n2را بخوان
)S=13
)i=24
(تا زمانیکه)(i<=n5دستورات6تا 7را تکرار کن
)S=S+1/i6
)i=1+i7
)S8را چاپ کن
پ,,,ایان)9
:مثال
ا,,لگوریتمیب,,,نویسید ک,,,ه ,ی,,کع,ددصحیح مثبتدرمبنای 10دریافتو س,,پسآ,نرا ب,,,ه ,مبنایb
که از کاربردریافت شده،ببرد
ش,,روع)1
)n,b2را دریافت کن
)i=0,mabnaieb=03
(تازمانیکه)(n>04دستورات 5تا 8راتکرار کن
)remain=n%b5
)mabnaieb=mabnaieb+remain*(10^i)6
)n=n/b7
)i=i+18
)mabnaieb9را چاپ کن
پ,,,ایان)10
:مثال
الگوریتمی بنویسیدکه یک عددطبیعی را از ورودی دریافت وتوان آنرا به روش زیرمحاسبه کند
()9=5+3+1 توان دوم عددnمجموع=nعددفرد از1
ش,,روع)1
)n2را دریافت کن
)i=0,Sum=03
(تا زمانیکه)(Sum!=n4تکرار کن دستورات4تا6
)Sum=Sum+(2*i+1)5
)i++6
)Sum 7را چاپ کن
پ,,,ایان)8
:مثال
الگوریتمی بنویسید که 50جمله از دنباله زیر موسوم به دنباله فیبوناچی را چاپ کند
1،1،2،3،5،8،...
ش,,روع)1
)Sum=0,i=0,a=1,b=12
)a,b3را چاپ کن
(تازمانیکه)(i!=504دستورات 5تا 9تکرار کن
)Sum=a+b5
)a=b6
)b=Sum 7
)i++ 8
)Sum9چاپ کن
پ,,,ایان)10
:مثال
الگوریتمی بنویسید که تمام اعداد4رقمی بخشپذیر بر 7اما بخش ناپذیر بر 3را نمایش دهید
ش,,روع)1
i=1000(2
تا زمانیکه(((i!=99993دستورات 3تا 5تکرار کن
اگر)،i%7=0 AND i%3!=04باشد iرا چاپ کن
)i++5
پ,,,ایان)6
:مثال
.الگوریتمی بنویسید که یک عدد را دریافت و تعیین کند که آیا اول است یا خیر
ش,,روع)1
)n2را دریافت کن
اگر)n=23باشد،فرآیند را متوقف کن درغیراینصورت برو به دستور شماره4
)i=24
(تازمانیکه)(i!=(sqrt n)+15تکرار کن دستور6
,یستو ف,,,رآ,یند متوقفک,,,نو ب,,,رو دستور.8درغیرا,ینصورتi++،
ا,گر)n%i=06چ,اپک,,,ن"ع,دد اولن" ,
"چ,اپک,,,ن"ع,دد اولا,ست)7
پ,,,ایان)8
:مثال
الگوریتمی بنویسید که عددی4رقمی را پیداکند که با ضرب کردن عدد در،4معکوس خود عدد حاصل شود
ا,گر ع,دد4رقمیک,,,ه4,ب,,,را,برا,ینارزش***abcdدرنظر ب,,,گیریم،,ارزشمکانیآ,نب,,,را,بر ا,ستب,,,اd+c*10+b*100+a1000
مکانیب,,,اید ب,,,را,بر ب,,,اشد ب,,,ا معکوسع,دد ی,,عنی
:a+b*10+c*100+d*1000که از این روابط به رابطه زیر میرسیم
)**1333(a-d)=30(c-b
ش,,روع)1
دستور3ت,,,ا4را ب,,,ه ,ص,,ورتب,,,ین ,ه,ایتت,,,کرار ک,,,ن)2
ارقام عدد را به ترتیب و به صورت) a,b,c,d3دریافت کن
اگر)(a-d)=30(c-b)4توقف کن.درغیراینصورت برو به دستور شماره 31333
پ,,,ایان)5
:مثال
الگوریتمی بنویسید که بزرگترین مقسوم علیه مشترک و کوچکترین مضرب مشترک دوعدد را بیابد
ش,,روع)1
)a,b2را دریافت کن
)i=23
اگر)a>b4باشد،تا زمانیکه (a*i)%b!=0تکرار کن دستور.5درغیراینصورتbوaرا جابه جا کن و تکرار کن دستور5
)i++5
ک,,,نک.م.م ب,,,را,بر ا,ستب,,,ا)"a*i6
چ,اپ "
ک,,,نب.م.م ب,,,را,بر ا,ستب,,,ا)"b/i7
چ,اپ "
پ,,,ایان)8
:مثال
الگوریتمی بنویسید که عددی انتخابی بین 1تا 1000را پیدا و چاپ کند
ش,,روع)1
)n2را پیداکن
اگر)،n>1ANDn<10003باشدnرا چاپ کن.درغیراینصورت برو به دستور شماره2
پ,,,ایان)4