خانه / آموزش / تمرین‌های آموزشی / گزارش هواشناسی

گزارش هواشناسی

نام و تاریخ مسابقه: جی‌کل ۸ – ۲۱ اردیبهشت ۱۳۹۷

مباحث: Collections و Generics

در یک ایستگاه هواشناسی، اطلاعات مربوط به میزان بارش باران روزانه‌ی شهرهای مختلف نگهداری می‌شود. این اطلاعات توسط کلاسی که واسط InformationRepository را پیاده‌سازی می‌کند در اختیار شما قرار خواهد گرفت. در این واسط متد fetchAll، تمامی اطلاعات موجود را در قالب لیستی از Information برمی‌گرداند. هر شی Information، میزان بارندگی را در یک شهر و تاریخ مشخص نشان می‌دهد.

این کلاس شامل فیلدهای زیر است:

  • فیلد city: نام شهر
  • فیلد date: تاریخ در قالب yyyy/MM/dd (مثال: ۱۳۹۵/۰۱/۱۲ و ۱۳۹۶/۱۲/۰۵)
  • فیلد amount: میزان بارندگی

در کلاس ReportService قرار است به کمک اطلاعاتی که از InformationRepository به دست می‌آید، دو گزارش زیر گرفته شود (ابتدا بسته‌ی ir.javacup.report را دانلود کرده و محتوای آن را ببینید):

  1. جمع میزان بارندگی هر شهر در یک سال مشخص (متد sumByCity): نتایج باید براساس نام شهر مرتب شده باشند.
  2. میانگین میزان بارندگی ماهانه در هر شهر در یک سال مشخص (متد averageByCityAndMonth): نتایج باید براساس نام شهر و سپس بر اساس ماه مرتب شده باشند. تعداد روزهای ماه را برای شش ماه اول سال ۳۱ روز و برای شش ماه دوم ۳۰ روز در نظر بگیرید.

با اجرای متد main در کلاس ReportService: خروجی زیر مورد انتظار است:

آنچه باید آپلود کنید:

یک فایل زیپ شامل بسته‌ی ir.javacup.report است. به صورتی که وقتی فایل زیپ را باز می‌کنیم، دقیقا شاخه‌ی ir را ببینیم که درون آن شاخه‌ی javacup و درون آن نیز شاخه‌ی report قرار دارد. در داخل شاخه‌ی report تنها یک فایل ReportService.java وجود داشته باشد.

برای داوری تمرین، می‌توانید پاسخ خود را در سایت Quera به نحوی که در بالا گفته شد، بارگذاری کنید.

برای آشنایی با نحوه‌ی ارسال پاسخ در Quera، این مطلب را مطالعه کنید.


با ما همراه باشید:

آدرس کانال تلگرام: IranianJavaDevelopers@

آدرس اکانت توییتر: JavaCupIR@

آدرس صفحه اینستاگرام: javacup.ir

آدرس گروه لینکدین: Iranian Java Developers

 


درباره سردبیر

همچنین بررسی کنید

کنترل ترافیک

نام و تاریخ مسابقه: جی‌کل ۸ – ۲۱ اردیبهشت ۱۳۹۷ مباحث: Collections و Generics  

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *