עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

(חושב ש)צריך עזרה בשיעורי בית בפסקל - round to trunc.

Featured Replies

פורסם

"נתונה הפונקציה הבאה אשר מטרתה היא קיצוץ השבר של מספר ממשי חיובי תוך שימוש בפונקציה התקנית round:"


function TruncPositive (Num: real) :integer;
{טענת כניסה: Num מקבל מספר ממשי חיובי}
{טענת יציאה: הפונקציה מחזירה את החלק השלם של המספר, כמו הפונקציה התקנית trunc}
begin
TruncPositive := round(Num - ___)
end;

המשימה:

השלם את החלק הביצועי של הפונקציה.

*הערה: אם ה"קוד" משבש את טענת הכניסה ויציאה:

טענת כניסה: Num מקבל מספר ממשי חיובי

טענת יציאה: הפונקציה מחזירה את החלק השלם של המספר, כמו הפונקציה התקנית trunc

אני חושב שאפשר לעשות את זה כך:


TruncPositive := round(Num -(num / 10)

אבל יש עם הפיתרון הזה בעיה - הוא תקף רק לגבי מספרים דו ספרתיים(או שזה נקרא חד ספרתיים?) כגון 3.2 ו 4.6 , אבל הוא לא יעבוד לדברים כגון 46.3 או 120.56.

למישהו יש הצעות יותר טובות?

תודה מראש לעוזרים.

פורסם

הפתרון שלך שגוי.

תנסה אותו עם 1.9.

תנסה אולי להסיר מספר קבוע, ולא משהו שתלוי ב- num. תבדוק מתי הוא מעגל כלפי מעלה, ומתי הוא מעגל כלפי מטה.

פורסם
  • מחבר

כרגע כתבתי תוכנית וקימפלתי אותה, ניסיתי עם 1.9 והפלא ופלא - הפלט הוא 1, בדיוק כמו שרציתי... מה לא נכון בפיתרון שלי?

פורסם

ROUND מעגל למספר הקרוב ביותר, או למספר ללא שארית?

אם זה הראשון, אז:

1.9-0.19=1.71

וזה יעגל למספר הקרוב ביותר- 2.

אני לא יודע למה אצלך קיבלת 1.

בכל מקרה הפתרון שלך שגוי, מכיוון שהתוצאה שאתה מקבל לא נכונה עבור מספרים שגדולים מ- 9.

תחשוב על מה שהצעתי לך בתגובה הקודמת שלי.

ד.א. ההגדרה של מספרים חד ספרתיים מתייחסת למספרים שלמים. הבעיה אצלך מתקיימת במספרים שקטנים או שווים ל- 9.

פורסם
  • מחבר

אוקיי, הגעתי לפיתרון ואכן צדקת - הפיתרון שלי לא היה נכון לגבי 1.9, הוא הראה לי שהפיתרון נכון מכיוון שבטעות קלטתי בתוך התוכנית(מה שאני מעביר לפרמטר) כinteger, כך שאת 1.9 הוא קלט כ... 1 :x

אגב, הפיתרון הוא:

TruncPositive := round(Num - 0.5);

תודה על העזרה :)

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.