作业帮 > 综合 > 作业

C#一辆行驶的汽车司机上午10点里程表上一个对称数为95859两小时出现新的对称数问该车速为多少新的对称数是

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/13 16:37:33
C#一辆行驶的汽车司机上午10点里程表上一个对称数为95859两小时出现新的对称数问该车速为多少新的对称数是
一辆行驶的汽车司机上午10点里程表上一个对称数为95859两小时出现新的对称数问该车速为多少新的对称数是多少 要求要C#编程求解 最好是后面注解一下
C#一辆行驶的汽车司机上午10点里程表上一个对称数为95859两小时出现新的对称数问该车速为多少新的对称数是
思路:
1、从95859开始递增,逐个判断是否为对称数,得到95859后的一个对称数.
2、得到两数的差并除以2,得到汽车的速度.
一下是实现代码:
static void Main(string[] args)
{
long Mileage_Start = 95859;//上午10点里程表的公里数
long Mileage_Over = Mileage_Start;//刚开始两数相同
do{
Mileage_Over++;
}
while (!isPalindrome(Mileage_Over));//调用isPalindrome()方法判断是否为对称数,是则跳出循环.
Console.WriteLine("下一个对称数为:{0}",Mileage_Over);
Console.WriteLine("2个小时行驶了:{0}KM",Mileage_Over - Mileage_Start);
Console.WriteLine("汽车的速度为:{0}KM/小时",(Mileage_Over - Mileage_Start)/2);
}
public static bool isPalindrome(long _Mileage) {
string Mileage = _Mileage.ToString();
Stack stack = new Stack();
bool flag = true;
char[] Mile = Mileage.ToCharArray();
for (int i = 0; i < Mile.Length;i++ )
{
stack.Push(Mile[i].ToString());//压栈
}
ArrayList array = new ArrayList();
for(int i =0;i