30.05
This commit is contained in:
55
Tematy/T55/T55.1/index.php
Normal file
55
Tematy/T55/T55.1/index.php
Normal file
@@ -0,0 +1,55 @@
|
||||
<!doctype html>
|
||||
<html lang="pl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport"
|
||||
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>T55.1</title>
|
||||
<link rel="stylesheet" href="../style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<h1>Zadanie T55.1</h1>
|
||||
<h2>Autor: Jakub Grzegorczyk</h2>
|
||||
</header>
|
||||
<div class="box">
|
||||
<p>Dana jest tablica zawierająca liczby. Napisz funkcję, która po otrzymaniu tej tablicy jako argumentu zwraca sumę dwóch najmniejszych liczb zapisanych w tablicy.</p>
|
||||
</div>
|
||||
<div class="box">
|
||||
<?php
|
||||
$tablica = [5, 3, 8, 1, 4, 2];
|
||||
function sumaNajmniejszych($tablica) {
|
||||
sort($tablica);
|
||||
return $tablica[0] + $tablica[1];
|
||||
}
|
||||
function splitInput($input): array
|
||||
{
|
||||
$numbers = explode(',', $input);
|
||||
return array_map('trim', $numbers);
|
||||
}
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||
$input = htmlspecialchars($_POST['tablica']);
|
||||
$tablica = splitInput($input);
|
||||
$tablica = array_map('intval', $tablica); // Konwersja do liczb całkowitych
|
||||
if (count($tablica) < 2) {
|
||||
echo "Podaj co najmniej dwie liczby.<br>";
|
||||
echo "<button><a href='index.php'>Powrót do formularza</a></button>";
|
||||
} else {
|
||||
$suma = sumaNajmniejszych($tablica);
|
||||
echo "Podane liczby: " . implode(', ', $tablica) . "<br>";
|
||||
echo "Suma dwóch najmniejszych liczb: $suma<br>";
|
||||
echo "<button><a href='index.php'>Powrót do formularza</a></button>";
|
||||
}
|
||||
} else {
|
||||
echo '<form action="index.php" method="post">
|
||||
<label for="tablica">Podaj liczby oddzielone przecinkami: </label><br>
|
||||
<input type="text" name="tablica" id="tablica" placeholder="1,2,3,4,5,6" required><br><br>
|
||||
<button type="submit">Oblicz</button>
|
||||
<br>
|
||||
</form>';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
54
Tematy/T55/T55.2/index.php
Normal file
54
Tematy/T55/T55.2/index.php
Normal file
@@ -0,0 +1,54 @@
|
||||
<!doctype html>
|
||||
<html lang="pl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport"
|
||||
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>T55.2</title>
|
||||
<link rel="stylesheet" href="../style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<h1>Zadanie T55.2</h1>
|
||||
<h2>Autor: Jakub Grzegorczyk</h2>
|
||||
</header>
|
||||
<div class="box">
|
||||
<p>Dana jest tablica zawierająca imiona. Napisz funkcję, która wypisuje ilość imion żeńskich zapisanych w tablicy. Dla uproszczenia zakładamy, że imiona żeńskie to te, które kończą się na literę "a". Proszę uwzględnić imiona Kuba i Barnaba.</p>
|
||||
</div>
|
||||
<div class="box">
|
||||
<?php
|
||||
function splitAndLowerText($imiona): array
|
||||
{
|
||||
$imiona = strtolower($imiona);
|
||||
$imiona = explode(", ", $imiona);
|
||||
return $imiona;
|
||||
}
|
||||
function ktoreZenskie($imiona): int
|
||||
{
|
||||
$imiona = splitAndLowerText($imiona);
|
||||
$licznik = 0;
|
||||
foreach ($imiona as $imie) {
|
||||
if (mb_substr($imie, -1) == "a" && $imie != "kuba" && $imie != "barnaba") {
|
||||
$licznik++;
|
||||
}
|
||||
}
|
||||
return $licznik;
|
||||
}
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||
$imiona = htmlspecialchars($_POST["imiona"]);
|
||||
$liczbaZenskich = ktoreZenskie($imiona);
|
||||
echo "Podane imiona: " . htmlspecialchars($imiona) . "<br>";
|
||||
echo "Liczba imion żeńskich: " . $liczbaZenskich . "<br>";
|
||||
echo '<button><a href="index.php">Powrót do formularza</a></button>';
|
||||
} else {
|
||||
echo '<form action="index.php" method="post">
|
||||
<label for="imiona">Podaj imiona oddzielone przecinkami: </label><br>
|
||||
<input type="text" name="imiona" id="imiona" placeholder="Anna, Kasia, Kuba, Barnaba" required><br>
|
||||
<button type="submit">Oblicz</button>
|
||||
</form>';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
43
Tematy/T55/T55.3/index.php
Normal file
43
Tematy/T55/T55.3/index.php
Normal file
@@ -0,0 +1,43 @@
|
||||
<!doctype html>
|
||||
<html lang="pl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport"
|
||||
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>T55.3</title>
|
||||
<link rel="stylesheet" href="../style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<h1>Zadanie T55.3</h1>
|
||||
<h2>Autor: Jakub Grzegorczyk</h2>
|
||||
</header>
|
||||
<div class="box">
|
||||
<p>Dane są dwie tablice. Napisz funkcję, która otrzymuje obie tablice w argumencie i zwraca posortowaną tablicę zawierającą wszystkie elementy z pierwszej i drugiej tablicy.</p>
|
||||
</div>
|
||||
<div class="box">
|
||||
<?php
|
||||
function mergeAndSort($tab1, $tab2) {
|
||||
$result = array_merge($tab1, $tab2);
|
||||
sort($result);
|
||||
return $result;
|
||||
}
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||
$tab1 = htmlspecialchars($_POST['tab1']) !== null;
|
||||
$tab2 = htmlspecialchars($_POST['tab2']) !== null;
|
||||
echo "<p>Posortowana tablica: " . implode(', ', mergeAndSort($tab1, $tab2)) . "</p>";
|
||||
echo '<button><a href="index.php">Powrót do formularza</a></button>';
|
||||
} else {
|
||||
echo '<form method="post" action="">
|
||||
<label for="tab1">Tablica 1 (oddzielona przecinkami):</label><br>
|
||||
<input type="text" id="tab1" name="tab1" placeholder="1,2,3" required><br><br>
|
||||
<label for="tab2">Tablica 2 (oddzielona przecinkami):</label><br>
|
||||
<input type="text" id="tab2" name="tab2" placeholder="4,5,6" required><br><br>
|
||||
<button type="submit">Sortuj i połącz</button>
|
||||
</form>';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
64
Tematy/T55/T55.4/index.php
Normal file
64
Tematy/T55/T55.4/index.php
Normal file
@@ -0,0 +1,64 @@
|
||||
<!doctype html>
|
||||
<html lang="pl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport"
|
||||
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>T55.4</title>
|
||||
<link rel="stylesheet" href="../style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<h1>Zadanie T55.4</h1>
|
||||
<h2>Autor: Jakub Grzegorczyk</h2>
|
||||
</header>
|
||||
<div class="box">
|
||||
<p>Napisz funkcję, która dla podanej daty w postaci mm, dd, YY sprawdzi, czy jest to prawidłowa data i jeśli tak sprawdzi, czy jest to data z przeszłości. Jeśli tak funkcja wypisze słowo „historia”, a jeśli nie wypisze „teraźniejszość lub przyszłość”. W przypadku błędnej danej funkcja kończy działanie i wyświetla komunikat o błędnej dacie.</p>
|
||||
</div>
|
||||
<div class="box">
|
||||
<?php
|
||||
function sprawdzDate($data) {
|
||||
$data = explode(" ", $data);
|
||||
if (count($data) != 3) {
|
||||
return "Błędny format daty. Użyj formatu mm dd YY.";
|
||||
}
|
||||
|
||||
list($mm, $dd, $yy) = $data;
|
||||
|
||||
if (!checkdate($mm, $dd, $yy)) {
|
||||
return "Błędna data.";
|
||||
}
|
||||
|
||||
$currentDate = new DateTime();
|
||||
$inputDate = strlen($yy) === 2
|
||||
? DateTime::createFromFormat('m d y', "$mm $dd $yy")
|
||||
: DateTime::createFromFormat('m d Y', "$mm $dd $yy");
|
||||
|
||||
if ($inputDate === false) {
|
||||
return "Błędna data.";
|
||||
}
|
||||
|
||||
if ($inputDate < $currentDate) {
|
||||
return "historia";
|
||||
} else {
|
||||
return "teraźniejszość lub przyszłość";
|
||||
}
|
||||
}
|
||||
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||
$data = htmlspecialchars($_POST['data']);
|
||||
$result = sprawdzDate($data);
|
||||
echo htmlspecialchars($result) . '<br>';
|
||||
echo '<button><a href="index.php">Powrót do formularza</a></button>';
|
||||
} else {
|
||||
echo '<form action="index.php" method="post">
|
||||
<label for="data">Wprowadź datę w formacie mm dd YY</label><br>
|
||||
<input type="text" name="data" id="data" placeholder="mm dd YY" required><br>
|
||||
<button type="submit">Sprawdź datę</button>
|
||||
</form>';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
54
Tematy/T55/T55.5/index.php
Normal file
54
Tematy/T55/T55.5/index.php
Normal file
@@ -0,0 +1,54 @@
|
||||
<!doctype html>
|
||||
<html lang="pl">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport"
|
||||
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>T55.5</title>
|
||||
<link rel="stylesheet" href="../style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<h1>Zadanie T55.5</h1>
|
||||
<h2>Autor: Jakub Grzegorczyk</h2>
|
||||
</header>
|
||||
<div class="box">
|
||||
<p>Napisz funkcję, która na podstawie danych pobranych z tablicy zwracanej przez funkcję getdate() wyświetli bieżącą datę. W dacie miesiąc ma być wyświetlony w postaci tekstu w języku polskim.</p>
|
||||
</div>
|
||||
<div class="box">
|
||||
<?php
|
||||
function getPolishMonth($month): string
|
||||
{
|
||||
$months = [
|
||||
1 => 'styczeń',
|
||||
2 => 'luty',
|
||||
3 => 'marzec',
|
||||
4 => 'kwiecień',
|
||||
5 => 'maj',
|
||||
6 => 'czerwiec',
|
||||
7 => 'lipiec',
|
||||
8 => 'sierpień',
|
||||
9 => 'wrzesień',
|
||||
10 => 'październik',
|
||||
11 => 'listopad',
|
||||
12 => 'grudzień'
|
||||
];
|
||||
return $months[$month];
|
||||
}
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||
$data = getdate();
|
||||
$dzien = $data['mday'];
|
||||
$miesiac = getPolishMonth($data['mon']);
|
||||
$rok = $data['year'];
|
||||
echo "Bieżąca data to: $dzien $miesiac $rok<br>";
|
||||
echo '<button><a href="index.php">Powrót do formularza</a></button>';
|
||||
} else {
|
||||
echo '<form method="post" action="index.php">
|
||||
<button class="aloneButton" type="submit">Pobierz datę</button>
|
||||
</form>';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
Tematy/T55/style.css
Normal file
71
Tematy/T55/style.css
Normal file
@@ -0,0 +1,71 @@
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
body {
|
||||
font-family: Verdana, serif;
|
||||
background: #ffffff;
|
||||
margin: 15px;
|
||||
font-size: 0.9em;
|
||||
}
|
||||
header {
|
||||
border: 2px solid black;
|
||||
border-radius: 1em;
|
||||
padding: 10px 20px;
|
||||
box-shadow: rgba(0, 0, 0, 0.2) 3px 3px 5px;
|
||||
background: #f0f0f0;
|
||||
}
|
||||
|
||||
input {
|
||||
margin-top: 5px;
|
||||
margin-bottom: 5px;
|
||||
width: 30%;
|
||||
border: black 2px solid;
|
||||
border-radius: 0.5em;
|
||||
height: 2em;
|
||||
}
|
||||
|
||||
button {
|
||||
padding: 5px;
|
||||
width: 30%;
|
||||
border: black 2px solid;
|
||||
border-radius: 0.5em;
|
||||
font-weight: bold;
|
||||
margin-top: 5px;
|
||||
}
|
||||
pre {
|
||||
font-family: Verdana, serif;
|
||||
}
|
||||
|
||||
.box {
|
||||
border: 2px solid black;
|
||||
padding: 15px 20px;
|
||||
border-radius: 1em;
|
||||
margin: 15px 0 10px 0;
|
||||
box-shadow: rgba(0, 0, 0, 0.2) 3px 3px 5px;
|
||||
}
|
||||
|
||||
.box h3 {
|
||||
cursor: pointer;
|
||||
}
|
||||
td {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
tr {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.y {
|
||||
background: yellow;
|
||||
}
|
||||
|
||||
.b {
|
||||
background:blue;
|
||||
}
|
||||
.aloneButton {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user