کامپیوتر و IT و اینترنتعلوم مهندسی

تمرینات مربوط به درس ساختمان داده ها

صفحه 1:
ساختمان داده‌ها

صفحه 2:
توابع بازگشتی زیر چه چیزی محاسبه می‌شود؟ ‎unsigned int F(unsigned int n)‏ { ‎if(n==0)‏ ‎return 0;‏ ‎return n * F(n-1);‏ 1 unsigned int G(double x, unsigned int n) if (n==0) return 0; return n + G(x, n-1); 1 unsigned int R(unsigned int n) { if(n<2) return 0; return 1 + R(n/2); +

صفحه 3:
تعیین کنید در تابع بازگشتی زیر چه چیزی محاسبه می‌شود؟ ارقام عدد را با هم جمع می کند unsigned int Q(unsigned int n) { if (n==0) return 0; return Q(n/10) + n%10; 1 int gcd(int a, int b) { ) if (b= return a; else return gcd(b,a%b) ;

صفحه 4:
بزرگترین مقسوم‌علیه مشترک دو عدد صحیح 8 ‎ys GCD(a,b) cb,‏ دو صفر نيستندء بزرگترین عدد صحیح است که هم بر 8 و هم بر أ قابل قسمت است. الگوریتم آن و ارم مورا لیب 3 ر رانا سم سس كردم حارج قسمث 0 و باقیمانده ۲ را به دست آورید به طوری که +3200 اگر 020 باشد آنگاه oe GCD(a,b)=GCD(b, 1) cygav! ye» GCD(a,b)=a ‏باقیمانده هر بار کاهش می‌یابد. سرانجام به باقیمانده صفر می‌رسیم. آخرین باقیمانده‎ ‏غیرصفر, بزرگترین مقسوم علیه مشترک 2 و 0 است. یک تابع بازگشتی و یک تابع‎ ‏غیربازگشتی برای محاسبه بزرگترین مقسوم‌علیه مشترک دو عدد 2 و 0 بنویسید.‎ GCD(1260, 198) =GCD(198, 72) =GCD(72, 54) =GCD(54, 18) =18

صفحه 5:
مربع جادویی, ماتریسی است 03۲ (۲ عددی فرد است) از اعداد صحیح از ۱ تا *0] که مجموع هر سطر ستون و قطر آن با هم مساوى باشد. مثلاً اگر 25 باشد مربع به شکل زیر | عدد ۱ در خانه وسط سطر اول قرار دهیده سپس وقتی عدد 6 در جدول قرار گرفت» يك سطر به طرف بالا و یک ستون به سمت راست حرکت کنید. عدد 1+ را در آنجا قرار دهید. مگر اينکه یکی از شرایط زیر اتفاق افتد: اگر حرکت به سطر بالاتر ممکن ‎atl‏ به پایین‌ترین سطر مي‌رويم (حرکت از 4 به ©) اگر حرکت به ستون سمت راست ممکن نباشد» به سمت چپ‌ترین ستون مي‌رويم (حرکت از 0 به ۰ اگر حرکت موجب شود که به يك محل پر بروید یا اگر حرکت منجر به خروج از مربع در گوشه بالايي سمت راست شود 1+6 را در زیر ) قرار دهید.(حرکت از 0 به 0 و حرکت از 18 به qo wf aly fw fw ‏ها‎ ‎YY Ye ۳ ۶ ۴ ‏1ع | »م إصاع‎ ‏اس ها | ۲ اه‎ «

صفحه 6:
برنامه‌ای بنویسید که عدد فرد 0] را دریافت کند و مربع جادویی را نمایش دهد. 6 برنامه و خروجی‌آنا بسولی/ 12 رویسرگه ۸4 چاپک نید و بسیاورید تاريخ تحویل : سوم آبان ۱۳۸۸

ساختمان داده‌ها تمرين 1 تعيين كنيد در توابع بازگشتي زير چه چيزي محاسبه مي‌شود؟ unsigned int F(unsigned int n) { if(n==0) return 0; return n * F(n-1); } unsigned int G(double x, unsigned int n) { if(n==0) return 0; return n + G(x, n-1); } unsigned int R(unsigned int n) { if(n<2) return 0; return 1 + R(n/2); } تعيين كنيد در تابع بازگشتي زير چه چيزي محاسبه مي‌شود؟ unsigned int Q(unsigned int n) { if(n==0) return 0; return Q(n/10) + n%10; }        ارقام عدد را با هم جمع می کند int gcd(int a , int b) { if(b==0) return a; else return gcd(b,a%b); } بزرگترين مقسوم‌عليه مشترك دو عدد صحيح aو bيعني ) GCD(a,bكه هر دو صفر نيستند ،بزرگترين عدد صحيح است كه هم بر aو هم بر bقابل قسمت است .الگوريتم آن به اين صورت است a :را بر bتقسيم صحيح كرده ،خارج قسمت qو باقيمانده rرا به دست آوريد به طوري كه a=bq+rاگر b=0باشد آنگاه ، GCD(a,b)=aدر غير اينصورت ) GCD(a,b)=GCD(b,rچون باقيمانده هر بار كاهش مي‌يابد ،سرانجام به باقيمانده صفر مي‌رسيم ،آخرين باقيمانده غيرصفر ،بزرگترين مقسوم عليه مشترك aو bاست .يك تابع بازگشتي و يك تابع غيربازگشتي براي محاسبه بزرگترين مقسوم‌عليه مشترك دو عدد aو bبنويسيد. )GCD(1260, 198 )=GCD(198, 72 )=GCD(72, 54 )=GCD(54, 18 =18 مربع جادويي ،ماتريسي است n( n×nعددي فرد است) از اعداد صحيح از 1تا n2كه مجموع هر سطر ،ستون و قطر آن با هم مساوي باشد .مثًال اگر n=5باشد مربع به شكل زير است. عدد 1در خانه وسط سطر اول قرار دهيد ،سپس ،وقتي عدد kدر جدول قرار گرفت ،يك سطر به طرف باال و يك ستون به سمت راست حركت كنيد .عدد K+1را در آنجا قرار دهيد ،مگر اينكه يكي از شرايط زير اتفاق افتد: ‏n ‏n ‏n اگر حركت به سطر باالتر ممكن نباشد ،به پايين‌ترين سطر مي‌رويم (حركت از 1به )2 اگر حركت به ستون سمت راست ممكن نباشد ،به سمت چپ‌ترين ستون مي‌رويم (حركت از 3به )4 اگر حركت موجب شود كه به يك محل پر برويد يا اگر حركت منجر به خروج از مربع در گوشه بااليي سمت راست شود K+1 ،را در زير Kقرار دهيد(.حركت از 5به 6و حركت از 15به )16 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 برنامه‌اي بنويسيد كه عدد فرد nرا دريافت كند و مربع جادويي را نمايش دهد. Source برنامه و خروجي آن را براي n=7روي برگه A4چاپ كنيد و بياوريد. تاريخ تحويل :سوم آبان 1388

51,000 تومان