📜  Zoho面试体验

📅  最后修改于: 2021-11-18 01:20:00             🧑  作者: Mango

高级回合编程问题(L3)。

ZULO 驾驶室应用

根据下面给出的详细信息创建出租车预订应用程序 ZULA。该程序应首先显示一个菜单,其中包含以下选项

  1. 司机登录
  2. 客户登录
  3. 祖拉管理员
  4. 出口

任务 1:初始化

根据下面给出的详细信息初始化数据以在程序启动时加载。注意:它可以被加载并保存在内存中。无需维护文件或数据库。

初始出租车司机:

ID NAME PASS AGE
1 aaa 111 25
2 bbb 222 36
3 ccc 333 31
4 ddd 444 28

初始客户:

ID NAME PASS AGE
1 WW 55 25
2 XX 66 36
3 YY 77 31
4 ZZ 88 28

初始位置

ID NAME DISTANCE FROM ORIGIN
1 A 0
3 C 4
4 D 7
6 F 9
2 B 15
7 G 18
8 H 20
5 R 23

4 3 2 6 3 2 3

A——-C——-D——-F——-B——G——H——-E

初始驾驶室位置

Location CabID’s
D 1
G 2
H 3
A 4

任务 2:驾驶室驱动器/客户登录

Cab Driver 应该可以选择使用现有凭据(用户名和密码)登录

客户应该可以选择使用现有凭据(用户名和密码)登录或创建一个包含所有详细信息的新帐户。

示例应用程序提示

欢迎来到祖拉!!

1.出租车司机登录

2.客户登录。

3.管理登录

4.退出

请选择一项服务:

任务 3:叫辆出租车

客户应该能够根据以下条件叫到出租车:

1. 他/她应该能够选择来源和目的地位置。 2. 应选择距离源最近的位置可用的驾驶室。

3. 应向客户提供票价估算。按 10 卢比/公里计算。 4. 应向客户显示确认单,并且只有在接受后才开始旅程。

在预订乘车之前打印每辆出租车的位置。

示例输出:

Location Cab IDs
A 3
E 1
C 2,4

任务 4:每次预订都必须满足以下条件。

1. 应选择离源最近位置的驾驶室。

2. 出租车司机在完成每次乘车后将强制休息1次,即使他是最近的也不应被选择。

3、如果同一地点有2辆或以上的驾驶室,则应分配完成总行程次数较少的驾驶室。

任务 5: ZULA 委员会和出租车司机驾驶总结

每次乘车,ZULA 都会获得乘车费用 30% 的佣金

出租车司机应该能够看到他们乘坐的完整历史记录。出租车司机姓名、来源、目的地、客户详细信息、票价和 ZULA 佣金

示例输出:

驾驶室 ID:1

出租车司机姓名:aaa

行程详情:

Source  Destination customer detail ZULA commission Fare
D H 4 39 130
E G 2 15 50
C B 2 33 110

任务 6:客户乘车总结

客户应该能够看到他们骑行的完整历史记录。客户名称、来源、目的地、出租车详细信息和票价。

示例输出:

客户编号:2

客户名称:yy

行程详情:

Source  Destination CabDetail Fare
A E 3 230
E G 1 50
C B 1 110

任务 7:管理员可用的在 ZULA 中运行的所有出租车的摘要。

管理员应该能够看到由 ZULA 管理的所有出租车的摘要。它应包含乘车总数、收取的总票价、总 ZULA 佣金、每次旅行的详细信息。样本输出

驾驶室 ID:1

总旅行次数:3

总票价:290

ZULA 佣金总数:87

行程详情:

Source Destination Customer Detail Fare ZULA commission
D F 4 130 39
E G 2 50 15
C B 2 110 33

驾驶室编号:2

总行程数:0

总票价:0

ZULA 佣金总额:0

行程详情:未提供行程