- 分享
- 0
- 人气
- 0
- 主题
- 46
- 帖子
- 3604
- UID
- 123250
- 积分
- 6456
- 阅读权限
- 23
- 注册时间
- 2008-2-7
- 最后登录
- 2017-5-1
- 在线时间
- 5029 小时
|
各位大大们大家好,很不好意思又来打扰。
小弟有些疑惑,希望各路高手前来帮忙。
我需要做一个车票的程 ...
~Kai 发表于 2010-7-21 03:26 PM
你好, 我有个可行的方式。
一个 Array, 两个变量, 一个"方法(Method, 要不要也可以)" 就能实现。
- distancePrice[0] = 0.80; // A 去 B 车程 , 这里我们当成是Index 1
- distancePrice[1] = 0.60; // B 去 C 车程 , 这里我们当成是 Index 2
- distancePrice[2] = 1.20; // C 去 D 车程, 这里我们当成是Index 3
- distancePrice[3] = 0.90; // D 去 E 车程, 这里我们当成是 Index 4
- // 以上当成Array的初始。
- //接下来的两个变量(var), 我们要记录 A~ C 的车程。
- //那么 就会经过 , A -> B , B->C , 根据 Array 的Index 的话, 我们就说是经过 , 1 , 2。
- //所以我们来两个变量, int startPoint , int endPoint;
- //假设
- int startPoint = 1;
- int endPont = 2;
- //先来个判断, 假设如果 是 C 去 A 的话。 就要把他纠正成 A -> C (感谢TOMATO 提到的Point)
- if(startPoint > endPoint)
- {
- int temp = startPoint; // temp 的意义不大, 只是为了暂时存着 startPoint, 以免在转换的过程中丢失。
- sPoint = endPoint;
- endPoint = temp;
- }
- //接下来就来个变量记录 TotalPrice。
- double TotalPrice = 0; // 初始话, 我们就把他set 成0, 以免Compiler 篇译不到的危险。
- // 这个For 起点是 使用者输入的 startPoint,为了配合 Array Index 是0 开始, 我们就-1, 终点的时候假设是2 我们这里就拿 1 好了, 所以现在我们的循环是 0 , 1
-
- for (int i = startPoint-1; i < endPoint; i++)
- {
- TotalPrice+= distancePrice[i];
- }
- //你的output 是 1.40
- //////////////////////////////////////////////////////////////////////////////完整的 Code///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- distancePrice = new double[4];
- distancePrice[0] = 0.80;
- distancePrice[1] = 0.60;
- distancePrice[2] = 1.20;
- distancePrice[3] = 0.90;
- int startPoint = 1;
- int endPoint = 2;
- if (startPoint > endPoint)
- {
- int temp = startPoint;
- startPoint = endPoint;
- endPoint = temp;
- }
- double total = 0;
- for (int i = startPoint-1; i < endPoint; i++)
- {
- total += distancePrice[i];
- }
复制代码 |
|