Untitled
unknown
plain_text
a year ago
6.7 kB
14
Indexable
<div id="content">
<article>
<div class="data">
<p>04.11.2024</p>
</div>
<hr />
<h2>Obsługa plików</h2>
<hr>
<div>
<h4> Zadanie 1: Sprawdzenie czy jest plik i wyświetlenie jego rozmiaru</h4>
<?php
$plik = 'cyfry.txt';
echo filesize($plik)." B";
?>
</div>
<div>
<h4> Zadanie 2: Zapis do pliku i jego wyświetlenie</h4>
<form method='post'>
Imię: <input type='text' name='imie' required><br>
Nazwisko: <input type='text' name='nazwisko' required><br>
<input type='submit' value='Wyslij' style='margin-bottom:10px'>
</form>
<?php
if(isset($_POST['imie']) && isset($_POST['nazwisko']))
{
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
$plik = fopen('dane.txt','a');
fwrite($plik, $imie." ".$nazwisko."\n");
fclose($plik);
}
if (file_exists("dane.txt")) {
$zawartosc = file("dane.txt", FILE_IGNORE_NEW_LINES);
foreach ($zawartosc as $linia) { echo htmlspecialchars($linia) . "<br>"; } }
else {
echo "Plik dane.txt nie istnieje.";
}
?>
</div>
<div>
<h4> Zadanie 3: Liczba odwiedzin</h4>
<?php
$plik = "licznik.txt";
if (file_exists($plik))
{$liczbaOdwiedzin = (int)file_get_contents($plik);}
else {$liczbaOdwiedzin = 0;}
$liczbaOdwiedzin++;
file_put_contents($plik, $liczbaOdwiedzin);
echo "Liczba odwiedzin: " .$liczbaOdwiedzin;
?>
</div>
<div>
<h4> Zadanie 4: Losowanie n liczb i wstawianie do plików podzielnych przez 7</h4>
<form method='post'>
Liczba n: <input type='text' name='liczba' required><br>
<input type='submit' value='Wyslij' style='margin-bottom:10px'>
</form>
<?php
if(isset($_POST['liczba']))
{
$n = $_POST['liczba'];
$plik = fopen('liczby.txt','a');
$liczbypodzielneprzez7 = [];
for ($i = 0; $i < $n; $i++) {
$liczba = rand(-100, 100);
if ($liczba % 7 == 0)
{
fwrite($plik, $liczba . "\n"); $liczbypodzielneprzez7[] = $liczba;
}
}
fclose($plik);
echo "Liczby podzielne przez 7:<br>";
if(!empty($liczbypodzielneprzez7))
{
foreach ($liczbypodzielneprzez7 as $liczba) {
echo htmlspecialchars($liczba) . "<br>";
}
}
else if(empty($liczbypodzielneprzez7)) {
echo "Brak liczb podzielnych przez 7";
}
}
?>
</div>
<div>
<h4> Zadanie 5: Odczyt pliku i zapis odpowiedzi</h4>
<?php
$plik = fopen("cyfry.txt", "r");
$parzyste = 0;
$rosnące = [];
$teSameCyfry = 0;
$suma = 0;
$min = PHP_INT_MAX;
$max = PHP_INT_MIN;
function czyCiągRosnący($liczba) {
$cyfry = str_split($liczba);
for ($i = 1; $i < count($cyfry); $i++) {
if ($cyfry[$i] <= $cyfry[$i - 1])
return false;
}
return true;
}
function czyTeSameCyfry($liczba) {
$cyfry = str_split($liczba);
return count(array_unique($cyfry)) === 1; }
if ($plik) {
while (($liczba = fgets($plik)) !== false) {
$liczba = (int)trim($liczba);
$suma += $liczba;
if ($liczba % 2 == 0) $parzyste++;
if (czyCiągRosnący($liczba)) $rosnące[] = $liczba;
if (czyTeSameCyfry($liczba)) $teSameCyfry++;
if ($liczba < $min) $min = $liczba;
if ($liczba > $max) $max = $liczba;
}
fclose($plik);
}
$średnia = $suma / 1000;
$wyniki = fopen("wyniki.txt", "w");
fwrite($wyniki, "a) Liczba liczb parzystych: $parzyste\n");
fwrite($wyniki, "b) Liczby, których cyfry tworzą ciąg rosnący:\n" . implode("\n", $rosnące) . "\n");
fwrite($wyniki, "c) Wartości ekstremalne: Min: $min, Max: $max\n");
fwrite($wyniki, "d) Liczba liczb składających się z tych samych cyfr: $teSameCyfry\n");
fwrite($wyniki, "e) Średnia wartość wszystkich liczb: $średnia\n");
fclose($wyniki);
if (file_exists("dane.txt")) {
$zawartosc = file("wyniki.txt", FILE_IGNORE_NEW_LINES);
foreach ($zawartosc as $linia) { echo htmlspecialchars($linia) . "<br>"; } }
else {
echo "Plik dane.txt nie istnieje.";
}
?>
</div>
<div class="autor">
<p>autor: Alan Majewski 5TD nr 14</p>
</div>
</article>
</div>Editor is loading...
Leave a Comment