Prompt ChatGPT - JS

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>