#install npx create-react-app task13 cd task13 #App.js // App.js import React from 'react'; import FunctionalComponent from './FunctionalComponent'; import ClassComponent from './ClassComponent'; function App() { return ( <div> <h1>Task 13a: React Functional and Class Components</h1> <FunctionalComponent /> <ClassComponent /> </div> ); } export default App; #Class Component // ClassComponent.js import React, { Component } from 'react'; class ClassComponent extends Component { constructor() { super(); this.state = { count: 0 }; } componentDidMount() { console.log('Component Mounted'); } componentDidUpdate() { console.log('Component Updated'); } componentWillUnmount() { console.log('Component Will Unmount'); } render() { return ( <div> <h2>Class Component</h2> <p>Count: {this.state.count}</p> <button onClick={() => this.setState({ count: this.state.count + 1 })}> Increase </button> </div> ); } } export default ClassComponent; #fc // FunctionalComponent.js import React, { useState, useEffect } from 'react'; function FunctionalComponent() { const [count, setCount] = useState(0); useEffect(() => { console.log('Component mounted or updated'); return () => { console.log('Component unmounted'); }; }, [count]); return ( <div> <h2>Functional Component</h2> <p>Count: {count}</p> <button onClick={() => setCount(count + 1)}>Increase</button> </div> ); } export default FunctionalComponent;