复习作业

//main函数
//
//  main.m
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//
/* 项目题:

 一、霓虹灯逻辑

 1、定义颜色类:颜色名字

 2、定义颜色数据数组

 3、把 颜色的数据放到颜色对象中

 4、随机抽选一个颜色

 二、注册逻辑

 1、写一个用户类

 2、用户输入 帐号 密码 确认密码  ->具体逻辑

 3、全部匹配后 添加到一个用户对象,存放到一个用户数组里

 三、登录逻辑

 四、修改密码逻辑

 */
#import <Foundation/Foundation.h>
#import "Color.h"
#import "ColorData.h"
#import <stdlib.h>
#import "UserRegistration.h"
#import "User.h"
#import "userLogin.h"
#import "ChangePsw.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
#pragma mark   --霓虹灯逻辑
/*
        ColorData *Data = [[ColorData alloc]init];
        [Data loadData];
        [Data chooseColor];
   */

#pragma mark  --注册逻辑--

        UserRegistration *userReg = [[UserRegistration alloc]init];
        NSMutableArray *userList = [NSMutableArray array];
        userList = [userReg registration];
        User *userR = [[User alloc]init];
        userR.name = [userList[0] name];
        userR.psw = [userList[0] psw];
        NSLog(@"注册成功,你的用户名是%@  密码是%@",userR.name,userR.psw);



#pragma mark  ---登录逻辑 --

        userLogin *userLog = [[userLogin alloc]init];
        NSMutableArray *userList1 = [NSMutableArray array];
        userList1 = [userLog login];
        User *userL = [[User alloc]init];
        userL.name = [userList1[0] name];
        userL.psw = [userList1[0] psw];

        if ([userR.name isEqualToString:userL.name] != NO) {
            if ([userR.psw isEqualToString:userL.psw] != NO) {
                NSLog(@"登录成功");
            }
            else {
                NSLog(@"密码出错");
            }
        }
        else {
            NSLog(@"用户名出错");
        }


#pragma mark   -----修改密码逻辑

        NSString *newPsw = [[NSString alloc]init];
        if ([userR.name isEqualToString:userL.name] != NO){
            if ([userR.psw isEqualToString:userL.psw] != NO){
                ChangePsw *changePsw = [[ChangePsw alloc]init];
                newPsw = [changePsw change];
                userL.psw = newPsw;
            }
        }

    }

    return 0;
}
//霓虹灯颜色类  .h文件
//
//  Color.h
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface Color : NSObject

@property NSString *name;
- (instancetype)initWithName:(NSString *)name;
@end

//.m实现文件
//
//  Color.m
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import "Color.h"

@implementation Color
- (instancetype)initWithName:(NSString *)name
{
    self = [super init];
    if (self) {
        _name = name;
    }
    return self;
}
@end
//霓虹灯加载数据,实现功能
//ColorData.h文件
//
//  ColorData.h
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import <Foundation/Foundation.h>
@class Color;
@interface ColorData : NSObject

{
    Color *red;
    Color *black;
    Color *green;
}

-(void)loadData;
-(void)chooseColor;

@end

//.m文件 实现
//
//  ColorData.m
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import "ColorData.h"
#import "Color.h"
@implementation ColorData

-(void)loadData{
    NSArray *colorList = [NSArray arrayWithObjects:@"red",@"black",@"green",nil];

    red = [[Color alloc]initWithName:colorList[0]];
    black = [[Color alloc]initWithName:colorList[1]];
    green = [[Color alloc]initWithName:colorList[2]];

}

-(void)chooseColor{

    int rand = arc4random()%3;
    switch (rand) {
        case 0:
            NSLog(@"%@",red.name);
            break;
        case 1:
            NSLog(@"%@",black.name);
            break;
        case 2:
            NSLog(@"%@",green.name);
            break;
      }
}

@end
//用户登录程序
//用户类   .h文件
//
//  User.h
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface User : NSObject

@property NSString *name;
@property NSString *psw;

@end
//.m文件不需要具体的实现程序,使用默认
//用户注册程序
//.h文件
//
//  User Registration.h
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import <Foundation/Foundation.h>
@class User;
@interface UserRegistration : NSObject

@property User *user;
@property NSMutableArray *userList;
-(NSMutableArray *)registration;
@end

//.m实现文件
//
//  User Registration.m
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import "UserRegistration.h"

#import "User.h"
@implementation UserRegistration

-(NSMutableArray *)registration{
    //给全局变量 _userList 分配空间
    _userList = [NSMutableArray array];

    NSLog(@"请输入名字");
    NSData *nameData = [[NSFileHandle fileHandleWithStandardInput]availableData];
    NSString *nameString1 = [[NSString alloc] initWithData:nameData encoding:NSUTF8StringEncoding];
    NSString *nameString = [nameString1 substringToIndex:6];
    NSLog(@"%@",nameString);

    NSLog(@"请输入6位密码");
    NSData *pswData = [[NSFileHandle fileHandleWithStandardInput]availableData];
    NSString *pswString1 =[[NSString alloc] initWithData:pswData encoding:NSUTF8StringEncoding];
    NSString *pswString =[pswString1 substringToIndex:6];
    NSLog(@"%@",pswString);

    NSLog(@"请再次输入密码");
    NSData *pswData1 = [[NSFileHandle fileHandleWithStandardInput]availableData];
    NSString *pswString2 =[[NSString alloc] initWithData:pswData1 encoding:NSUTF8StringEncoding];
    NSString *pswString3 =[pswString2 substringToIndex:6];
    NSLog(@"%@",pswString3);

    if ([pswString isEqualToString:pswString3] != NO) {
        //判断成立  将输入的名字 密码送给对象
        _user = [[User alloc]init];
        _user.name = nameString;
        _user.psw = pswString;
        [_userList addObject:_user];
        return _userList;
    }
    else
    {   NSLog(@"两次输入的密码不同,请重新注册");exit(0);
        return 0;
    }
}

@end
//用户登录程序
//.h文件
//
//  userLogin.h
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import <Foundation/Foundation.h>
@class User;
@interface userLogin : NSObject

@property User *user;
@property NSMutableArray *userList;

-(NSMutableArray *)login;
@end

//.m文件
//
//  userLogin.m
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import "userLogin.h"

#import "UserRegistration.h"
#import "User.h"
@implementation userLogin

-(NSMutableArray *)login{

    _userList = [NSMutableArray array];

    NSLog(@"请输入登录名字");
    NSData *nameData = [[NSFileHandle fileHandleWithStandardInput]availableData];
    NSString *nameString1 = [[NSString alloc] initWithData:nameData encoding:NSUTF8StringEncoding];
    NSString *nameString = [nameString1 substringToIndex:6];
    NSLog(@"%@",nameString);

    NSLog(@"请输入6位密码");
    NSData *pswData = [[NSFileHandle fileHandleWithStandardInput]availableData];
    NSString *pswString1 =[[NSString alloc] initWithData:pswData encoding:NSUTF8StringEncoding];
    NSString *pswString =[pswString1 substringToIndex:6];
    NSLog(@"%@",pswString);

    _user = [[User alloc]init];
    _user.name = nameString;
    _user.psw = pswString;
    [_userList addObject:_user];
    return _userList;

}

@end
//用户修改密码程序

//
//  ChangePsw.h
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface ChangePsw : NSObject
-(NSString *)change;
@end


//
//  ChangePsw.m
//  复习作业-项目
//
//  Created by 刘佳斌 on 15/11/27.
//  Copyright © 2015年 刘佳斌. All rights reserved.
//

#import "ChangePsw.h"

@implementation ChangePsw

-(NSString *)change{
    int a =3;
    NSLog(@"修改密码");
    NSLog(@"请重新输入密码");

    while(a){
        NSData *newPswData = [[NSFileHandle fileHandleWithStandardInput]availableData];
        NSString *newPswString1 =[[NSString alloc] initWithData:newPswData encoding:NSUTF8StringEncoding];
        NSString *newPswString =[newPswString1 substringToIndex:6];

        NSLog(@"重新输入以确认");
        NSData *newPswData1 = [[NSFileHandle fileHandleWithStandardInput]availableData];
        NSString *newPswString2 =[[NSString alloc] initWithData:newPswData1 encoding:NSUTF8StringEncoding];
        NSString *newPswString3 =[newPswString2 substringToIndex:6];

        if ([newPswString isEqualToString:newPswString3]!=NO) {
            NSLog(@"密码修改成功");
            return newPswString;
        }
        else
        {          
            a--;
            if (a==0) {
                NSLog(@"你已经三次输入,请重新登录");
                exit(0);
            }
            NSLog(@"密码修改失败,还有%d次机会,再次输入",a);
        }
    }
    return 0;
}
@end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值