演習: ネストした配列
配列には他の配列を含めることができます:
// Copyright 2023 Google LLC // SPDX-License-Identifier: Apache-2.0 let array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
この変数の型は何ですか?
上のような配列を使って、行列を転置する(行を列にする)関数 transpose を書いてください:
以下のコードを https://play.rust-lang.org/ にコピーして、関数を実装してください。 この関数は 3×3 行列に対してのみ動作します。
// Copyright 2023 Google LLC // SPDX-License-Identifier: Apache-2.0 fn transpose(matrix: [[i32; 3]; 3]) -> [[i32; 3]; 3] { todo!() } fn main() { let matrix = [ [101, 102, 103], // <-- the comment makes rustfmt add a newline [201, 202, 203], [301, 302, 303], ]; println!("Original:"); for row in matrix { println!("{row:?}"); } let transposed = transpose(matrix); println!("\nTransposed:"); for row in transposed { println!("{row:?}"); } }