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

حل مسئله وبسایت کوئرا

سلام دوستان وقتتون بخیر
https://quera.ir/problemset/technology/57760/%D8%B3%D8%A4%D8%A7%D9%84-php-%D8%AA%D8%A7-%D9%86%D9%88%D8%B1%D9%88%D8%B2
من تو حل این مسئله مشکل دارم و نمیتونم کدش رو بزنم
اگه کسی بلده لطفا کمک کنه


ثبت پرسش جدید
علی ساکی
تخصص : برنامه‌نویس
@3alisaki 4 سال پیش آپدیت شد
1

سلام، این حل سوال شما است:

<?php
$date = readline();
// وقتی میگوییم ما در ماه 2 هستیم این به این معنی نیست که ما دو ماه گذروندیم بلکه 1 ما به همین دلیل ما از ماه یک را کم میکنبم
$month = intval(explode('/', $date)[1]) - 1;
// وقتی میگوییم ما در روز 2 ماه هستیم این به این معنی نیست که ما دو رو روز از گذروندیم بلکه 1 روز از ماه ما به همین دلیل از روز یک را کم میکنبم
$day = intval(explode('/', $date)[2]) - 1;
// روز های گذرونده شده از سال
$days = $day;
if ($month > 6) {
  $days += 186;
  $days += ($month - 6) * 30;
} else {
  $days += $month * 31;
}
$result = 365 - $days;
echo $result;
?>

Reza
تخصص : برنامه نویس وب
@Rezanp7 4 سال پیش مطرح شد
0

@3alisaki
ممنون.
منم اینو حل کرده بودم اما تابع readline رو اولش نمیزاشتم برا همین اشتباه در میومد.
یه توضیح در مورد این تابع میدید؟


علی ساکی
تخصص : برنامه‌نویس
@3alisaki 4 سال پیش آپدیت شد
1

سلام

تابع readline در حالت script ها استفاده میشود.
برای اینکه منظور من رو متوجه بشید باید به شما بگم که شما کد پی اچ پی را میتوانید در دو جا اجرا کنی. یکی که معروفترین هست که وبسایت یا همون وب سرور هست و دوم در cmd (Command Prompt) یا ترمینال (Terminal) هست.
شما میتوانید از طریق PHP یک نرم افرای را بسازید که در ترمینال کار کند. و برای اینکه از کاربر در این وضعیت اطلاعاتی را دریافت کنید از این تابع استفاده میکنید. وقتی این تابع را فراخونی میکنید اجرای نرم افزار در این نقطه متوقف میشود و کونسول منظر اینکه کاربر با کیبورد اطلاعاتی را وارد کند و اینتر بزند می موند. بعد از این اجرای برنامه ادامه میکند و چیزی را که کاربر وارد کرده را از طریق این تابع ریترن یا برگشت داده می شود که در این مثال چیزی را که کاربر وارد میکند تاریخ هست که از طریق این تابع در متغییر $date حفظ میشود.
شما میتوانید یک رشته را به پارامتر اول این تابع ارسال کنید که در این صورت این رشته در صفحه echo می شود که معمولا یک پیامی مثل "Please enter the date: " هست. ابته شما میتوانید به جای:

$date = readline('Please enter date: ');

این:

echo 'Please enter date: ';
$date = readline();

را استفاده کنید که مطابق هم هستند.

برای درک بیشتر مثال زیر را انجام دهید:

  1. ابتدا فایل test.php را با محتویات زیر را بسازید.

    <?php
    $date = readline('Please enter date: ');
    // وقتی میگوییم ما در ماه 2 هستیم این به این معنی نیست که ما دو ماه گذروندیم بل>
    $month = intval(explode('/', $date)[1]) - 1;
    // وقتی میگوییم ما در روز 2 ماه هستیم این به این معنی نیست که ما دو رو روز از گ>
    $day = intval(explode('/', $date)[2]) - 1;
    // روز های گذرونده شده از سال
    $days = $day;
    if ($month > 6) {
      $days += 186;
      $days += ($month - 6) * 30;
    } else {
      $days += $month * 31;
    }
    $result = 365 - $days;
    echo $result . PHP_EOL;
    ?>
  2. سپس ترمینال یا cmd را باز کنید و به پوشه محل فایل بروید و برای اجرای آن دستور زیر را اجرا کنید ```bash
    php test.php

    نکته: باید پوشه محل نصب PHP توی PATH شما وجود داشته باشد در غیر این صورت باید به شکل کامل محل نصب PHP در دستور تعیین کنید مثلا:
    ```bash
    C:\xampp\php\php.exe test.php
  3. سپس یک تاریخ را وارد کنید و نتیجه را خواهید دید.

چرا باید اینجا از این تابع استفاده میکنیم؟

در ضمن چرا این جا باید از این دستور باید استفاده کنید ظاهرا که این سایتی که لینک دادید برای تست کد ان را به حالت اسکریپت اجرا میکیند و از طریق Console تاریخ را ارسال میکند. اگر خوب متوجه صفحه ای که ارسال کردید میشوید این موضوع در توضیحات آن ذکر شده است.

موفق باشید.


Reza
تخصص : برنامه نویس وب
@Rezanp7 4 سال پیش مطرح شد
1

@3alisaki
ممنون از توضیحاتتون♥


Parvaz
@p.taghiloo.1400 3 سال پیش آپدیت شد
0

سلام .
میشه لطفا سوال های 1.آلفا قنطورس 2. عدد خوب 3. مربع توخالی

  1. یافتن عدد اول 5. کتابخانۀ مورتی 6. طرح سوال از سایت quera رو برام حل کنید . ممنون میشم 🙏
    هر کی میتونه کمکم کنه . خواهش می کنم . به کمکتون خیلی احتیاج دارم .
    @3alisaki

Parvaz
@p.taghiloo.1400 3 سال پیش مطرح شد
0

سلام
لطف میکنید سوالات 1. طرح سوال 2.کتابخانۀ مورتی 3.یافتن عدد اول 4.مربع توخالی 5. عدد خوب 6.آلفا قنطورس از سایت quera رو برام حل کنید . ( با زبان C ) ممنون میشم از لطفتون . @3alisaki @websaz @endworld @m.mahdiparsa2009 @Rezanp7 @gomnam @erfanmohseni406 @
خواهش میکنم برام بنویسید برنامه شو خیلی به کمکتون احتیاج دارم .


عرفان محسنی
تخصص : back-End developer
@erfanmohseni406 3 سال پیش مطرح شد
0

@p.taghiloo.1400
با C ؟؟؟؟
من داش حقیقا C کار نکردم و خیلی کمتر شده برنامه نویس هاش ولی شاید کسی باشه کارت رو راه بندازه


منا صالحی
تخصص : دانشجو
@mowna 3 سال پیش مطرح شد
0

سلام وقت همگی بخیر.
کسی هست که بتونه جواب این سوال رو به زبان #C بنویسه؟
https://quera.ir/problemset/3433/


حمید
@kitmhamid 2 سال پیش مطرح شد
0

سلام به همگی،
جواب سوالاتی (که به مرور) حل میکنم رو توی این مخزن میذارم. زبون اصلی سی‌شارپ (#C) هستش.


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

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