144-练习12和13 循环练习
12,一个控制台应用程序,要求完成下列功能。
1)接收一个整数n。
2)如果接收的值n为正数,输出1~n间的全部整数。
3)如果接收的值n为负值,用break或者return退出程序。
4)如何n为0的话 转到1继续接收下一个整数。
while (true) { int num = Convert.ToInt32(Console.ReadLine()); if (num > 0) { for (int i = 1; i <= num; i++) { Console.Write(i + " "); } Console.WriteLine(); } else if (num < 0) { return; } }
13,一个控制台应用程序,求1000之内的所有“完数”。所谓“完数”是指一个数恰好等于它的所有因子之和。例如6是完数,因为6=1+2+3。
for (int i = 1; i < 1001; i++) { string str = "1"; int sum = 1; for (int j = 2; j < i; j++) { if (i % j == 0) { str += "+" + j; sum += j; } } if (sum == i) { Console.WriteLine(i + "是完数" + str); } } Console.ReadKey();