ما قصد داریم این پروژهٔ متن‌باز را در دسترس همهٔ مردم در سرتاسر دنیا قرار دهیم.

به ترجمهٔ محتوای این آموزش به زبان خودتان کمک کنید/a>.

بازگشت به درس

اعداد ورودی را جمع بزنید

اهمیت: 4

تابع sumInput() را بنویسید که:

  • از کاربر با استفاده از prompt درخواست مقدار می‌کند و مقدارها را در آرایه ذخیره می‌کند.
  • زمانی که کاربر یک مقدار غیر عددی یا رشته خالی وارد کند یا “Cancel” را فشار دهد، درخواست کردن را متوقف می‌کند.
  • جمع المان‌های آرایه یا محاسبه و آن را برگردانید.

پی‌نوشت: صفر 0 یک مقدار معتبر است، لطفا درخواست ورودی را با صفر متوقف نکنید.

[دمو]

لطفا جزئیات کوچک اما مهم راه حل را در نظر داشته باشید. ما value را درست بعد از prompt به عدد تبدیل نمی‌کنیم، چون بعد از value = +value ما نمی‌توانیم بین یک رشته خالی (نشان‌دهنده توقف) و صفر (مقداری معتبر) فرقی قائل شویم. در عوض آن را بعدا انجام می‌دهیم.

function sumInput() { let numbers = []; while (true) { let value = prompt("لطفا یک عدد وارد کنید.", 0); // باید لغو کنیم؟ if (value === "" || value === null || !isFinite(value)) break; numbers.push(+value); } let sum = 0; for (let number of numbers) { sum += number; } return sum; } alert( sumInput() );