// 二次元配列データ
let data = [
["オフライン", "101号室", "ネット"],
["オフライン", "101号室", "電話"],
["オフライン", "102号室", "ネット"],
["オフライン", "103号室", "電話"],
["オフライン", "103号室", "テレビ"]
];
// 世帯数の断の数をカウントし、マンションの状態を判定する関数
function checkStatus(data) {
// オンラインの世帯数を初期化
let onlineCount = 0;
// 配列の長さを取得
let length = data.length;
// 配列をループしてオンラインの世帯数をカウント
for (let i = 0; i < length; i++) {
// 配列の要素を取得
let element = data[i];
// オンラインかどうか判定
if (element[0] === "オンライン") {
// オンラインならカウントアップ
onlineCount++;
}
}
// マンションの状態を初期化
let status = "";
// オンラインの世帯数によってマンションの状態を判定
if (onlineCount === 0) {
// オンラインの世帯数が0なら全断
status = "マンション全断";
} else if (onlineCount === length) {
// オンラインの世帯数が配列の長さと同じなら復旧
status = "復旧";
} else {
// オンラインの世帯数がそれ以外なら一部断
status = "一部断";
}
// コンソールに結果を表示
console.log("オンラインの世帯数: " + onlineCount);
console.log("マンションの状態: " + status);
}
// 関数を実行
checkStatus(data);