paiza×Qiita記事投稿キャンペーン「プログラミング問題をやってみて書いたコードを投稿しよう!」
Qiita2回目の投稿
同キャンペーンの開催に伴い、C# で書いたコードをコピペしてみた、解説してみた
問題
書いたコード
using System;
class Program
{
static void Main()
{
var array = Console.ReadLine().Split();
var m = double.Parse(array[0]); //ある生鮮食品の仕入れ量[kg]
var p = double.Parse(array[1]); //生のまま販売して売れた%[%]
var q = double.Parse(array[2]); //売れ残った量のうち売れた%[%]
var psales = m * (p / 100); //生のまま販売して売れた量[kg]
var qsales = (m - psales) * (q / 100); //売れ残った量のうち売れた量[kg]
var result = m - psales - qsales; //最終的に売れ残った量[kg]
Console.WriteLine(result);
}
}
解説
var array = Console.ReadLine().Split();
var array = Console.ReadLine().Split();
- 上記記載をすることで、{1,80,40}の要素が入ったarrayという一次元配列ができる。
- var arrayとすることで、arrayに代入する要素によって、データ型が数字や、文字列、小数点型、配列に自動で変化する。
- .Split()は、半角スペース区切りを取り除き、個別の要素{1,80,40}に分割する。
var m = double.Parse(array[0]);
var m = double.Parse(array[0]); //ある生鮮食品の仕入れ量[kg]
var p = double.Parse(array[1]); //生のまま販売して売れた%[%]
var q = double.Parse(array[2]); //売れ残った量のうち売れた%[%]
各種計算
var psales = m * (p / 100); //生のまま販売して売れた量[kg]
var qsales = (m - psales) * (q / 100); //売れ残った量のうち売れた量[kg]
var result = m - psales - qsales; //最終的に売れ残った量[kg]
Console.WriteLine(result);
- var psalesなどと、varをつけることで、double型の値が代入された、psales、qsales、resultはすべてvar型からdouble型になる。
- psale・・・pを100で割りmに掛け算することで、生のまま販売して売れた量がわかる。
- qsale・・・qを100で割り(m-psales)に掛け算することで、売れ残った量(m-psales)のうち売れた量がわかる。
- Console.WriteLine();でresult(最終的に売れ残った量)を出力する。
感想など
- Qiitaに記事を書くことで、自分の知識を言語化する難しさを感じましたが、知識の整理に役立つと思いました。
- paizaのレベルアップ問題集は全ての言語の解説があるわけではないので、この投稿が解答の参考になれば幸いです。私のpaizaランクはBランクです。Aランク目指し精進します。