이제 격자를 생성하는 코드가 있습니다. 이 작업은 10 분 동안 완료되며 참가자는 가능한 한 많은 질문에 답변해야합니다. 그리드에서 음영 처리 된 정사각형 수에 대한 대답을 입력 할 때마다 새 모눈이 나타납니다. 현재 나의 문제는 답이 주어진 후에 프로그램이 해답이 맞는지 아닌지를 평가하고 새로운 그리드를로드해야한다는 것입니다. 이 프로세스는 10 분이 끝날 때까지 반복되어야하며 프로그램이 대답이 맞는지 아닌지를 확인한 후 정답 수를 업데이트해야합니다. 작업은 PyCharm 편집기로 프로그래밍되어 있으며 작업을 위해 설정된 시간이 끝날 때까지는이 시퀀스가 반복되지 않습니다.격자를 html로 표시
코드 : 내가 예와 간단한 바이올린을 만들었습니다
{% block styles %}
<style>
table, tr, td {
border: 1px solid #000000;
}
.bg-black {
background-color: #808080;}
</style>
{% endblock styles %}
{% block scripts %}
<script>
var effort_correct, effort_incorrect, effort_attempt, answer;
var matrix = [];
var height = Math.floor((Math.random() * 7) + 5);
var width = Math.floor((Math.random() * 7) + 5);
var gridSize = height * width;
var solution = 0;
for (var i = 0; i < height; i++) {
matrix[i] = [];
for (var j = 0; j < width; j++) {
if (Math.random() < 0.5) {
matrix[i][j] = 1;
solution++;
} else {
matrix[i][j] = 0;
}
}
}
function render(grid) {
var html = '<table><tbody>';
for (var k = 0; k < height; k++) {
html += '<tr>';
for (var l = 0; l < width; l++) {
html += grid[k][l] ? '<td class="bg-black"> </td>' :
'<td> </td>';
}
html += '</tr>'
}
html += '</tbody></table>';
return html;
}
document.querySelector('#grid').innerHTML = render(matrix);
function score(answer) {
if (answer == solution) {
effort_correct++;
} else {
effort_incorrect++;
}
effort_attempt++;
}
</script>
{% endblock scripts %}
{% block title %}
Task 1: Stage 1
{% endblock %}
{% block content %}
<head>
<style>
p.text-center {text-align: center;}
p.thick {font-weight: bold;}
</style>
</head>
<p-class text-center>
<div id="grid"></div>
<br>
<br>
{% formfield player.answer with label="The number of shaded squares is:" %}
<br>
<br>
Number of correct answers: {{score}}
</p-class>
<br>
<br>
<button onclick="score(player.answer)">Submit</button>
{% endblock %}
당신이 * 아무것도 *을 시도한 적이 있습니까? – Li357
스택 오버플로에 오신 것을 환영합니다. Minimal, Complete 및 Verifiable 질문을 만드는 방법에 대한 자세한 내용은 [여기를 읽으십시오] (http://stackoverflow.com/help/mcve)를 참조하십시오. – Toby