PDA

צפה בגרסה המלאה : שאלה כללית בזמנים



Yael
05-05-2010, 22:10
היי
במסגרת העבודת חקר שלי בפיזיקה אני צריכה לחשב כל מיני חישובים שונים. לדוג' אני צריכה לחשב הפרשי זמן שונים בין תצפיות שונות. ההפרש אמור להיות בדקות ולכן אני אמורה להמיר ימים/חודשים/שנים לדקות...

השאלה שלי היא- אם בתאריך הסופי יש שעה מוקדמת מהשעה בתאריך ההתחלתי אז יש להוריד זמן או להוסיף זמן, לדוג':

תאריך התחלתי: 27/11/03 02:22
תאריך סופי: 7/4/04 18:53

תודה על העזרה! (המוח שלי כבר זקן מדי /: )

Hurricane
05-05-2010, 22:50
אני הייתי פשוט לוקח את שני התאריכים, ממיר אותו למספר ימים משנת 2000, את זה ממיר לדקות (ע"י הכפלה ב- 24*60).
לוקח את הזמן שבו התחלת\סיימת (02:22 ו- 18:53) והופך אותם גם לדקות (לדוגמא, עבור הזמן השני - 18 כפול 60 ועוד 53), מוסיף את זה לדקות שקיבלת מקודם (איפה שאמרת את הימים לדקות).
ואז מחזיר את הערך המוחלט של ההפרש שבין הדקות.

Yael
05-05-2010, 22:51
אתה יכול להדגים בבקשה? לא ממש הבנתי הכל..

Hurricane
05-05-2010, 22:58
את יודעת ג'אווה? כתבתי לך תוכנית שמחשבת את מספר הדקות שעברו:

import java.util.Calendar;
import java.util.GregorianCalendar;

public class Dates {
public static void main(String[] args) {
//year, month, day, hour, minute
Calendar date1 = new GregorianCalendar(2003, 11, 27, 2, 22);
Calendar date2 = new GregorianCalendar(2004, 4, 7, 18, 53);
System.out.println(Math.abs(date1.getTimeInMillis( ) - date2.getTimeInMillis()) / 1000 / 60);
}
}
תשני את התאריכים בהתאם.

Yael
05-05-2010, 23:32
לא ממש /:
האם בכל זאת תוכל להסביר? (אין לי ג'אווה..) או במקרה אחר- להחליף לפרל? (התחלתי ללמוד לפני שבוע (: )

Yael
05-05-2010, 23:36
מצד שני, האם אני יכולה לתת לך את התאריכים ותוכל להחזיר לי את התשובות? (:

Hurricane
05-05-2010, 23:41
אוקיי אז אני אסביר טוב יותר, רק שזה בעייתי קצת.
בכל אופן, ניקח את התאריכים 27.11.03 ואת 7.4.04. נמיר את התאריכים לימים (לדוגמא, עד 2003 היו 731095 ימים [2003 כפול 365]).
נקבל:
התאריך הראשון הוא 800,000 ימים.
התאריך השני הוא 1,000,000 ימים.
(סתם המצאתי מספרים, אין לי כוח לחשב במדויק s: ).
נמיר את הימים לדקות ע"י שנכפול ב- 60*24 (יש 24 שעות ביום ו- 60 דקות בשעה) ונקבל:
1152000000 דקות.
1440000000 דקות.

עכשיו, ניקח את השעות שבהם סיימת\התחלת שהן 2:22 ו- 18:53 ונמיר אותן לדקות. נקבל:
2:22 שעות זה 142 דקות.
18:53 שעות זה 1133 דקות.

נוסיף את זה למספר הדקות הכולל:
1152000142 דקות.
1440001133 דקות.

נחסיר, ונקבל את הפרש הדקות:
288000991.

הפתרון האמיתי הוא 191011 דקות (באמצעות התוכנית שכתבתי למעלה).

Yael
05-05-2010, 23:53
אה, אבל שכחת משהו. לא כל החודשים הם 30 ימים... (לי בחישוב ידני יצא שזה שווה ל-186,751 דקות...)

Hurricane
06-05-2010, 10:31
נכון. זה למה השתמשתי בג'אווה כדי שהיא תדאג לזה. :p

nirgt
06-05-2010, 11:52
יש עוד בעיה שכל 4 שנים יש 366 ימים בשנה (שנה מעוברת).. אם זה משנה בכלל:)

Hurricane
06-05-2010, 12:17
בכלל, למה את צריכה הפרש בדקות? ם_ם

Yael
06-05-2010, 23:42
יש עוד בעיה שכל 4 שנים יש 366 ימים בשנה (שנה מעוברת).. אם זה משנה בכלל:)
כן, שכחתי מזה והיום פשוט את כל החישובים הייתי צריכה לעדכן ולחשב מחדש.../:

Yael
06-05-2010, 23:43
בכלל, למה את צריכה הפרש בדקות? ם_ם
כי כך המנחה שלי אמרה לי לעשות... (ע"מ לגלות מהירות- מרחק חלקי הזמן. המנחה שלי אמרה שהזמן צריך להיות בדקות..)

Hurricane
07-05-2010, 08:57
אוקיי אז תביאי לי זמנים, ואני אחשב את ההפרש שלהם.

Yael
07-05-2010, 09:35
תודה (:
בינתיים נשארו לי רק 2 לחשב:
1.תאריך התחלתי: 27/11/2003 02:22:00
תאריך סופי: 07/04/2004 19:22:00

2.תאריך התחלתי: 07/04/2004 19:22:00
תאריך סופי: 27/01/2005 00:58:00

תודה! (: