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

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




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

نام تاپيک: JAVA programming Question

  1. #1
    پروفشنال siyanor's Avatar
    تاريخ عضويت
    Feb 2006
    محل سكونت
    away from home
    پست ها
    785

    پيش فرض JAVA programming Question

    سلام دوستان ,
    من تازه وارى دنياى جاوا شدم يك سوالى برام پيش اومده اگه كسي كمكم كنه خيلي ممنون ميشم :
    public class Time {
    private int hour; // 0 - 23
    private int minute; // 0 - 59
    private int second; // 0 - 59
    // constructor
    public Time(int h, int m, int s) {
    setHour(h);
    setMinute(m);
    setSecond(s);
    } // end constructor
    public void setHour(int h){hour = ( h >= 0 && h < 24 ) ? h : 0;}
    public int getHour(){return hour;}
    public void setMinute(int m){minute = ( m >= 0 && m < 60 ) ? m : 0;}
    public int getMinute(){return minute;}
    public void setSecond(int s){second = ( s >= 0 && s < 60 ) ? s : 0;}
    public int getSecond(){return second;}
    // convert to String in universal-time format (HH:MM:SS)
    public String toUniversalString() {
    return String.format("%02d:%02d:%02d", getHour(), getMinute(), getSecond());
    } // end method toUniversalString
    // convert to String in standard-time format (H:MM:SS AM or PM)
    public String toString() {
    return String.format("%d:%02d:%02d %s",
    ( ( getHour() == 0 || getHour() == 12 ) ? 12 : getHour() % 12 ),
    getMinute(), getSecond(), ( getHour() < 12 ? "AM" : "PM" ) );
    } // end method toString
    } // end class Time




    public class TimeTest {
    public static void main(String[] args) {
    Time t1 = new Time(13, 7, 8);
    System.out.print("1st UT: ");
    System.out.println( t1.toUniversalString() );
    System.out.print("1st ST: ");
    System.out.println( t1.toString() );
    Time t2 = new Time(11, 59, 34);
    System.out.print("2nd UT: ");
    System.out.println(t2.toUniversalString());
    System.out.print("2nd ST: ");
    System.out.println(t2.toString());
    Time t3 = new Time(90, 80, 70);
    System.out.print("3rd UT: ");
    System.out.println(t3.toUniversalString());
    System.out.print("3rd ST: ");
    System.out.println(t3.toString());
    System.out.println(t3); // ???
    } // end main method
    }


    تو برنامه اصلى چرا وقتى t3 و اجرا ميكنيم (يه خط مونده با اخر ) چرا جواب ميشه AM12:00:00?!!!

    ممنون ميشم راهنماييم كنيد

  2. #2
    پروفشنال siyanor's Avatar
    تاريخ عضويت
    Feb 2006
    محل سكونت
    away from home
    پست ها
    785

    پيش فرض

    دوستان يعنى هيشكى نميتونه يه ياور به ما برسونه

  3. #3
    آخر فروم باز
    تاريخ عضويت
    Jul 2009
    پست ها
    6,351

    پيش فرض

    دوستان يعنى هيشكى نميتونه يه ياور به ما برسونه
    سلام
    خیلی عجله دارم و نتونستم دقیق ببینم کد رو
    ( ( getHour() == 0 || getHour() == 12 ) ? 12 : getHour() % 12 ),

    خودت گفتی اگر ساعت 0 بود . بزن 12 در غیراینصورت ساعت باقیمانده اش بر 12
    واسه همین ظاهرا
    اگر اشتباه گفتم بزار شب با netbeans دقیق چکش میکنم برات

  4. این کاربر از Life24 بخاطر این مطلب مفید تشکر کرده است


  5. #4
    پروفشنال siyanor's Avatar
    تاريخ عضويت
    Feb 2006
    محل سكونت
    away from home
    پست ها
    785

    پيش فرض

    ممنون از جوابت عزيز

    حرف شما درسته ولى اگه دقت بكنى من بالاش نوشتم كه اگه ساعت بزرگتر از 24 باشه بايد بشه صفر ولى خوب چيز ديگه ى و نشون ميده !!!!

    ممنون ميشم راهنمايي كنى

  6. این کاربر از siyanor بخاطر این مطلب مفید تشکر کرده است


  7. #5
    آخر فروم باز
    تاريخ عضويت
    Jul 2009
    پست ها
    6,351

    پيش فرض

    ممنون از جوابت عزيز

    حرف شما درسته ولى اگه دقت بكنى من بالاش نوشتم كه اگه ساعت بزرگتر از 24 باشه بايد بشه صفر ولى خوب چيز ديگه ى و نشون ميده !!!!

    ممنون ميشم راهنمايي كنى
    سلم
    به نظر من درسته
    این همان مثال کتاب دیتل هست؟ اقا خیل بهم ریخته بود نتونستم اجرا کنمش.
    اگر بتونی فایل مرتب و کاملش بزاری.
    اما به نظر من درسته
    ساعت را زدید 90 درسته
    public void setHour(int h){hour = ( h >= 0 && h < 24 ) ? h : 0;}
    میگه ساعت اگر بین 0 و 24 بود که خودش اگر نبود 0
    پس اینجا ساعت شده 0
    حالا رفتی برای چاپ
    گفتی اگر ساعت برابر 0 یا 12بود بزار 12
    public String toString() {
    return String.format("%d:%02d:%02d %s",
    ( ( getHour() == 0 || getHour() == 12 ) ? 12 : getHour() % 12 ),
    getMinute(), getSecond(), ( getHour() < 12 ? "AM" : "PM" ) );

  8. این کاربر از Life24 بخاطر این مطلب مفید تشکر کرده است


  9. #6
    پروفشنال siyanor's Avatar
    تاريخ عضويت
    Feb 2006
    محل سكونت
    away from home
    پست ها
    785

    پيش فرض

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید




    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    عزيز مشكل اينجاست كه داره t3 رو ساعت دوازده نشون ميده (12:00:00!!!!) كد مشكلى نداره اما نتونستم بفهمم چرا اون رو ساعت دوازده نشون ميده !

  10. این کاربر از siyanor بخاطر این مطلب مفید تشکر کرده است


  11. #7
    آخر فروم باز
    تاريخ عضويت
    Jul 2009
    پست ها
    6,351

    پيش فرض

    سلام
    با عرض پوزش نبودم.
    باید چه عددی نشان دهد؟ از نظر شما؟
    این مقدار t3 میره سمت سازنده.
    Time t3 = new Time(90, 80, 70);
    این تابع فراخوانده میشه
    public void setHour(int h){hour = ( h >= 0 && h < 24 ) ? h : 0;}
    با توجه به شرط چون 90 بزرگ تر 24 هست پس 0 میشه h=0
    اوکی؟
    برای چاپ
    System.out.print("3rd UT: "); System.out.println(t3.toUniversalString());
    میگه هر مقداری قرار داده شده بگیر چاپ کن بدون دستکاری
    اما جایی که شما مشکل داری اینه
    System.out.print("3rd ST: "); System.out.println(t3.toString());
    که در اصل این تابع رو میاد صدا میزنه
    public String toString() return String.format("%d:%02d:%02d %s", ( ( getHour() == 0 || getHour() == 12 ) ? 12 : getHour() % 12 ), getMinute(), getSecond(), ( getHour() < 12 ? "AM" : "PM" ) ); }
    این تابع میاد میگه آقا اگر ساعت که الان 0 هست درسته؟ اگر برابر 0 یا 12 بود . بزار 12 در غیراینصورت باقیمانده اش بر 12
    برای همین 12 بهت میده اوکی؟

Thread Information

Users Browsing this Thread

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

User Tag List

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

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