某保险公司用premium()方法计算汽车驾驶员应支付的保险金额。该方法接收三个参数age,gender,married,分别表示驾驶员的年龄、性别和婚姻状态。其中,age是整型参数,代表驾驶员的年龄。gender是字符型参数,取值'M'表示男性,取值'F'表示女性。married是布尔型变量,取值true表示已婚,取值false表示未婚。该保险公司保险金计算规则如下:
² 年龄低于16岁或高于65岁不允许参保。
² 保险金基线为500美元。
² 如果驾驶员是25岁以下单身男性,则增加100美元。否则,
l 如果驾驶员已婚或为女性,则保险金减200美元。
l 如果驾驶员年龄在45岁至65岁之间(包括45岁和65岁),则保险金减100美元。
对于参数无效的情况(age不在16至65之间,或者gender取值不为'M'和'F'),premium()方法返回0。对于其他情况,返回计算获得的保险金额。