package MV3500Cohort2024JulySeptember.homework2.Williams; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.util.Scanner; /** * Client file for HW2. * * @author ethanjwilliams */ public class HW2Client { /** * @param args the command line arguments */ public static void main(String[] args) { DatagramSocket socket = null; Scanner scanner = new Scanner(System.in); try { socket = new DatagramSocket(); InetAddress serverAddress = InetAddress.getByName("localhost"); byte[] sendData = new byte[1024]; byte[] receiveData = new byte[1024]; System.out.print("Can you solve my riddle??\n"); System.out.print("Try to solve the riddle: I speak without a mouth and hear without ears. I have no body, but I come alive with wind. What am I?\n"); while (true) { System.out.print("Enter your answer: "); String answer = scanner.nextLine(); sendData = answer.getBytes(); DatagramPacket sendPacket = new DatagramPacket(sendData, sendData.length, serverAddress, 9876); socket.send(sendPacket); DatagramPacket receivePacket = new DatagramPacket(receiveData, receiveData.length); socket.receive(receivePacket); String response = new String(receivePacket.getData(), 0, receivePacket.getLength()); System.out.println("Server Said: " + response); if (response.startsWith("Good")) { break; } } } catch (Exception e) { e.printStackTrace(); } finally { if (scanner != null) { scanner.close(); } if (socket != null && !socket.isClosed()) { socket.close(); } } } }