A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 donkey2 于 2014-11-15 10:00 编辑

// 打印1 - 100中不能被7整除又不包含7的数

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
//        NSLog(@"Hello, World!");
        for(int i = 0; i <= 100 ;i ++){
            if (i%10==7||i == 70) {
                continue;
            }
        if (i%7 == 0) {
            NSLog(@"i= %i",i);
        }
        }

    }
    return 0;
}


存在的问题:
开始写排除条件是if(i%10==7)来排除,但是运行是发现有70,想不到有什么好的方便排除。
一会想到了再来补充,大家集思广益看看怎么处理~

4 个回复

倒序浏览

标准答案应该是:
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
//        NSLog(@"Hello, World!");
        for(int i = 0; i <= 100 ;i ++){
            if (i % 7 == 0 || i % 10 == 7|| i / 10 == 7) {
                continue;
            }

            NSLog(@"i= %i",i);

        }

    }
    return 0;
}

三个控制条件:
1. i%7 == 0 , 保证取不到被7整除的数。
2. i%10 == 0 ,保证取不到各位数为7的数。
3. i/10 == 7 ,保证取不到十位数为7的数。

这样梳理一下思维,好理解多了。
可以看到注释有助于帮助自己思考。


回复 使用道具 举报
学习了,谢谢楼主
回复 使用道具 举报
11.11快乐!
回复 使用道具 举报

哈哈,你是要黑我么
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马