함수를 배웠으니, 일차 방정식
을 다시 돌아보자. ax + b = 0은 일차 함수
인 y = ax + b와 유사하다. y 대신 0이 들어간 것이다. y = ax + b라는 함수에서 어떤 x를 넣으면 y가 0이 될까를 찾는 것이다.
앞서 말한 것처럼 일차 방정식은 다음 두 함수의 만나는 점으로 생각할 수 있다.
두개의 일차함수를 그려보자.
코드는 일차 방정식을 푸는 것과 일차 함수를 그리는 것을 합한 것이다. 해가 항상 그래프의 한 가운데 오도록, 방정식의 해를 그리는 함수의 마지막 인자(Parameter)로 넣었다.
위의 내용을 이해했다면, 연립방정식도 유사하게 할 수 있겠다라는 생각이 떠오를 것이다.
함수와 방정식
앞서 말한 것처럼 일차 방정식은 다음 두 함수의 만나는 점으로 생각할 수 있다.
두개의 일차함수를 그려보자.
일차 방정식 (ax + b = 0)
답:
코드는 일차 방정식을 푸는 것과 일차 함수를 그리는 것을 합한 것이다. 해가 항상 그래프의 한 가운데 오도록, 방정식의 해를 그리는 함수의 마지막 인자(Parameter)로 넣었다.
<!DOCTYPE html>
<html>
<title>일차 방정식과 일차 함수</title>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart(a = 2, b = 1, origin = -0.5) {
var data = new google.visualization.DataTable();
data.addColumn('number', 'x');
data.addColumn('number', 'y');
data.addColumn('number', 'y=0');
for (var i = 0; i < 9; i++) {
var x = (i - 4)*0.5 + origin;
var y1 = a * x + b;
var y2 = 0;
data.addRow([x, y1, y2]);
}
var options = {
title: 'y = ' + a + 'x + ' + b + ", y = 0",
legend: {position: 'in'},
hAxis: {title: 'x'},
vAxis: {title: 'y'},
pointSize: 10
};
var chart = new google.visualization.LineChart(document.getElementById('chart'));
chart.draw(data, options);
}
</script>
<body>
<h4>일차 방정식 (ax + b = 0)</h4>
<form>
a: <input type="text" id="a" value="2"><br><br>
b: <input type="text" id="b" value="1"><br><br>
<input type="button" id="solve" value="해 구하기"><br><br>
</form>
<p id="result">답: </p>
<div id="chart" style="width: 90%; height: 500px"></div>
<script>
document.getElementById("solve").addEventListener("click", calc);
function calc() {
// 입력된 문자열을 숫자로 바꾸기
a = Number(document.getElementById("a").value);
b = Number(document.getElementById("b").value);
if (isNaN(a) || isNaN(b)) {
document.getElementById("result").innerHTML = "숫자를 입력하세요.";
return;
}
var ans = 0;
if (a == 0) {
if (b == 0) {
document.getElementById("result").innerHTML = "x = 부정 (모두 해가 됩니다.)";
}
else {
document.getElementById("result").innerHTML = "x = 불능 (가능한 해가 없습니다.)";
}
}
else {
ans = -b / a;
document.getElementById("result").innerHTML = "x = " + ans;
}
drawChart(a, b, ans);
}
</script>
</body>
</html>
위의 내용을 이해했다면, 연립방정식도 유사하게 할 수 있겠다라는 생각이 떠오를 것이다.
댓글
댓글 쓰기