見出し画像

PowerShell100本ノック 31~40

PowerShellを学ぶためのコンテンツとして「PowerShell100本ノック」を作成したので公開します。PowerShellは学習コンテンツが非常に少なく、自分自身も習得に苦労した経験から作成するに至りました。今回は31から40問目まで。

前提条件
- Windows PowerShell 5.1
- なにがしかのプログラミング経験がある

含まれる内容
問題 1-10 標準出力
問題 11-20 標準入力、条件分岐、繰り返し
問題 21-30 配列、多次元配列
問題 31-40 連想配列
問題 41-50 ファイル、フォルダ操作
問題 51-60 ファイル検索、パイプ処理
問題 61-70 関数
問題 71-80 再帰関数、ZIP圧縮解凍、スクレイピング
問題 81-90 環境変数
問題 91-100 実行ポリシーとレジストリ操作

記事構成
 記事の上側に問題が10問、下側に答えが10問
(上や下に行ったり来たりが面倒な様子なら構成を変えます)




問題 31から40

31.連想配列

空の連想配列を宣言するプログラムを作成せよ。


32.連想配列を初期化

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言するプログラムを作成せよ。


33.連想配列を表示

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、富士の値を表示するプログラムを作成せよ。


34.連想配列を表示

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、キーと値をすべて表示するプログラムを作成せよ。


35.連想配列を表示

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、foreach文を使って値をすべて表示するプログラムを作成せよ。


36.連想配列に要素追加

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、後からキー"ジョナゴールド" 値200を追加するプログラムを作成せよ。


37.連想配列の要素削除

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、キー"王林"を削除するプログラムを作成せよ。


38.連想配列の要素上書き

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、"つがる"の値を230に上書きするプログラムを作成せよ。


39.連想配列の入れ子

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、キー"つがる"の配下に、キー'上玉'値330、キー'小玉'値230を追加するプログラムを作成せよ。


40.連想配列の入れ子

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、これらをキー"りんご"の連想配列の配下にするプログラムを作成せよ。




答え 31から40


31.連想配列

空の連想配列を宣言するプログラムを作成せよ。

# 31.連想配列 答え:
$x = @{}


32.連想配列を初期化

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言するプログラムを作成せよ。

# 32.連想配列を初期化 答え:
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}


33.連想配列を表示

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、富士の値を表示するプログラムを作成せよ。

# 33.連想配列を表示 答え:
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
write-host $x['富士']

# または
write-host $x.富士


34.連想配列を表示

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、キーと値をすべて表示するプログラムを作成せよ。

# 34.連想配列を表示 答え:
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
write-host $x.keys
write-host $x.values


35.連想配列を表示

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、foreach文を使って値をすべて表示するプログラムを作成せよ。

# 35.連想配列を表示 答え:
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
foreach($i in $x.keys){
 write-host $i $x["$i"] 
}


36.連想配列に要素追加

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、後からキー"ジョナゴールド" 値200を追加するプログラムを作成せよ。

# 36.連想配列に要素追加 答え:
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
$x.add('ジョナゴールド',200)


37.連想配列の要素削除

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、キー"王林"を削除するプログラムを作成せよ。

# 37.連想配列の要素削除 答え:
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
$x.remove('王林')


38.連想配列の要素上書き

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、"つがる"の値を230に上書きするプログラムを作成せよ。

# 38.連想配列の要素上書き 答え:
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
$x["つがる"] = 230

# または
$x.つがる = 230


39.連想配列の入れ子

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、キー"つがる"の配下に、キー'上玉'値330、キー'小玉'値230を追加するプログラムを作成せよ。

# 39.連想配列の入れ子
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
$xx = @{
 '上玉' = 330
 '小玉' = 230
}
$x["つがる"] = $xx

# または
$x = @{
 '富士' = 100
 '王林' = 50
}
$x.add("つがる",@{'上玉' = 330})
$x["つがる"].add('小玉',230)


40.連想配列の入れ子

連想配列にキーとして"富士","王林","つがる"、それぞれの値として100,50,330を初期値で宣言し、これらをキー"りんご"の連想配列の配下にするプログラムを作成せよ。

# 40.連想配列の入れ子
$x = @{
 '富士' = 100
 '王林' = 50
 'つがる' = 330
}
$xx = @{'りんご' = $x}





#PowerShell #100本ノック #プログラミング問題 #プログラミング学習 #Windows #教材 #つくってみた #プログラミング #ファイル #フォルダ #プログラミング初心者

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?