زبانهایبروامهوویسی Scheme تمریهعملیدوم جَاب توریيّا را تِ آدرس [email protected]تفرستید .پاسخ تواهی سَاالت را در یک فایل تا ًام = # ( STD#ضوارُ داًصجَیی) قرار دّید ٍ فایل هرتَطِ را در یک فایل zipتِ ًام = # ( STD#ضوارُ داًصجَیی) فطردُ کٌید ..هَضَع ایهیل ًیس تاید حتوا تِ فرهت STD#تاضد .در صَرتی کِ توریي را تِ صَرت گرٍّی اًجام هیدّید ضوارُ داًصجَیی ّنگرٍُ خَد را در هتي ایهیل تٌَیسید. هْلت ارسال ایي توریي تا ساعت۲۳:۵۹روز۱۲امآبان است. توریيّا تِ صَرت خَدکار تصحیح هیضَد .لطفا تِ ّیچ عٌَاى اسن تاتعّا ٍ تعداد ٍ ترتیة پاراهترّای ٍرٍدی را تغییر ًدّید .در صَرتی کِ در توریي قثل اسن یا پاراهترّا را تغییر دادُاید تا ایهیل جدیدی تر رٍی ایهیل توریي قثلی تغییراتی کِ اًجام دادُاید را اعالم کٌید. ّرگًَِ سَال در هَرد توریي را تِ آدرس [email protected]تفرستید. .۱وظریهیاعداددرScheme تاتع lcmرا تٌَیسید کِ ک.م.م دٍ عدد را هحاسثِ هیکٌد .در صَرتی کِ تاتع ضوا ترای اعداد تسرگ (در حد یک هیلیارد) ّن سریع کار کٌد ًورُی اضافی خَاّید گرفت .هثال: (lcm 15 21) -> 105 تاتع is-completeرا تٌَیسید کِ یک عدد تِ عٌَاى ٍرٍدی هیگیرد ٍ در صَرتی کِ آى عدد کاهل تاضد هقدار ٍ trueدر غیر ایي صَرت هقدار falseترهیگرداًد .عدد کاهل عددی است کِ حاصلجوع هقسَمعلیِّایص (تِ جس خَدش) تا خَدش تراتر تاضد .هثال: (is-complete 28) -> true (is-complete 20) -> false .۲اعمالپیشرفتهرویلیست تاتع filterرا تٌَیسید کِ یک تاتع یک هتغیرُ ٍ یک لیست را تِ عٌَاى ٍرٍدی هیگیرد ٍ اعضایی از لیست کِ از فیلتر دادُضدُ عثَر هیکٌٌد را در یک لیست ترهیگرداًد .هثال: )(filter (lambda (x) (> x 10)) ‘(1 12 4 11 9)) -> ‘(12 11 تاتع mapرا تٌَیسید کِ یک تاتع یک هتغیرُ ٍ یک لیست را تِ عٌَاى ٍرٍدی هیگیرد ٍ تاتع دادُضدُ را تر رٍی ّوِی اعضای لیست اجرا کٌد .هثال: )(map (lambda (x) (* 2 x)) ‘(1 2 3 4)) -> ‘(2 4 6 8 .۳مرتبسازیسریع تاتع quick-sortرا پیادُسازی کٌید کِ تِ عٌَاى ٍرٍدی یک لیست هیگیرد هیگیرد ٍ هرتةضدُی آى را ترهیگرداًد .در صَرتی کِ تاتع ضوا تِ طَر کلی (هستقل از ترتیة اعداد ٍرٍدی) سریع کار کٌد ًورُی اهتیازی خَاّید گرفت( .تِ عٌَاى راًُوایی هیتَاًید از تاتعّای let ٍ randomاستفادُ کٌید) .هثال: )(quick-sort ‘(4 2 3 1 5)) -> ‘(1 2 3 4 5
© Copyright 2024 Paperzz