هوالعلیم مبانی برنامهسازی ()40151 )Fundamentals of Programming (Pascal دانشگاه صنعتی شریف تمرین سری 3 دانشکده مهندسی کامپیوتر مدرس :صادق دری نوگورانی مهلت ارسال تمرین:جمعه 5 ،خرداد توضیحات اولیه آخرین مهلت تحویل تمرین سوم ،ساعت 95:52روز جمعه 5 ،خرداد 1521می باشد. تمرین به صورت انفرادی میباشد. بعد از نوشتن تمرینها ،فایلهای .pasتمرین خود را در یک فولدر با نام HW3_STDIDقرار دهید. ( STDIDشماره دانشجویی شما می باشد) .این فولدر را zipکنید .فایل فشرده شده را به آدرس hw.pascal.s90@gmail.comارسال نمایید( .از فرستادن جواب تمرین به گروه پستی جدا خودداری کنید) عنوان ایمیل باید به صورت HW3_STDIDباشد .که STDIDشماره دانشجویی شما می باشد. فرستادن کل یا قسمتی از برنامه تان برای افراد دیگر ،یا استفاده از کل یا قسمتی از برنامه فردی دیگر به نام خود ،تقلب محسوب میشود. در صورت مشاهده تقلب ،به میزان نمره سوال ،نمره منفی تعلق خواهد گرفت ( .یعنی اگر نمره سوال 92نمره بود ،نمره -92برای هر 9نفر منظور خواهد شد) در صورتی که در 9سوال از یک تمرین تقلب علمی مشاهده شود ،نمره تمرین هر 9نفر ،صفر خواهد شد .پس لطفا کپ نزنید! پس از اتمام زمان ارسال تمرین ،تا 4روز می توانید تمرین خود را ارسال کنید .هر روز تاخیر در ارسال برنامه %92 ،از نمره شما کسر خواهد شد. اگر هر گونه ابهام یا مشکل در مورد تمرین داشتید که فکر میکنید پاسخ آن برای همه مفید خواهد بود ،لطفا آن را به گروه پستی درس ارسال کنید .در غیر این صورت به آدرس saeid.barati157@gmail.comبفرستید. 1 تمرین های عملی ( -1رشته ها) برنامه ای بنویسید که دو رشته را به عنوان پارامتر بگیرد و طول بزرگترین زیر رشته مشترک آنها را برگرداند .در صورتی که زیررشته مشترک وجود نداشت ،با پیغام مناسبی در خروجی اطالع دهد. به این منظور یک تابع کمکی بنویسید که بررسی کند که آیا زیر رشته مشترکی به طول مشخص Lenبین دو رشته وجود دارد یا خیر (اگر وجود دارد Trueو در غیر این صورت Falseبرگرداند) .سپس با فراخوانیهای این تابع به صورت مناسب برنامه اصلی را بنویسید 55( .نمره) نحوه تعریف تابع کمکی ( )TestSubsو تابع اصلی ( )LongestSubباید به صورت زیر باشد: ;Function TestSubs(s1,s2: String; Len: Integer): Boolean ;Function LongestSub(s1,s2: String): Integer ورودی نمونه خروجی صحیح cde abcdescdeFK12 12cdeftu hellooo h !There was no common substring Qwertyuio Abc h (-9فایل متنی) برنامه ای بنویسید که یک متن را از فایل متنی abstract.txtبخواند .سپس 5کلمه را که بیش از 5حرف دارند و بیشتر از سایر کلمات تکرار شده اند ،در خروجی چاپ کند .در ادامه درصد حضور هر یک کلمات را به تفکیک در خروجی بنویسد 15( .نمره) ( -5رکورد)برنامه ای بنویسید که ابتدا عدد nرا از ورودی دریافت کند .سپس اطالعات مربوط به nدانشجو را در قالب زیر دریافت کند: ><stdID> <name> <GPA شماره دانشجویی 9 نام خانوادگی دانشجو ( یک کلمه است و الزاما با حرف بزرگ آغاز میشود) معدل دانشجو سپس در آخرین خط ورودی ،یکی از سه کلمه زیر را دریافت کند. : name بر اساس نام دانشجو ،مرتب کند. : avg بر اساس معدل ،مرتب کند. : id بر اساس شماره دانشجویی مرتب کند. در خروجی ،مرتب شده داده ها را از کوچک به بزرگ در nسطر چاپ کند 92( .نمره) خروجی صحیح 89101352 Ahmadi 18.52 85110772 Hesami 13.25 88100678 Mohammadi 16.30 90102979 Nabavi 19.51 87106191 Sobhani 17.01 ورودی نمونه 5 89101352 Ahmadi 18.52 88100678 Mohammadi 16.30 87106191 Sobhani 17.01 90102979 Nabavi 19.51 85110772 Hesami 13.25 name ( -4رشته+فایل متنی+فایل باینری) یک فایل متنی به نام Result.txtدر دایرکتوری جاری داریم کمه در همر خط آن نتیجه یک بازی به صورتی که در زیر آمده نوشته شده است : RealMadrid 2-2 barcelona برنامه ی شما باید یک فایل باینری به نام Table.datاز رکوردی شامل فیلد های نام تی ،تعداد بازی ،امتیماز و تفاضل گل بسازد و اطالعات همه تیمهای موجود در فایل متنی را در فایل باینری قرار دهد( .توجه :در هر خط ابتدا نام یک تی سپس یک فاصله و بعد از آن نتیجه بازی بصورت دو عدد که با یک '' ''-از ه جدا شده انمد و سپس یک فاصله دیگر و در نهایت نام تی دوم نوشته شده است.نام تی ها و نتیجه فاقد فاصله است). سپس فایل باینری را به ترتیب امتیاز و در صورت برابری امتیازها به ترتیب تفاضل گل مرتب کنیمد و اطالعمات فایل مرتب شده را روی صفحه نمایش دهید 52( .نمره) 5
© Copyright 2025 Paperzz