09.12
This commit is contained in:
73
Zadania/Z103 - tablica znaków/index.php
Normal file
73
Zadania/Z103 - tablica znaków/index.php
Normal file
@@ -0,0 +1,73 @@
|
||||
<?php
|
||||
?>
|
||||
<!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>Z103 - tablica znaków</title>
|
||||
<link rel="stylesheet" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<h1>Zadanie Z103</h1>
|
||||
<h2>Autor: Jakub Grzegorczyk</h2>
|
||||
</header>
|
||||
<div class="box">
|
||||
<p>Napisz program, który do dwuwymiarowej tablicy o wymiarach 7 x 7 wpisze wygenerowane losowo znaki w zakresie <'a','e'>, wyświetli tę tablicę, a następnie:</p>
|
||||
<ul>
|
||||
<li>wypisze ile razy w tablicy wystąpiła litera 'a',</li>
|
||||
<li>wyświetli te numery wierszy, w których najczęściej wystąpiła litera 'b'.</li>
|
||||
</ul>
|
||||
<p>Program wyświetla te sumy i odpowiada na pytanie, która z nich jest większa, lub czy są równe.</p>
|
||||
</div>
|
||||
<div class="box">
|
||||
<form method="post" action="index.php">
|
||||
<button type="submit">Rozwiąż</button>
|
||||
</form>
|
||||
</div>
|
||||
<?php
|
||||
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
|
||||
$values[] = array();
|
||||
for ($i = 0; $i < 7; $i++) {
|
||||
for ($j = 0; $j < 7; $j++) {
|
||||
$values[$i][$j] = chr(random_int(97, 101));
|
||||
}
|
||||
}
|
||||
$countA = 0;
|
||||
$rowCounts = [];
|
||||
foreach ($values as $i => $row) {
|
||||
$rowCounts[$i] = 0;
|
||||
foreach ($row as $value) {
|
||||
if ($value == 'b') {
|
||||
$rowCounts[$i]++;
|
||||
}
|
||||
if ($value == 'a') {
|
||||
$countA++;
|
||||
}
|
||||
}
|
||||
}
|
||||
$maxCount = max($rowCounts);
|
||||
$rowsWithMax = array_keys($rowCounts, $maxCount);
|
||||
echo '<div class="box">';
|
||||
echo "Tablica 7 x 7:";
|
||||
echo '<table>';
|
||||
for ($i = 0; $i < 7; $i++) {
|
||||
echo '<tr>';
|
||||
for ($j = 0; $j < 7; $j++) {
|
||||
echo '<td>' . $values[$i][$j] . '</td>';
|
||||
}
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
echo "Litera 'a' wystąpiła <b>$countA</b> razy.<br>";
|
||||
echo "Najwięcej liter 'b' wystąpiło w wierszu/wierszach: ";
|
||||
foreach($rowsWithMax as $rowIndex) {echo $rowIndex + 1; if($rowIndex != end($rowsWithMax)) {echo ', ';}}
|
||||
echo " ($maxCount razy)" . '<br>';
|
||||
echo '</div>';
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user