Menu
Coddy logo textTech

Podsumowanie: obliczenia na datach

Część sekcji Logika i przepływ programu ścieżki PHP w Coddy. Lekcja 51 z 68.

challenge icon

Wyzwanie

Łatwy

Otrzymasz trzy dane wejściowe: datę początkową, datę końcową i ciąg formatujący. Pierwsze dwa dane wejściowe to ciągi dat w formacie Y-m-d (przykład: 2024-03-15), a trzecie to wyrażenie modyfikujące, takie jak +5 days, -2 weeks lub +1 month.

Wczytaj wszystkie trzy dane wejściowe, utwórz dwa obiekty DateTime na podstawie daty początkowej i końcowej, zastosuj wyrażenie modyfikujące do daty początkowej, a następnie ustal, która data jest późniejsza: zmodyfikowana data początkowa czy pierwotna data końcowa. Wypisz późniejszą datę w formacie Y-m-d.

Format danych wejściowych:

  • Pierwszy wiersz: ciąg daty początkowej w formacie Y-m-d (przykład: 2024-03-15)
  • Drugi wiersz: ciąg daty końcowej w formacie Y-m-d (przykład: 2024-04-10)
  • Trzeci wiersz: ciąg modyfikujący (przykład: +5 days lub -2 weeks)

Oczekiwane wyjście: Późniejsza data spośród zmodyfikowanej daty początkowej i pierwotnej daty końcowej, sformatowana jako Y-m-d

Spróbuj swoich sił

<?php
// Wczytaj trzy dane wejściowe
$startDate = trim(fgets(STDIN));
$endDate = trim(fgets(STDIN));
$modification = trim(fgets(STDIN));

// TODO: Napisz swój kod poniżej
// Utwórz obiekty DateTime z daty początkowej i końcowej
// Zastosuj modyfikację do daty początkowej
// Porównaj zmodyfikowaną datę początkową z datą końcową
// Ustal, która data jest późniejsza

// Wyświetl późniejszą datę w formacie Y-m-d
echo $laterDate;
?>

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator PHP online