과제
2022.08.12/ Hw1

Math.random() 을 이용해서 1~45 사이의 난수를 6개 추출 하는 프로그램을 작성
조건 1.중복 되지 않는 값을 구해야함.

조건 2.구해진 값을 오름차순으로 정렬해서 출력

 

 

의도

Math 객체 함수 사용

난수발생 함수 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220812/20220812_hw1.html

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<script>

/* 과제. Math.random()을 이용해서 1~45 사이의 난수를 6개 추출 하는 프로그램을 작성
(조건 1.중복 되지 않는 값을 구해야함, 2.구해진 값을 오름차순으로 정렬해서 출력) */

	// 배열 선언
	var random = Array();
	
	// 난수 발생, 중복검사, 정렬
	for(var i = 0; i < 6; i++) {
		random[i] = Math.ceil(Math.random() * 45);	// 1 ~ 45 난수 발생
		for(var j = 0; j < i; j++) {
			// 중복검사
			if(random[i] == random[j]){
				i--;
				break;
			}
			// 정렬
			if(random[i] < random[j]) {
				random.splice(j, 0, random[i])// 그 j의 자리에 넣어야함
				random.pop(); // 그리고 맨 마지막의 random[i] 삭제
			}
		}
	}
	
	//출력
	document.write("번호 : " + random + "<br>");
//	document.write(random.sort() + "<br>"); 는 안된다.
	
	

	
</script>
</body>
</html>

 

 

출력

 

 

강사님 코드

<html>
 <head>
  <meta charset="UTF-8">
  <title> lotto </title>
  <script>

function find(){
	var lotto = new Array();

	for(var i=0; i<6; i++){
		// 1~45 난수 발생 부분 
//		lotto[0]=10; lotto[1]=10; 
		lotto[i] = Math.floor(Math.random()*45)+1;

		//중복 검사 부분
		for(var j=0; j<i; j++){
			if(lotto[i] == lotto[j]){
				i--;
				break;
			}
		}
	}
//	lotto.sort();

// 정렬방식 : 오름차순 (1,2,3....)
  lotto.sort(function(a,b){
   return a-b;
  });

// 정렬방식 : 내림차순 (10,9,8...)
//  lotto.sort(function(a,b){
//   return b-a;
//  });

    document.write(lotto);

//	for(var k=0; k<6; k++){
//		document.write(lotto[k]+"  ");
//	}

}
  </script>
 </head>

 <body>
 <form>
	<input type=button value="추첨하기" onClick="find()">
 </form> 
 </body>
</html>

과제
2022.08.11/ Hw1

구구단(2~9단)을 열방향(세로방향)으로 출력하는 프로그램을  작성하세요 (테이블 태그를 사용해서 처리)

참고사진

 

 

의도

Javascript 제어문 사용

Javascript 내에서 HTML 태그 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220811/20220811_hw1.html

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
caption {
	font-size : 30px;
	font-weight: bold;
}
</style>
</head>
<body>
<script>
	// 구구단(2~9단)을 열방향(세로방향)으로 출력하는 프로그램을  작성하세요? (테이블 태그를 사용해서 처리)

	//테이블시작
	document.write("<table border=1 align=center cellpadding = 15>");
	document.write("<caption>구구단</caption>");
	//헤드(1행)
	document.write("<tr>");
	for(var dan = 2; dan <= 9; dan++) {
		document.write("<th>" + dan + "단</th>");
	}
	document.write("</tr>")	;

	//바디(2행)
	document.write("<tr>");
	for(var dan = 2; dan <= 9; dan++) {
		document.write("<td>")
		for(var i = 1; i <= 9; i ++) {
			document.write(dan + " * " + i + " = " + dan*i + "<br>");
		}
		document.write("</td>")
	}
	document.write("</tr>")	;
	//테이블끝
	document.write("</table>");

</script>
</body>
</html>

 

 

출력

 

 

강사님 코드

<!DOCTYPE html>
<html>
<head><title>구구단</title>
	  <meta charset="UTF-8">
	  <style>
	  	td{text-align:center}
	  	caption{font-size:30px}
	  </style>
</head>

<body>
<table border=1 align=center width=800 height=280>
<caption>구구단</caption>
<tr>

<script>

for(var dan=2; dan<=9; dan++)
	document.write("<th>[ "+dan+" 단 ]</th>");
	document.write("</tr><tr>");

for(var dan=2;dan<=9;dan++) {	// 단
//	document.write("<td>"+dan+"단<br>");
	document.write("<td>");
	for(var i=1;i<=9;i++) {
		document.write(dan+"*"+i+"="+dan*i+"<br>");
	}
	document.write("</td>");
}

</script>

</tr>
</table>
</body>
</html>

 

과제
2022.08.04/ Hw1

다음과 같은 모양으로 출력하는 html파일을 작성하세요

 

 

의도

HTML 작성

테이블 작성

colspan 사용

rowspan 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220804/20220804_hw1.html

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>2022.08.04_hw1</title>
</head>
<body>

<table border=1 width=600 height=300 align=center			 
							bgcolor=yellow
							cellspacing=5
							cellpadding=5>
<caption>표 연 습</caption>
<tr>
	<th rowspan=4>신<br>청<br>내<br>역</th>
	<th colspan=2>청소년</th>
	<th colspan=2>노인</th>
	<th rowspan=2>비고</th>
</tr>
<tr align=center>
	<td>남자</td>
	<td>여자</td>
	<td>남자</td>
	<td>여자</td>
</tr>
<tr align=center>
	<td>10</td>
	<td>50</td>
	<td>60</td>
	<td>80</td>
	<td rowspan=2></td>
</tr>
<tr align=center>
	<td>80</td>
	<td>60</td>
	<td>68</td>
	<td>78</td>
</tr>
</table>

</body>
</html>

 

 

출력

 

 

과제
2022.08.01/ Hw1

사원 테이블에서 사원명을 검색하여 사원의 직급을 구해오는 

저장 프로시저를 만들어서 실행하세요

 

 

의도

PL/SQL

저장 프로시저 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220801/2022_08_01_hw1.sql

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

-- Q1. 사원 테이블에서 사원명을 검색하여 사원의 직급을 구해오는 저장 프로시저를 만들어서 실행하세요

-- 프로시저 생성
create or replace procedure job_ename (
    vename in emp.ename%type,
    vjob out emp.job%type)
is
begin
    select job into vjob from emp
    where ename = vename;
end;

-- 바인드 함수 생성
variable var_job varchar2(10);

-- 프로시저 실행
execute job_ename('SCOTT', :var_job);

-- 출력
print var_job;

 

 

출력

 

 

강사님 코드

-- 사원 테이블에서 사원명을 검색하여 사원의 직급을 구해오는 저장 프로시저를 만들어서 실행하세요?

--1. 저장 프로시저 생성
create or replace procedure ename_job(
        vename in emp.ename%type,
        vjob out emp.job%type)
is
begin
    select job into vjob from emp where ename = vename;
end;

--2. 프로시저 목록 확인
select * from  user_source;

--3. 바인드 변수 생성
variable var_job varchar2(10);

--4. 프로시저 실행
execute ename_job('SCOTT', :var_job); 
execute ename_job('KING', :var_job); 
execute ename_job('SMITH', :var_job); 

--5. 바인드 변수로 받은 값 출력
print var_job;

과제
2022.07.25 / Hw3

 직급이 'SALESMAN'인 사원이 받는 급여들의 최소 급여보다 많이 받는 사원들의 

이름과 급여를 출력하되 부서번호가 20번인 사원은 제외한다.(ANY연산자 이용)

 

 

의도

단일행 서브 쿼리 사용

다중행 서브 쿼리 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220725/2022_07_25_hw3.sql

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

-- Q3. 직급이 'SALESMAN'인 사원이 받는 급여들의 최소 급여보다 많이 받는 사원들의 이름과 급여를 출력하되 부서번호가 
--	20번인 사원은 제외한다.(ANY연산자 이용)

-- 1) 단일행 서브쿼리로 풀기
select ename, sal from emp where sal > (select min(sal) from emp where job = 'SALESMAN') and deptno <> 20;
-- 2) 다중행 서브쿼리로 풀기
select ename, sal from emp where sal > any (select sal from emp where job = 'SALESMAN') and deptno <> 20;

 

 

출력

 

 

강사님 코드

-- Q3. 직급이 'SALESMAN'인 사원이 받는 급여들의 최소 급여보다 
-- 많이 받는 사원들의 이름과 급여를 출력하되 부서번호가 
-- 20번이 사원은 제외한다.(ANY연산자 이용)

-- 단일행 서브쿼리
select ename, sal from emp where sal > 
    (select min(sal)  from emp where job='SALESMAN') and deptno != 20;

-- 다중행 서브쿼리
select ename, sal from emp where sal > any
    (select sal from emp where job='SALESMAN') and deptno != 20;

과제
2022.07.25 / Hw2

직급이 'SALESMAN'인 사원이 받는 급여들의 최대 급여보다 많이 받는 사원들의

이름과 급여를 출력하되 부서번호가 20번인 사원은 제외한다.(ALL연산자 이용)

 

 

의도

단일행 서브 쿼리 사용

다중행 서브 쿼리 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220725/2022_07_25_hw2.sql

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

-- Q2. 직급이 'SALESMAN'인 사원이 받는 급여들의 최대 급여보다 많이 받는 사원들의 이름과 급여를 출력하되 부서번호가 
--	20번인 사원은 제외한다.(ALL연산자 이용)

-- 1) 단일행 서브쿼리로 풀기
select ename, sal from emp where sal > (select max(sal) from emp where job = 'SALESMAN') and deptno <> 20;
-- 2) 다중행 서브쿼리로 풀기
select ename, sal from emp where sal > all (select sal from emp where job = 'SALESMAN') and deptno <> 20;

 

 

출력

 

 

강사님 코드

-- Q2. 직급이 'SALESMAN'인 사원이 받는 급여들의 최대 급여보다 많이 받는 
-- 사원들의 이름과 급여를 출력하되 부서번호가 20번인 사원은 제외한다.(ALL연산자 이용)

-- 단일행 서브쿼리
select ename, sal from emp where sal > 
    (select max(sal) from emp where job='SALESMAN') and deptno != 20;
    
-- 다중행 서브쿼리
select ename, sal from emp where sal > all
	(select sal from emp where job='SALESMAN') and deptno != 20;

과제
2022.07.25 / Hw1

SMITH와 동일한 직급을 가진 사원의 이름과 직급을 출력하는 SQL문을 작성 하세요?

 

 

의도

단일행 서브 쿼리 사용

 

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220725/2022_07_25_hw1.sql

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

-- Q1. SMITH와 동일한 직급을 가진 사원의 이름과 직급을 출력하는 SQL문을 작성 하세요?
select ename, job from emp where job = (select job from emp where ename = 'SMITH');

 

 

출력

 

 

강사님 코드

-- Q1. SMITH와 동일한 직급을 가진 사원의 이름과 직급을 출력하는 SQL문을 작성 하세요?
select ename, job from emp where  job = 
    (select job from emp where ename='SMITH') and  ename != 'SMITH';

 

과제
2022.07.22 / Hw3

SCOTT과 동일한 근무지에서 근무하는 사원의 이름을 출력하는 SQL문 작성

 

 

의도

등가 조인 사용

서브 쿼리 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220722/2022_07_22_hw3.sql

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

-- Q3. SCOTT과 동일한 근무지에서 근무하는 사원의 이름을 출력하는 SQL문 작성?
select e.ename from emp e, dept d where e.deptno = d.deptno 
    and d.loc = (select d.loc from emp e, dept d where e.deptno = d.deptno and e.ename = 'SCOTT');
    
-- 또는 부서번호가 같으면 같은 근무지에서 근무하므로 조인없이 서브쿼리만으로 이렇게 해도 될 것 같습니다
select ename from emp where deptno = (select deptno from emp where ename = 'SCOTT');

 

 

출력

 

 

강사님 코드

-- Q3. SCOTT과 동일한 근무지에서 근무하는 사원의 이름을 출력하는 SQL문 작성?
--Ans 3.
select deptno, ename from emp 
   where deptno = (select deptno from emp where ename = 'SCOTT');

과제
2022.07.22 / Hw2

 매니저가 KING 인 사원들의 이름과 직급을 출력하는 SQL문 작성

 

 

의도

셀프 조인 사용

서브 쿼리 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220722/2022_07_22_hw2.sql

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

-- Q2. 매니저가 KING 인 사원들의 이름과 직급을 출력하는 SQL문 작성?
select employee.ename, employee.job from emp employee, emp manager
    where employee.mgr = manager.empno and manager.ename = 'KING';

 

 

출력

 

 

강사님 코드

-- Q2. 매니저가 KING 인 사원들의 이름과 직급을 출력하는 SQL문 작성?
--Ans 2.(2가지 방법)
select employee.ename, employee.job 
    from emp employee, emp manager
    where employee.mgr=manager.empno and manager.ename='KING';
    
select ename, job from emp where mgr = 
    (select empno from emp where ename='KING');

과제
2022.07.22 / Hw1

직급이 MANAGER인 사원의 이름, 부서명을 출력하는 SQL문을
             작성 하세요? (JOIN을 사용하여 처리)

 

 

의도

등가 조인 사용

 

 

깃허브

https://github.com/kindacool/Hw/blob/main/HW20220722/2022_07_22_hw1.sql

 

GitHub - kindacool/Hw

Contribute to kindacool/Hw development by creating an account on GitHub.

github.com

 

 

코드

-- Q1. 직급이 MANAGER인 사원의 이름, 부서명을 출력하는 SQL문을 작성 하세요? (JOIN을 사용하여 처리)
select e.ename, d.dname from emp e, dept d 
    where e.deptno = d.deptno and e.job = 'MANAGER';

 

 

출력

 

강사님 코드

-- Q1. 직급이 MANAGER인 사원의 이름, 부서명을 출력하는 SQL문을 작성 하세요? (JOIN을 사용하여 처리)
--Ans 1. (4가지 방법)
select ename, dname from emp, dept 
   where emp.deptno=dept.deptno  and  job='MANAGER'; 
   
select ename, dname from emp inner join dept 
   on emp.deptno=dept.deptno  where  job='MANAGER'; 
   
select ename, dname from emp inner join dept 
   using(deptno)  where  job='MANAGER'; 
   
select ename, dname from emp natural join dept 
   where job='MANAGER';

+ Recent posts