Rubyプログラミング

問題番号 問題 ヒント 回答
1
下記の3×3の行列を二次元配列xとして宣言しなさい.
1 2 3
4 5 6
7 8 9
さらに上記のように出力するプログラムを作成しなさい.
x = [ 
        [ 1 , 2 , 3 ] , 
        [ 4 , 5 , 6 ] , 
        [ 7 , 8 , 9 ] 
    ]

# 以下に配列の要素を一つずつ出力するプログラムを
# 書きなさい
回答
2
上記の配列xを一重のforループを用いて出力しなさい.
なし
回答
3
問題2と同様なプログラムをeachメソッドを用いて作成しなさい.
なし
回答
4
問題2と同様なプログラムをtimesメソッドを用いて作成しなさい.
なし
回答
5
問題2と同様なプログラムを二重のforループを用いて作成しなさい.
なし
回答
6
配列xを下記のように出力するプログラムを作成しなさい.
(以下の問題については,二重のforループを用いてプログラムを記述しなさい)
9 8 7
6 5 4
3 2 1
問題5のプログラムを修正しなさい.
回答
7
配列xにおいて下記のように対角要素以外は0となるように出力
するプログラムを作成しなさい.
1 0 0
0 5 0
0 0 9
問題5のプログラムを修正しなさい.
回答
8
配列xにおいて下記のように対角要素が0となるように出力
するプログラムを作成しなさい.
0 2 3
4 0 6
7 8 0
問題5のプログラムを修正しなさい.
回答
9
配列xにおいて下記のように出力するプログラムを作成しなさい.
0 2 0
0 5 0
0 8 0
問題5のプログラムを修正しなさい.
回答
10
配列xにおいて下記のように出力するプログラムを作成しなさい.
0 0 0
4 5 6
0 0 0
問題5のプログラムを修正しなさい.
回答
11
3×3の二次元配列xの各要素に下記のように値を代入しなさい.
1 2 3
4 5 6
7 8 9
出力するプログラムを作成し,値が代入されているかを確認しなさい.
x = Array.new( 3 )

# 以下,二次元配列xの各要素に数値を代入しなさい.


for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] );
        end
        printf( "\n" );
end
回答
12
問題1の配列xにおいて,各行の合計をそれそれ求め,その結果を配列sumに格納し,
出力するプログラムを作成しなさい.
x = [ 
        [ 1 , 2 , 3 ] , 
        [ 4 , 5 , 6 ] , 
        [ 7 , 8 , 9 ] 
    ]
sum = []
	
# 以下に配列xの各行の合計を配列sumに格納するプログラムを
# 記述しなさい

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
        printf( "| %d\n" , sum[ i ] );
end
回答
13
問題1の配列xにおいて,各列の合計をそれそれ求め,その結果を配列sumに格納し,
出力するプログラムを作成しなさい.
x = [ 
        [ 1 , 2 , 3 ] , 
        [ 4 , 5 , 6 ] , 
        [ 7 , 8 , 9 ] 
    ]
sum = []

# 以下に配列xの各行の合計を配列sumに格納するプログラムを
# 記述しなさい

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%2d " , x[ i ][ j ] )
        end
        printf( "\n" );
end

printf( "----------\n" );
for i in ( 0..2 ) do
	printf( "%2d " , sum[ i ] )
end
printf( "\n" );
回答
14
配列xにおいて下記のように出力するプログラムを作成しなさい.
1 2 0
4 0 6
0 8 9
問題5のプログラムを修正しなさい.
回答
15
3×3の二次元配列xの各要素に下記のように値を代入しなさい.
0 1 0
1 1 1
0 1 0
出力するプログラムを作成し,値が代入されているかを確認しなさい.
x = []

# 以下,二次元配列xの各要素に数値を代入しなさい.

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
	printf( "\n" );
end
回答
16
3×3の二次元配列xの各要素に下記のように値を代入しなさい.
0 0 1
0 0 1
1 1 1
出力するプログラムを作成し,値が代入されているかを確認しなさい.
x = []

# 以下,二次元配列xの各要素に数値を代入しなさい.

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
	printf( "\n" );
end
回答
17
3×3の二次元配列xの各要素に下記のように値を代入しなさい.
1 0 0
1 1 0
1 1 1
出力するプログラムを作成し,値が代入されているかを確認しなさい.
x = []

# 以下,二次元配列xの各要素に数値を代入しなさい.

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
	printf( "\n" );
end
回答
18
3×3の二次元配列xの各要素に下記のように値を代入しなさい.
1 1 1
0 1 1
0 0 1
出力するプログラムを作成し,値が代入されているかを確認しなさい.
x = []

# 以下,二次元配列xの各要素に数値を代入しなさい.

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
	printf( "\n" );
end
回答
19
3×3の二次元配列xの各要素に下記のように値を代入しなさい.
1 1 1
1 1 0
1 0 0
出力するプログラムを作成し,値が代入されているかを確認しなさい.
x = []

# 以下,二次元配列xの各要素に数値を代入しなさい.

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
	printf( "\n" );
end
回答
20
3×3の二次元配列xの各要素に下記のように値を代入しなさい.
0 0 1
0 1 1
1 1 1
出力するプログラムを作成し,値が代入されているかを確認しなさい.
x = []

# 以下,二次元配列xの各要素に数値を代入しなさい.

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
	printf( "\n" );
end
回答
21
問題1の配列xにおいて一行目と三行目を交換し,下記のように
出力するプログラムを作成しなさい.
7 8 9
4 5 6
1 2 3
x = [ 
	[ 1 , 2 , 3 ] , 
	[ 4 , 5 , 6 ] , 
	[ 7 , 8 , 9 ] 
    ]
temp = []

for i in ( 0..2 ) do
	# 以下を埋めなさい

end

for i in ( 0..2 ) do
	# 以下を埋めなさい
	
end

for i in ( 0..2 ) do
	# 以下を埋めなさい
	
end

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
        printf( "\n" );
end
回答
22
問題1の配列xにおいて二列目と三列目を交換し,下記のように
出力するプログラムを作成しなさい.
1 3 2
4 6 5
7 9 8
x = [ 
	[ 1 , 2 , 3 ] , 
	[ 4 , 5 , 6 ] , 
	[ 7 , 8 , 9 ] 
    ]
temp = []

for i in ( 0..2 ) do
	# 以下を埋めなさい

end

for i in ( 0..2 ) do
	# 以下を埋めなさい
	
end

for i in ( 0..2 ) do
	# 以下を埋めなさい
	
end

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
        printf( "\n" );
end
回答
23
問題1の配列xにおいて対角要素を交換し,下記のように出力する
プログラムを作成しなさい.
3 2 1
4 5 6
9 8 7
x = [ 
	[ 1 , 2 , 3 ] , 
	[ 4 , 5 , 6 ] , 
	[ 7 , 8 , 9 ] 
    ]
temp = []

for i in ( 0..2 ) do
	# 以下を埋めなさい

end

for i in ( 0..2 ) do
	# 以下を埋めなさい
	
end

for i in ( 0..2 ) do
	# 以下を埋めなさい
	
end

for i in ( 0..2 ) do
        for j in ( 0..2 ) do
                printf( "%d " , x[ i ][ j ] )
        end
        printf( "\n" );
end
回答