- [연습 문제 46] 소스 코드
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>연습문제 - 함수</title>
<script>
// 함수 선언
function add(n1, n2) {
document.write("곱셈 결과 : " + n1 * n2, "<br>");
}
// 함수 호출
add(10, 20);
</script>
</head>
<body>
</body>
</html>
- [연습 문제 46] 실행 결과
- [연습 문제 47] 소스 코드
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>연습문제 - 함수</title>
<script>
var rightID = "manager";
var rightPW = "1234";
var inputID = prompt("아이디 입력");
var inputPW = prompt("비밀번호 입력");
login(inputID, inputPW);
function login(id, pw) {
if (id == rightID) {
if (pw == rightPW) {
document.write("로그인 성공!", "<br>");
}
else {
document.write("로그인 실패!<br>비밀번호가 틀렸습니다.", "<br>");
}
}
else {
document.write("로그인 실패!<br>아이디가 틀렸습니다.", "<br>");
}
}
</script>
</head>
<body>
</body>
</html>
- [연습 문제 47] 실행 결과
- [연습 문제 48] 소스 코드
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>연습문제 - 함수</title>
<script>
var num = prompt("숫자 입력");
var count = prompt("제곱 횟수 입력");
num = Number(num);
count = Number(count);
square(num, count);
function square(n1, n2) {
var result = n1;
// n의 1승은 n이기 때문에
// 제곱 횟수에서 1을 뺀 만큼을 반복함
// (아래 반복문은 n의 2승부터 result에 곱해짐)
for (var i = 0; i < n2 - 1; i++) {
result *= n1;
}
document.write("결과 : " + result, "<br>");
}
</script>
</head>
<body>
</body>
</html>
- [연습 문제 48] 실행 결과
- [연습 문제 49] 소스 코드
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>연습문제 - 함수</title>
<script>
// 친화수 : 두 수의 쌍에 있어, 어느 한 수의 진약수를 모두 더하면 다른 수가 되는 수
// ex) 220과 284 -> 220의 진약수를 모두 더하면 284, 284의 진약수를 모두 더하면 220
// 따라서 220과 284는 친화수
// 진약수 : 자기 자신을 제외한 양의 약수
// ex) 12의 진약수는 1, 2, 3, 4, 6
var num1 = prompt("숫자 1 입력");
var num2 = prompt("숫자 2 입력");
num1 = Number(num1);
num2 = Number(num2);
var realSum1 = getRealAliquotSum(num1); // num1의 진약수들의 합 저장
var realSum2 = getRealAliquotSum(num2); // num2의 진약수들의 합 저장
// n의 진약수의 합을 구하는 함수
function getRealAliquotSum(n) {
var sum = 0;
// 1부터 자기 자신 전까지 반복하여
// 약수를 모두 sum에 더함
for (var i = 1; i < n; i++) {
if (n % i == 0) {
sum += i;
}
}
// n의 진약수들의 합을 반환
return sum;
}
// num1의 진약수들의 합(realSum1)이 num2와 같고
// num2의 진약수들의 합(realSum2)이 num1과 같으면
// -> 친화수
if (realSum1 == num2 && realSum2 == num1) {
document.write(num1 + "과(와) " + num2 + "는(은) 친화수가 맞습니다.", "<br>");
}
// 친화수가 아니면
else {
document.write(num1 + "과(와) " + num2 + "는(은) 친화수가 아닙니다.", "<br>");
}
</script>
</head>
<body>
</body>
</html>
- [연습 문제 49] 실행 결과
'자바 스크립트 > 연습 문제' 카테고리의 다른 글
[자바 스크립트] 대수의 법칙 증명하기 (0) | 2020.05.14 |
---|---|
[연습 문제] 중첩 반복문 2 (0) | 2020.05.12 |
[연습 문제] 중첩 반복문 1 (0) | 2020.05.12 |
[연습 문제] 반복문 응용 (0) | 2020.05.11 |
[연습 문제] for (0) | 2020.05.08 |