میلاد
2 سال پیش توسط میلاد مطرح شد
4 پاسخ

حل سوال مسابقه با js

سلام و وقت بخیر به همه دوستان
من می خوام سوال الگوریتمی کوئرا رو مثل سوال زیر رو با js حل کنم :
https://quera.org/problemset/649/
ولی نمی دونم چطور کد رو بنویسم که ورودی ها رو از داوری خودکار بگیره و خروجی بده و سوال حل بشه ، خیلی ممنون میشم اگر کسی تجربه حل سوالات الگوریتمی رو با js داره بهم کمک کنه .
تشکر


ثبت پرسش جدید
عبدالرحمان کیانی
تخصص : Backend developer
@abdolrahman 2 سال پیش مطرح شد
1

ورودی خروجی گرفتن در جاوا اسکریپت خالی با اونی که تو مرورگر استفاده میکنیم فرق داره
برای گرفتن ورودی از readline() و برای خروجی از print() استفاده کن


woz
تخصص : fan of open source world
@wozniak 2 سال پیش آپدیت شد
0

قسمت داور خودکار رو متوجه نشدم ( شاید چون با کورا آشنایی ندارم ). ولی در کل :
در جاوااسکریپت بستگی داره شما برنامه رو با چی بنویسید مثلا میتونید با nodejs بنویسید. به راحتی ورودی در command line بدید و خروجی رو بگیرید .

>cli>   node app.js a b

به نظرم روش خوبی هستش. نوشتن کدش هم که سخت نیست داخل گوگل سرچ کنید


عبدالرحمان کیانی
تخصص : Backend developer
@abdolrahman 2 سال پیش مطرح شد
1

ورودی خروجی گرفتن در جاوا اسکریپت خالی با اونی که تو مرورگر استفاده میکنیم فرق داره
برای گرفتن ورودی از readline() و برای خروجی از print() استفاده کن


میلاد
تخصص : توسعه دهنده وب
@maildzamani80 2 سال پیش مطرح شد
0

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


محمد شریف احمدی
تخصص : یک عدد برنامه نویس
@mrahmadi 1 سال پیش مطرح شد
0

سلام، برای حل سوالات الگوریتمی با JavaScript بهترین راه حل استفاده از توابع ریاضی و دستورات شرطی می‌باشد. در ادامه، به شما نحوه حل سوال الگوریتمی کوئرا که در لینکی که در پرسش داده شد، داده شده است را با JavaScript توضیح می‌دهیم:

دریافت عدد n:
ابتدا تعداد عدد‌هایی که باید دریافت شود (n) را دریافت می‌کنیم. برای این کار می‌توان از دستور prompt() استفاده کرد. مثال:

let n = prompt("Enter the number of inputs: ");

دریافت n عدد:

پس از دریافت تعداد n، باید n عدد را دریافت کنیم. برای دریافت این عدد‌ها، از حلقه for به صورت زیر استفاده می‌کنیم:

let nums = [];
for (let i = 0; i < n; i++) {
  nums.push(parseInt(prompt(`Enter the number #${i+1}: `)));
}

پیدا کردن با بزرگترین تفاضل بین اعداد:

برای پیدا کردن با بزرگترین تفاضل بین اعداد، ابتدا باید عدد‌های ورودی را به صورت صعودی مرتب کرد. برای این‌کار، می‌توان از دستور sort() استفاده کرد:

nums.sort(function(a, b){return a-b});

سپس برای پیدا کردن با بزرگترین تفاضل بین اعداد، از یک حلقه for به صورت زیر استفاده می‌کنیم:

let maxDiff = 0;
for (let i = 0; i < nums.length - 1; i++) {
  let diff = nums[i+1] - nums[i];
  if (diff > maxDiff) {
    maxDiff = diff;
  }
}

نمایش جواب: در این مرحله، با بزرگترین تفاضل را در قطعه کد بالا گرفتیم. حالا برای نمایش جواب، از دستور alert() استفاده می‌کنیم. مثال:

alert(`The maximum difference is ${maxDiff}`);

کد نهایی برای حل این سوال، به صورت کامل به صورت زیر است:

let n = prompt("Enter the number of inputs: ");

let nums = [];
for (let i = 0; i < n; i++) {
  nums.push(parseInt(prompt(`Enter the number #${i+1}: `)));
}

nums.sort(function(a, b){return a-b});

let maxDiff = 0;
for (let i = 0; i < nums.length - 1; i++) {
  let diff = nums[i+1] - nums[i];
  if (diff > maxDiff) {
    maxDiff = diff;
  }
}

alert(`The maximum difference is ${maxDiff}`);

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام