• 每日练题(py,c,cpp).6_19,6_20


    检验素数

    1. from math import sqrt
    2. a = int(input("请输入一个数:"))
    3. for i in range(2,int(sqrt(a))):
    4. if a%i == 0:
    5. print("该数不是素数")
    6. break
    7. else:
    8. print("该数是素数")
    9. # # 1既不是素数也不是合数
    10. # #可以用flag做标志位
    11. # b = int(input("请输入一个数:"))
    12. # Flag = False
    13. # for i in range(2,b):
    14. # if b%i == 0:
    15. # Flag = True
    16. # if Flag:
    17. # print("是合数")
    18. # else:
    19. # print("是素数")
    1. #include
    2. /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    3. int main(int argc, char** argv) {
    4. int a = 0;
    5. printf("请输入一个大于1的自然数:");
    6. scanf("%d", &a);
    7. int flag = 0;
    8. for (int i = 2; i < a; i++)
    9. {
    10. if (a % i == 0)
    11. {
    12. flag = 1;
    13. break;
    14. }
    15. }
    16. if (flag == 0)
    17. {
    18. printf("输入的数是一个素数");
    19. }
    20. else
    21. {
    22. printf("输入的数不是一个素数");
    23. }
    24. return 0;
    25. }

    逐字检查法

    自解

    1. 解法1
    2. a = "python"
    3. b = "typhon"
    4. list1 = list(b)
    5. print(list1)
    6. def judge(a,b):
    7. for i in range(len(a)):
    8. for j in range(len(a)):
    9. if a[i] == b[j]:
    10. list1[j] = None
    11. break
    12. for i in range(len(a)):
    13. list1[i] == None
    14. if list1[i] != None:
    15. return False
    16. return True
    17. if judge(a,b) == True:
    18. print("是变位词")
    19. elif judge(a,b) == False:
    20. print("不是变位词")

    1. 解法2
    2. a = "python"
    3. b = "typhon"
    4. def judge(a,b):
    5. list1 = list(a)
    6. list2 = list(b)
    7. j = len(list2)
    8. list1.sort()
    9. list2.sort()
    10. for i in range(len(list1)):
    11. if list1[i] == list2[i]:
    12. pass
    13. else:
    14. return False
    15. return True
    16. if judge(a,b) == True:
    17. print("是变位词")
    18. elif judge(a,b) == False:
    19. print("不是变位词")

    计数比较法

     

    1. a = "pythoe"
    2. b = "typhon"
    3. """计数比较-自解"""
    4. dict1 = dict()
    5. dict2 = dict()
    6. list1 = list(a)
    7. list2 = list(b)
    8. for i in range(ord("a"),ord("z")+1):
    9. dict1[i] = 0
    10. for i in range(ord("a"),ord("z")+1):
    11. dict2[i] = 0
    12. def judge(a,b):
    13. for j in range(len(a)):
    14. for i in range(ord("a"),ord("z")+1):
    15. if ord(list1[j]) == i:
    16. dict1[i] = dict1[i] + 1
    17. for j in range(len(a)):
    18. for i in range(ord("a"),ord("z")+1):
    19. if ord(list2[j]) == i:
    20. dict2[i] = dict2[i] + 1
    21. for i in range(ord("a"),ord("z")+1):
    22. if dict1[i] == dict2[i]:
    23. pass
    24. else:
    25. return False
    26. return True
    27. if judge(a,b) == True:
    28. print("是变位词")
    29. elif judge(a,b) == False:
    30. print("不是变位词")
    31. """计数比较-仿他解"""
    32. def judge(a,b):
    33. c1 = [0] * 26
    34. c2 = [0] * 26
    35. for i in range(len(a)):
    36. pos = ord(a[i]) - ord('a')
    37. c1[pos] = c1[pos] + 1
    38. for i in range(len(a)):
    39. pos = ord(b[i]) - ord('a')
    40. c2[pos] = c2[pos] + 1
    41. for i in range(26):
    42. if c1[i] == c2[i]:
    43. pass
    44. else:
    45. return False
    46. return True
    47. if judge(a,b) == True:
    48. print("是变位词")
    49. elif judge(a,b) == False:
    50. print("不是变位词")

     

     他解

     

    \

     

     

    鹏哥C语言

     

  • 相关阅读:
    【深入浅出Spring6】第二期——依赖注入
    激光雷达工作原理简介
    go, 随机实例化xml (2)
    大模型深挖数据要素价值:算法、算力之后,存储载体价值凸显
    郑州市管城区工信局局长任华民一行莅临中创算力调研指导工作
    2022-10-27 C++并发编程( 三十八 )
    Pytorch 实现目标检测二(Pytorch 24)
    MODBUS转PROFINET网关将电力智能监控仪表接入PROFINET网络案例
    网络安全(黑客)自学
    Java编程规范(命名规则),Java程序的运行过程(执行流程)分析
  • 原文地址:https://blog.csdn.net/Hobertworker/article/details/139796843