zoukankan      html  css  js  c++  java
  • 运算符和编码作业及默写

    1、判断下列逻辑语句的True,False.

      1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

      2)not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

    2、求出下列逻辑语句的值。
      1),8 or 3 and 4 or 2 and 0 or 9 and 7

      2),0 or 2 and 3 and 4 or 6 and 0 or 3

    3、下列列结果是什么?

      1)、6 or 2 > 1

      2)、3 or 2 > 1

      3)、0 or 5 < 4

      4)、5 < 4 or 3

      5)、2 > 1 or 6

      6)、3 and 2 > 1
      7)、0 and 3 > 1
      8)、2 > 1 and 3
      9)、3 > 1 and 0
      10)、3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2

    4、while循环语句基本结构?

    5、利用while语句写出猜⼤小的游戏: 设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果 正确,然后退出循环。

    6、在5题的基础上进⾏升级: 给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循环,如果三次之内没有猜测正确,则自动退出循环,并显示‘太笨了你....’。

    7.使用while循环输出123456 8910

    8.求1-100的所有数的和
    9.输出 1-100 内的所有奇数

    10.输出 1-100 内的所有偶数
    11.求1-2+3-4+5 ... 99的所有数的和.

    12.⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使用字符串格式化)

    13. ⽤户输入一个数. 判断这个数是否是一个质数(升级题).

    14. 输入一个广告标语. 判断这个广告是否合法. 根据最新的广告法来判断. 广 告法内容过多. 我们就判断是否包含'最', '第⼀', '稀缺', '国家级'等字样. 如果包 含. 提示, 广告不合法 


    例如, 1. 老男孩python世界第一. ==> 不合法
      2. 今年过年不收礼啊. 收礼只收脑白金. ==> 合法

    15. 输入一个数. 判断这个数是几位数(用算法实现)(升级题) 


    明日默写代码:
    1. 求1-100之间所有的数的和
    2. And or not的含义和特征
    3. break continue的含义. 有什么区别

    # Day2作业及默写
    # 1、判断下列逻辑语句的True,False.
    1) 1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6  (结果:True)
    2) not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 (结果:False)
    # 2、求出下列逻辑语句的值。
    1),8 or 3 and 4 or 2 and 0 or 9 and 7   (结果:8)
    2),0 or 2 and 3 and 4 or 6 and 0 or 3   (结果:4)
    # 3、下列结果是什么?
    1)、 6 or 2 > 1  (结果:6)
    2)、 3 or 2 > 1  (结果:3)
    3)、 0 or 5 < 4  (结果:False)
    4)、 5 < 4 or 3  (结果:3)
    5)、 2 > 1 or 6  (结果:True)
    6)、 3 and 2 > 1  (结果:True)
    7)、 0 and 3 > 1  (结果:0)
    8)、 2 > 1 and 3  (结果:3)
    9)、 3 > 1 and 0  (结果:0)
    10)、 3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2  (结果:2)
    
    
    # 4、 while循环语句基本结构?
        while 条件语句:
            循环体
    
    # 5、
    #初级玩法
    num = 66
    while True:
        guess = int(input('请猜测数字:'))
        if guess > num:
            print('Too bigger')
        elif guess < num:
            print('Too smaller')
    
        else:
            print('you are right')
            break
    
    #升级:随机产生一个数字去猜测,直到猜测正确停止
    from random import randint
    num = randint(1,100)#随机产生一个1-100之间的随机整数
    left = 1
    right = 100
    while True:
        guess = int(input('请猜测数字(%s-%s):' % (left, right)))#提示正确的范围
        if guess > num:
            print('Too bigger')
            if right < num:
                right = guess
        elif guess < num:
            print('Too smaller')
            if left > num:
                left = guess
        else:
            print('you are right')
            break
    
    #升级:随机产生一个数字去猜测,猜测3次就停止
    from random import randint
    num = randint(1,100)#随机产生一个1-100之间的随机整数
    left = 1
    right = 100
    count = 0
    while count < 3:
        guess = int(input('请猜测数字(%s-%s):' % (left, right)))#提示正确的范围
        if guess > num:
            print('Too bigger')
            if right < num:
                right = guess
        elif guess < num:
            print('Too smaller')
            if left > num:
                left = guess
        else:
            print('you are right')
            break #break 结束循环并不会执行到下面的 else
        count += 1
    else:#只有当条件不成立的时候才能执行到它,第一次循环的时候条件就不成立也会执行它
        print('太笨了你....')
    # 如果不使用 else 可以这样
    if count >= 3:
        print('真笨')
    else:
        print('真聪明')
    
    # 6、
    num = 66
    count = 0
    while count < 3:
        guess = int(input('请猜测数字:'))
        if guess > 66:
            print('Too bigger')
        elif guess < 66:
            print('Too smaller')
        else:
            print('you are right')
            break
        count += 1
    else:
        print('太笨了你....')
    
    # 7.
    #方法一
    count = 0
    while count < 10:
        count += 1
        if count == 7:
            continue
        else:
            print(count)
    
    #方法二
    count = 1
    while count <= 10:
        if count != 7:
            print(count)
        count += 1
    
    
    
    # 8.
    count = 1
    sum = 0
    while count <= 100:
        sum += count
        count += 1
    print(sum)
    
    # 9.
    count = 1
    while count <= 100:
        if count % 2 == 1:
            print(count)
        count += 1
    
    
    
    # 10.
    count = 1
    while count <= 100:
        if count % 2 == 0:
            print(count)
        count += 1
    
    
    
    
    # 11.
    count = 1
    sum = 0
    while count < 100:
        if count % 2 == 1:  # 奇数加上
            sum += count
        else:
            sum -= count  # 偶数减去
        count += 1
    print(sum)
    
    # 12.
    #方法一:自己做的
    count = 3
    while count > 0:
        count -= 1
        name = input('Name:').strip()
        password = input('Password:').strip()
    
        if name == 'alex' and password == 'abc':
            print('welcome...')
            break
        else:
            if count != 0:
                print('你还有%s 次输错机会' % count)
    
    else:
        print('你已经输错三次了,无法登录')
    #方法二:老师讲的
    uname = 'alex'
    upsw = '123'
    count = 1
    while count <= 3:
        username = input('请输入你的用户名:').strip()
        password = input('请输入你的密码:').strip()
        if username == uname and password == upsw:
            print('登录成功')
            break
        else:
            print('用户名或密码错误!')
            if 3-count > 0:
                print('你还有%s 次输错机会' % (3-count))  #机会用(3-count)很好
            else:
                print('你已经输错三次了,无法登录')
                break
        count += 1
    
    
    # 13. 
    #质数:只能被1和它本身整除的数 
    # 我写的
    num = int(input('请输入一个大于1的整数:')) if num == 1: print('1不是质数也不是合数') else: count = 2 while count < num: if num % count == 0: print('%s 不是质数' % num) break count += 1 else: print('%s 是质数' % num) #老师写的 (并没有排除1) n = int(input('请输入一个数字:')) for i in range(2, n): # i的范围是从2到 n-1 if n % i == 0: # 整除不是质数 print(f'{n}不是质数') break else: # 是质数的条件是遍历2~n之间所有的除数都不能整除,而不是只判断一个元素,所以要注意else的位置是和for是配对的而不是和if print(f'{n}是一个质数') # 扩展: 求1~100之内的所有质数 for n in range(2, 100): # n的范围直接从2开始取值,因为1不是质数也不是合数 for i in range(2, n): # i的范围是从2到 n-1 if n % i == 0: break else: # 是质数 print(n) # 扩展: 求1~100之内的所有质数的和 sum = 0 for n in range(2, 100): # n的范围直接从2开始取值,因为1不是质数也不是合数 for i in range(2, n): # i的范围是从2到 n-1 if n % i == 0: break else: # 是质数 sum += n print(sum) # 14. ad = input('请输入一个广告标语:') if '' in ad or '第⼀' in ad or '稀缺' in ad or '国家级' in ad: print('广告不合法') else: print('广告合法') ##错误示范: if '' or '第⼀' or '稀缺' or '国家级' in ad:pass #这样等价于
    if '最' or '第⼀' or '稀缺' or ('国家级' in ad),结果就是'最'(因为在 or 表达式中,最左边的'最'不为0,而且 in 的优先级比 or 高)
    if ('' or '第⼀' or '稀缺' or '国家级') in ad: pass#这样等价于 if '最' in ad,结果就是判断这个表达式的值 #结论:上面这个表达式不加括号的话是 in 的优先级比 or 高 # 14. #偷懒的最简单的方法是利用 len()求长度,如果考虑负数的话要先转化为绝对值 num = abs(int(input('请输入一个整数:'))) len_num = len(num) ##老师讲过之后修改(这里只能判断整数,不能判断小数) # 不转化为绝对值没办法判断负数,负数地板除的结果总是带一个负号的,不可能结果是0 num = int(input('请输入一个整数:')) #负数没办法判断,那就把负数转化为正数,方法:求绝对值或者负负得正 num = abs(num) #abs() 绝对值 # #负负得正 # if num <= 0: # num = -num count = 0 while True: count += 1 if num // 10 != 0: num //= 10 continue else: print('你输入的是一个%s 位数' % count) break #老师写的(思想相同:这道题的核心就是地板除) num = abs(int(input('请输入一个整数:'))) count = 0 while 1: num //= 10 #num = num // 10 地板除的结果是商的整数部分 count += 1 if num == 0: break print(count) #扩展:求一个数字有多少位小数 num = input('请输入一个小数:') # -123.345这里不需要转化为绝对值了,因为下面使用的是切片,不涉及前面的负号 c = len(num[num.index('.')+1:]) # 对原数字从小数点后面一位的数字开始做切片 print(c) # 明⽇默写代码: # 1. 求1-100之间所有的数的和 count = 1 sum = 0 while count <= 100: sum += count count += 1 print(sum) # 2. And or not的含义和特征 and : 并且. 左右两端同时为真. 结果才能是真 or : 或者. 左右两端有一个是真. 结果就是真 not : 非. 非真既假, 非假既真 不真-> 假 不假 -># 3. break continue的含义. 有什么区别 break: 立刻跳出循环. 打断的意思 continue: 停⽌本次循环, 继续执行下一次循环.
  • 相关阅读:
    CodeForces 19D Points (线段树+set)
    FZU 2105 Digits Count
    HDU 5618 Jam's problem again(三维偏序,CDQ分治,树状数组,线段树)
    HDU 5634 Rikka with Phi (线段树)
    Java实现 蓝桥杯 算法提高 转圈游戏(暴力快速幂)
    Java实现 蓝桥杯 算法提高 转圈游戏(暴力快速幂)
    Java实现 蓝桥杯 算法提高 转圈游戏(暴力快速幂)
    Java实现 蓝桥杯 算法提高VIP Substrings(暴力)
    Java实现 蓝桥杯 算法提高VIP Substrings(暴力)
    Java实现 蓝桥杯 算法提高VIP Substrings(暴力)
  • 原文地址:https://www.cnblogs.com/lyfstorm/p/10056518.html
Copyright © 2011-2022 走看看