Диагонали в массиве
Привет всем.
Суть задачи: есть масссив 10*10, необходимо заполонить чётные диагонали с левого верхнего угла единицами.У меня получилось заполнить массив наполовину, дальше не знаю как, есть идея использовать 3 цикла:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Диагонали</title>
<script type="text/javascript">
var arr=new Array(10);
function d(){
for(var i=0;i<arr.length;i++) {
arr[i]=new Array();
for(var j=0;j<arr.length;j++) {
arr[i][j]=0;
}
}
for(var i=1;i<arr.length;i++) {
for(var j=0;j<arr.length;j++) {
if(arr[j][(arr.length-i)-j]==0) arr[j][(arr.length-i)-j]=1;
}
i++;
}
document.getElementById("res").innerHTML=arr.join("<br/>");
}
</script>
</head>
<body onload="d()">
<div id="res">
</div>
</body>
|
Цитата:
чего там сложного? в нечётном заполнение 1 с 0 элемента, в чётном с 1. в цикле для вложенного приращение 2
for(var i=0;i<arr.length;i++) {
for(var j =i%2; ;j<arr[i].length;j=j+2) {
arr[i][j]=1;
}
}
|
Нету, но вложенный массив подобный двумерному.
|
boy_cow,
я тебе ответ выше написал и пересмотри свой код весь... |
boy_cow,
var mas = [];
for (i = 0; i <= 10; i++) {
mas[i] = [];
for (j = 0; j <= 10; j++) {
mas[i][j] = (i == j ? 1 : 0) + (j == 10 ? "\n" : "");
}
}
alert(mas);
|
dmitriymar, мб...но я так хорошо математику не умею использовать...
|
var arr = [];
for(var i=0; i < 10; i++) {
arr[i] = new Array(10);
for(var j=0; j < 10; j++){
arr[i][j] = (i===j && i%2!==0) ? 1 : 0;
}
}
|
lord2kim,
не обижайся, ты просто неправильно условие прочитал-там все чётные диагонали нужно заполнить 1 а вот про заполнение нулями там ни слова :) |
Цитата:
|
a_l,
ты свой код протесть |
| Часовой пояс GMT +3, время: 14:10. |