Реактивно добавяне в масив в React

Нека да работим с реактивно добавяне на елементи в масив. Нека за пример имаме масив, който се извежда като списък ul:

jsxfunction App() {
  const [notes, setNotes] = useState([1, 2, 3, 4, 5]);
  
  const result = notes.map((note, index) => {
    return <li key={index}>{note}</li>;
  });
  
  return <div>
    <ul>
      {result}
    </ul>
  </div>;
}
Задание 1

Направете бутон, при натискането на който ще се добавя нов елемент в края на масива, като по този начин добавя нов li в края на тага ul.

Задание 2

Направете вход и бутон. При натискане на бутона нека текстът от входа стане нов таг li в края на тага ul.