当時Javaのテストでたまに間違えててこれが出来なければプログラミング思考じゃない!
と言われ続けてたのを思い出しC#にしてアウトプット。
#Q,1,2,3に何が出力されるか
public static void Main(string[] args){
int[] nums=new int[10];
for(int i=0;i<nums.Length;i++){
nums[i]=i/2;
}//0,0,1,1,2,2,3,3,4,4
int sum=0;
int index=0;
for(;index<nums.Length;index++){
sum+=nums[index];
if(sum > 10){
break;
}
}
Console.WriteLine(index); //1
int[] data={3,5,8,1,2};
var result=data.Where(n=>n%2==0).Select(n=>n*n).Sum();
Console.WriteLine(result); //2
data.OrderByDescending(n=>n).ToList().ForEach(Console.Write); //3
##補足1
Javaとの違い
public static void Main(string[] args){ //mainでString
nums.Length //length
##考え方
1二つ目のfor文で配列numの値をインデックス0から順に足していき、その合計が10を超えたときのインデックス番号を返してます。
2はラムダ式ではありますがクエリ文をヒントに偶数の数値の乗算を合計するだけ。
3はリストに格納してForEachメソッドで降順に出力する。
回答
1は0,0,1,1,2,2,3,3,4,4なので
回答:7
2は88=64 22=4なので
回答:集合体の合計68
3は85321(カンマなし)
他にもJavaになりますがダイヤを表示せよとかピラミッドを表示させよとか・・