본문 바로가기

STUDY/JSP

20240308 구구단

728x90

단수를 선택하면 해당하는 단수의 구구단을 출력하거나

전체 출력을 하는 select박스를 만들었다.

 

구구단 출력 버튼을 누르면 value값을 guguAction.jsp로 넘긴다

guguForm.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<!-- 메뉴 -->
	<div>
		<a href="../index.jsp">index</a>
	</div>
	
	<h1>guguForm</h1>

	<form action="./guguAction.jsp">
		<select name="dan">
			<option value="all">전체 출력</option>
			<%
				int i = 2;
				while(i <= 9) {
			%>
					<option value="<%=i%>"><%=i%></option>		
			<%
					i = i + 1;
				}
			%>
		</select>
		<button type="submit">구구단 출력</button>
	</form>
</body>
</html>

 

getParameter()로 구구단 수를 String에 담고

value가 "all"일 경우 중첩 while문을 사용해 모든 구구단을 출력,

나머지 경우는 while문 하나를 통해 해당 구구단을 출력한다.

guguAction.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<!-- 메뉴 -->
	<div>
		<a href="../index.jsp">index</a>
	</div>
	
	<h1>guguAction</h1>
	
	    
	<%
		String dan = request.getParameter("dan");
		if(dan.equals("all")){
			// 2x1=2 2x2=4 2x3=6 ... 2x9=18
		
			int b = 2;	
			while(b <= 9) {
				int a = 1;
				while(a <= 9) {
					// System.out.print(b + "x" + a + "=" + b * a + " ");
	%>
					<span><%=b%> x <%=a%> = <%=b*a%>&nbsp;</span> 
	<%
					a = a + 1;
				}
				b = b + 1;
	%>
				<br>
	<%	
					//System.out.println();
			}
		} else {
			// 2x1=2 2x2=4 2x3=6 ... 2x9=18
			int danNum = Integer.parseInt(dan);
			int i = 1;
			while(i <= 9) {
	%>
				<div>
					<%=danNum%> x <%=i%> = <%=danNum*i%>
				</div>
	<%			
				i = i + 1;
			}
		}
	%>
	
</body>
</html>

 

728x90

'STUDY > JSP' 카테고리의 다른 글

20240312 로또 추첨기  (0) 2024.03.12
20240308 달력(3월)  (0) 2024.03.08
20240307 주민번호 분석기  (0) 2024.03.07
20240307 계산기 페이지  (0) 2024.03.07
20240307 로그인 페이지 구현  (0) 2024.03.07