ios開發之公交卡系統的設計與實現

來源:互聯網
上載者:User

ios開發之公交卡系統的設計與實現

////  main.m//  Bus-公交/*    公交一卡通儲值系統,有兩種功能選擇,第一種投入硬幣或者紙幣    選擇購票,第二種一卡通儲值,儲值面額是20,50,100 */#import #import Card.h#import ChargeMachine.h#import Money.hint main(int argc, const char * argv[]){    ChargeMachine * machine = [[ChargeMachine alloc]init];        //[machine sellTicket];    //[ChargeMachine recharge:KindOfMoney100];//這裡賦值的時候賦值成為100,導致程式出錯    //[ChargeMachine recharge:KindOfMoney20];    [ChargeMachine recharge:KindOfMoney50];    [ChargeMachine recharge:KindOfMoneyCoinMoney2];    //[machine recharge:KindOfMoneyCoinMoney2];    NSLog(@%@,machine);            return 0;}
#import #import Money.h@interface Card : NSObject{    /*公交卡卡編號*/    NSString * _numberOfCard;        /**公交卡存放金額*/    int MoneyOfCard;    }@property NSString * numberOfCard;@property int MoneyOfCard;@end

#import Card.h@implementation Card@synthesize numberOfCard = _numberOfCard ;@synthesize MoneyOfCard = _MoneyOfCard;@end

#import #import Money.h@interface ChargeMachine : NSObject{    /**用來記錄銷售總量*/    int countOfMoney;        KindOfMoney _money;        }@property int countOfMoney;/**列印票據*/-(void)sellTicket;/**儲值*/+(int)recharge:(KindOfMoney)kindOfMoney;-(int)recordcounOfMony;@end

#import ChargeMachine.h@implementation ChargeMachine@synthesize countOfMoney = _countOfMoney;/**列印票據*/-(void)sellTicket{    NSLog(@賣出一張車票);}/**儲值*/-(void)recharge{    NSLog(@儲值成功);}-(int)recordcounOfMony{    _countOfMoney += _money;    return _countOfMoney;}+(int)recharge:(KindOfMoney)kindOfMoney{    ChargeMachine * machine = [[ChargeMachine alloc]init];    int moneyKind = 0;    //int countOfMoney = 0;    switch (kindOfMoney) {        case KindOfMoney20:            moneyKind = 20;            //countOfMoney += money;            NSLog(@您儲值的金額是20元);            break;        case KindOfMoney50:            moneyKind = 50;            NSLog(@您儲值的金額是50元);            //countOfMoney += money;            break;        case KindOfMoney100:            moneyKind = 100;            NSLog(@您儲值的金額是100元);            //countOfMoney += money;            break;        case KindOfMoneyCoinMoney2:            moneyKind = 2;            NSLog(@您投的是硬幣);            [machine sellTicket];            break;        case KindOfMoneyPaperMoney2:            moneyKind = 2;            NSLog(@您投的是紙幣);            [machine sellTicket];            break;        default:            break;    }    return moneyKind;}-(NSString *)description{    //經過多次調用怎樣儲存一個變數的值?        //ChargeMachine * machine = [[ChargeMachine alloc]init];    //int moneyKind = [ChargeMachine recharge:_money];    //int countOf_Money = [ChargeMachine recharge:_money];    return [NSString stringWithFormat:@%d,_money];}@end

#import enum KindOfMoney{    /**用來儲存儲值面額為20的變數*/    KindOfMoney20,        /**用來儲存儲值面額為50的變數*/    KindOfMoney50,        /**用來儲存儲值面額為100的變數*/    KindOfMoney100,        KindOfMoneyCoinMoney2,        KindOfMoneyPaperMoney2};typedef enum KindOfMoney KindOfMoney;@interface Money : NSObject{    KindOfMoney _kindOfMoney;}-(Money*)initWithKindOfMoney:(KindOfMoney)kindOfMoney;typedef enum KindOfMoney KindOfMoney;@end

#import Money.h@implementation Money{    }-(Money*)initWithKindOfMoney:(KindOfMoney)kindOfMoney{    self = [super init];    if (self!=nil) {        _kindOfMoney = kindOfMoney;    }    return self;}@end


 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.