Prompt ChatGPT - JS

Jestem programistą JS. Potrzebuję programu, który pobierze od użytkownika za pomocą okien dialogowych dwa boki prostokąta, następnie zweryfikuje poprawność danych (liczby) i poinformuje użytkownika o błędach. Jeżeli liczby będą poprawne obliczy pole prostokąta za pomocą funkcji, która będzie przyjmowała 2 argumenty i zwracała ich iloczyn (pole). Jeżeli użytkownik nie wpisze liczb, nie może zostać przepuzczony do kolejnego kroku. Podaj dokument w formacie js, html, css (przykladowe style)





```
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pole prostokąta</title>
<link rel="stylesheet" href="style.css">
<script defer src="script.js"></script>
<style>
body {
font-family: Arial, sans-serif;
background: linear-gradient(to right, #74ebd5, #acb6e5);
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
}
.container {
background: #fff;
padding: 20px 30px;
border-radius: 12px;
box-shadow: 0 6px 15px rgba(0,0,0,0.2);
text-align: center;
}
h1 {
color: #333;
}
button {
padding: 10px 20px;
font-size: 16px;
margin-top: 15px;
border: none;
border-radius: 8px;
background-color: #4CAF50;
color: white;
cursor: pointer;
transition: background 0.3s;
}
button:hover {
background-color: #45a049;
}
</style>
</head>
<body>
<div class="container">
<h1>Obliczanie pola prostokąta</h1>
<p>Kliknij przycisk, aby wprowadzić boki prostokąta.</p>
<button id="start">Rozpocznij</button>
</div>
<script>
// Funkcja do obliczania pola prostokąta
function obliczPole(a, b) {
return a * b;
}
// Funkcja pobierająca poprawną liczbę od użytkownika
function pobierzLiczbe(opis) {
let wartosc;
do {
wartosc = prompt(`Podaj ${opis}:`);
if (wartosc === null) {
alert("Musisz podać wartość, aby kontynuować.");
continue;
}
wartosc = wartosc.replace(",", "."); // zamiana przecinka na kropkę
if (isNaN(wartosc) || wartosc.trim() === "" || Number(wartosc) <= 0) {
alert("Nieprawidłowa wartość! Podaj dodatnią liczbę.");
wartosc = null;
} else {
wartosc = Number(wartosc);
}
} while (wartosc === null);
return wartosc;
}
document.getElementById("start").addEventListener("click", () => {
const bokA = pobierzLiczbe("bok A prostokąta");
const bokB = pobierzLiczbe("bok B prostokąta");
const pole = obliczPole(bokA, bokB);
alert(`Pole prostokąta o bokach ${bokA} i ${bokB} wynosi: ${pole}`);
});
</script>
</body>
</html>