تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 3 از 3

نام تاپيک: سوال مورد برنامه نویسی

  1. #1
    داره خودمونی میشه
    تاريخ عضويت
    Sep 2009
    پست ها
    76

    پيش فرض سوال مورد برنامه نویسی

    من یه سوال داشتم که استادمون ازم جواب میخوا برای فردا میخوام از دوستان استاد کمک میخوام

    سوال:با استفاده از تابع DataDiff تاریخ میلادی را به شمسی تبدیل کنید؟

    پیشاپیش از همه ی دوستان ممنون

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    با استفاده از تابع DataDiff تاریخ میلادی را به شمسی تبدیل کنید؟
    برای تبدیل صحیح بین شمسی و میلادی شما باید کبیسه های 4 و 5 ساله را لحاظ کنید و این هم ربطی به DateDiff ندارد.

    دو الگوریتم مرسوم و نقل شده برای تقویم جلالی وجود دارد ...
    الگوریتمی که بیشتر در اینترنت شهرت دارد و ساده تر هم است، مبتنی بر دوره های 33 ساله وقوع کبیسه 5 ساله است.
    باید تاریخ میلادی را به تعداد روز گذشته از اول میلاد حضرت مسیح تبدیل کنید و سپس از اختلاف شروع میلادی و شمسی کم کنید در نهایت 365*33+8 برای هر 33 سال شمسی کم کنید و مابقی کمتر از 33 را با توجه به کبیسه های 4 ساله کم کنید تا تعداد سال به دست آید و خرده زیر 365 را هم به ماه و روز تبدیل کنید.

    در الگوریتم تشریحی فوق تنها جایی که میتوانید از DateDiff استفاده کنید، و این استفاده منطقی و صحیح هم باشد، انجا است که برای تبدیل تاریخه میلادی به تعداد روز گذشته از اول میلادی (یا هر سال مبنای مشخصی) از DateDif استفاده کنید.
    یعنی تاریخ میلادی جاری را منهای تاریخ میلادی مبنا کنید و خروجی را به تعداد روز بگیرید.

    =====

    (برای شمسی به میلادی هم عکس همین مطلب.)
    این روش ها و الگوریتم های این تیپی و شمابه چیزی که در فوق گفتم، تنها راه پیاده سازی تبدیل تاریخ است که همیشه و در همه سال کار کند.

    =====

    (
    اگر جستجو کنید، افراد کم اطلاع کدهای زیادی برای تبدیل تاریخ نوشته اند که داخلش کلی If با اعداد 20 و 21 و.. دارد و مدام روز را مقایسه کرده اند.
    این کد تبدیل بدون شک و تردید، صحیح کار نمیکند و فوقش در یک بازه 4 ساله صحیح کار میکند و دیگر طرف خیلی کار کرده باشد، کدذش در یک بازه 33 ساله صحیح کار خواهد کرد.

    و چون فرد مذکور اطلاع کاملی نداشته و نمیتواند صحت کارکرد الگوریتمش را برای 4 سال یا 34 سال قبل یا بعد چک کنید، متوجه نمیشود کدش ایراد دارد.

    گروهی دیگر از افراد هم بدتر از گروه قبل می آیند و تاریخه شمسی را یکراست در متغییر های میلادی میریزند و گمان میکنند مشکل حل میشود و اصلاً توجه ندارند که تعداد روزهای در ماه برای شمسی و میلادی متفاوت و مثلاً ماه دوم میلادی ها 28 و 29 روز است در حالی که ماه دوم شمسی 31 روز است و برنامه با تاریخ های بالای 28 برای ماه دوم به خاط خواهد خورد.
    و...
    )

    =====

    در آخر این را هم اضافه کنم که برنامه نویسان تحت Net Framework. مثل VB.Net و C#.Net و VC++.Net و J#.Net و Delphi.Net و... نیاز به تبدیل دستی تاریخ ندارد و کلاس System.Globalization.PersianCalendar از امکانات ذاتی Framework است و میتواند تاریخ شمسی را به میلادی تبدیل کند.
    همچین Framework مجهز به کلاس تبدیلی 10 تقویم دیگر معروف جهان است که با توجه به تبدیل به/از میلادی میتوان هر تاریخ در کل این 11 تقویم را به به یکی تبدیل کرد.
    (نحوه استفاده از System.Globalization.PersianCalendar که خیلی ساده است، بارها در سایت بحث شده.)

    موفق باشید.

  3. 2 کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده اند


  4. #3
    در آغاز فعالیت
    تاريخ عضويت
    May 2012
    پست ها
    2

    پيش فرض

    با سلام من يه برنامه نويس c ميخوام يا يه برنامه c
    تمرين كلاسي بچه ها- گير كردم-لطفا كمكم كنيد-
    سئوال:
    برنامه گرافيكي بنويسيد كه يك گراف وزن دار را در قالب يك ماتريس دو بعدي دريافت كند و در خروجي درخت پوشاي مينيمم آنرا نمايش دهد؟
    درس طراحي اگوريتم-كارشناسي-كمك

    ---------- Post added at 10:15 AM ---------- Previous post was at 10:12 AM ----------

    با سلام من يه برنامه نويس c ميخوام يا يه برنامه c
    تمرين كلاسي بچه ها- گير كردم-لطفا كمكم كنيد-
    سئوال:
    برنامه گرافيكي بنويسيد كه يك گراف وزن دار را در قالب يك ماتريس دو بعدي دريافت كند و در خروجي درخت پوشاي مينيمم آنرا نمايش دهد؟
    درس طراحي اگوريتم-كارشناسي-كمك
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •