Python的进阶之道【AIoT阶段一(上)】(十五万字博文 保姆级讲解)—玩转Python语法(一):面向过程—Python程序设计训练场—打怪刷级(4)(二十七)

简介: 玩转Python语法(一):面向过程

6.2 打怪刷级

6.2.1 游戏时间2

题目描述:

读取四个整数 A,B,C,D,用来表示游戏的开始时间和结束时间。

其中 A 和 B 为开始时刻的小时和分钟数,C 和 D 为结束时刻的小时和分钟数。

请你计算游戏的持续时间。

比赛最短持续 1 分钟,最长持续 24 小时。

输入格式:

共一行,包含四个整数 A,B,C,D。

输出格式:

输出格式为 O JOGO DUROU X HORA(S) E Y MINUTO(S),表示游戏共持续了 X 小时 Y 分钟。

输入样例1:

7 8 9 10

输出样例1:

O JOGO DUROU 2 HORA(S) E 2 MINUTO(S)

输入样例2:

7 7 7 7

输出样例2:

O JOGO DUROU 24 HORA(S) E 0 MINUTO(S)

输入样例3:

7 10 8 9

输出样例3:

O JOGO DUROU 0 HORA(S) E 59 MINUTO(S)

在线评测环境:AcWing 668. 游戏时间2

代码:

a = input()
b = [int(x) for x in a.split()]
if b[2] < b[0] or (b[2] == b[0] and b[1] >= b[3]):
    b[2] += 24
if b[3] < b[1]:
    b[3] += 60
    b[2] -= 1
print('O JOGO DUROU %d HORA(S) E %d MINUTO(S)' % (b[2] - b[0], b[3] - b[1]))

6.2.2 平均数3

题目描述:

读取 4 个数字 N1,N2,N3,N4,这 4 个数字都是保留 1 位小数的浮点数,对应于学生获得的 4 个分数。


这 4 个分数的权重分别为 2,3,4,1,请你计算学生成绩的平均值 X 并输出 Media: X。


接下来分为以下三种情况:


1.如果平均值为 7.0 或更高,则输出 Aluno aprovado.。

2.如果平均值小于 5.0,则输出 Aluno reprovado.。

3.如果平均值大于等于 5.0 并且小于 7.0,则输出 Aluno em exame.,并再读取一个数字 Y,然后输出 Nota do exame: Y。接下来重新计算平均值 Z=(X+Y)/2,如果 Z 大于或等于 5.0,则输出 Aluno aprovado.,否则输出 Aluno reprovado.。最后输出 Media final: Z,表示学生的最终成绩。

输入格式:

输入中包含四个浮点数,表示学生的四个成绩。

也有部分满足情况 3的数据,多包含一个浮点数。

输出格式:

输出的结果均保留 1 位小数,具体形式参照题目描述和输出样例。

输入样例1:

2.0 4.0 7.5 8.0
6.4

输出样例1:

Media: 5.4
Aluno em exame.
Nota do exame: 6.4
Aluno aprovado.
Media final: 5.9

输入样例2:

2.0 6.6 4.0 9.0

输出样例2:

Media: 4.9
Aluno reprovado.

输入样例3:

9.0 4.0 8.5 9.0

输出样例3:

Media: 7.3
Aluno aprovado.

在线评测环境:AcWing 661. 平均数3

代码:

a, b, c, d = map(float, input().split())
x = (a * 2 + b * 3 + c * 4 + d) / 10
print("Media: %.1f" % x)
if(x >= 7.0):
    print("Aluno aprovado.")
if(x < 5.0):
    print("Aluno reprovado.")
if(x >= 5.0 and x < 7.0):
    print("Aluno em exame.")
    y = float(input())
    print("Nota do exame: %0.1f" % y)
    z = (x + y) / 2
    if(z >= 5.0):
        print("Aluno aprovado.")
    else:
        print("Aluno reprovado.")
    print("Media final: %0.1f" % z)

6.2.3 简单斐波那契

题目描述:

以下数列 0 1 1 2 3 5 8 13 21 ... 被称为斐波纳契数列。

这个数列从第 3 项开始,每一项都等于前两项之和。

输入一个整数 N,请你输出这个序列的前 N 项。

输入格式:

一个整数 N。

输出格式:

在一行中输出斐波那契数列的前 N 项,数字之间用空格隔开。

输入样例:

5

输出样例:

0 1 1 2 3

在线评测环境:AcWing 717. 简单斐波那契

代码:

n = int(input())
a, b = 0, 1
s = ''
for i in range(n):
    s += str(a) + ' '
    c = a
    a = b
    b = c + a
print(s)

6.2.4 完全数

题目描述:

一个整数,除了本身以外的其他所有约数的和如果等于该数,那么我们就称这个整数为完全数。

例如,6 就是一个完全数,因为它的除了本身以外的其他约数的和为 1+2+3=6。

现在,给定你 N 个整数,请你依次判断这些数是否是完全数。

输入格式:

第一行包含整数 N,表示共有 N 个测试用例。

接下来 N 行,每行包含一个需要你进行判断的整数 X。

输出格式:

每个测试用例输出一个结果,每个结果占一行。

如果测试数据是完全数,则输出 X is perfect,其中 X 是测试数据。

如果测试数据不是完全数,则输出 X is not perfect,其中 X 是测试数据。

输入样例:

3
6
5
28

输出样例:

6 is perfect
5 is not perfect
28 is perfect

在线评测环境:AcWing 725. 完全数

代码:

n = int(input())
for i in range(n):
    x = int(input())
    if x == 1:
        t = 0 
    else:
        t = 1
    for j in range(2, int(x ** 0.5) + 1):
        if x % j == 0 and j != x ** 0.5:
            t += j + x / j
        if x % j == 0 and j == x ** 0.5:
            t += j
    if t == x:
        print("%d is perfect" % x)
    else:
        print("%d is not perfect" % x)

6.2.5 质数

题目描述:

一个大于 1 的自然数,如果除了 1 和它自身外,不能被其他自然数整除则称该数为质数。

例如 7 就是一个质数,因为它只能被 1 和 7 整除。

现在,给定你 N 个大于 1 的自然数,请你依次判断这些数是否是质数。

输入格式:

第一行包含整数 N,表示共有 N 个测试数据。

接下来 N 行,每行包含一个自然数 X。

输出格式:

每个测试用例输出一个结果,每个结果占一行。

如果测试数据是质数,则输出 X is prime,其中 X 是测试数据。

如果测试数据不是质数,则输出 X is not prime,其中 X 是测试数据。

输入样例:

3
8
51
7

输出样例:

8 is not prime
51 is not prime
7 is prime

在线评测环境:AcWing 726. 质数

代码:

n = int(input())
for i in range(n):
    x = int(input())
    flag = True
    for i in range(2, int(x ** 0.5) + 1):
        if x % i == 0:
            flag = False
            break
    if flag:
        print("%d is prime" % x)
    else:
        print("%d is not prime" % x)

6.2.6 只出现一次的字符

题目描述:

给你一个只包含小写字母的字符串。

请你判断是否存在只在字符串中出现过一次的字符。

如果存在,则输出满足条件的字符中位置最靠前的那个。

如果没有,输出 no。

输入格式:

共一行,包含一个由小写字母构成的字符串。

数据保证字符串的长度不超过 100000。

输出格式:

输出满足条件的第一个字符。

如果没有,则输出 no。

输入样例:

abceabcd

输出样例:

e

在线评测环境:AcWing 772. 只出现一次的字符

代码:

str = input()
d = dict()
for s in str:
    if s not in d:
        d[s] = 1
    else:
        d[s] += 1
flag = True
for s in str:
    if d[s] == 1:
        flag = False
        print(s)
        break
if flag == True:
    print("no")

6.2.13 最小公倍数

题目描述:

输入两个整数 a 和 b,请你编写一个函数,int lcm(int a, int b),计算并输出 a 和 b 的最小公倍数。

输入格式:

共一行,包含两个整数 a 和 b。

输出格式:

共一行,包含一个整数,表示 a 和 b 的最小公倍数。

输入样例:


目录
相关文章
|
11月前
|
人工智能 Ubuntu IDE
【Python】基础:环境配置与基础语法
本文介绍了Python编程语言及其环境配置方法。Python由Guido van Rossum于1991年创建,以其简洁、易学和强大的功能著称。文章详细讲解了Python的主要特点、Windows和Ubuntu下的安装配置步骤、基础语法、控制流、函数、文件操作、模块使用及面向对象编程等内容,帮助读者快速入门Python编程。
290 4
|
10月前
|
IDE 数据挖掘 开发工具
Python作为一种广受欢迎的高级编程语言,以其简洁的语法和强大的功能吸引了众多初学者和专业开发者
Python作为一种广受欢迎的高级编程语言,以其简洁的语法和强大的功能吸引了众多初学者和专业开发者
219 7
|
6月前
|
Python
课时19:Python的基本语法
今天给大家带来分享的是 Python 的基本语法,分为以下六个部分。 1.在 Python 中严格区分大小写 2.Python 中的每一行就是一条语句,每条语句以换行结束 3.Python 中每一行语句不要过长 4.条语句可以分多行编写,语句后边以\结尾 5.Python 是缩进严格的语言,不要随便写缩进 6.在 Python 中使用#来表示注释
|
10月前
|
存储 索引 Python
Python 的基本语法
这些是 Python 的基本语法要素,掌握它们是学习和使用 Python 的基础。通过不断地实践和应用,你将能够更深入地理解和熟练运用这些语法知识,从而编写出高效、简洁的 Python 代码
391 61
|
8月前
|
存储 开发者 Python
python基本语法
Python的基本语法简洁而强大,支持多种编程范式,包括面向对象编程和函数式编程。通过掌握变量和数据类型、操作符、控制结构、函数、类和模块等基本概念,可以有效地编写高效、可读的Python代码。无论是初学者还是经验丰富的开发者,Python都提供了丰富的工具和库来满足各种编程需求。
246 13
|
10月前
|
存储 Python
Python编程入门:理解基础语法与编写简单程序
本文旨在为初学者提供一个关于如何开始使用Python编程语言的指南。我们将从安装Python环境开始,逐步介绍变量、数据类型、控制结构、函数和模块等基本概念。通过实例演示和练习,读者将学会如何编写简单的Python程序,并了解如何解决常见的编程问题。文章最后将提供一些资源,以供进一步学习和实践。
185 1
|
10月前
|
机器学习/深度学习 数据挖掘 开发者
Python编程入门:理解基础语法与编写第一个程序
【10月更文挑战第37天】本文旨在为初学者提供Python编程的初步了解,通过简明的语言和直观的例子,引导读者掌握Python的基础语法,并完成一个简单的程序。我们将从变量、数据类型到控制结构,逐步展开讲解,确保即使是编程新手也能轻松跟上。文章末尾附有完整代码示例,供读者参考和实践。
|
11月前
|
存储 C语言 索引
Python 语法及入门 (超全超详细) 专为Python零基础 一篇博客让你完全掌握Python语法
本文全面介绍了Python的基础知识,包括Python的诞生背景、为什么学习Python、Python的应用场景、Python环境的安装、Python的基础语法、数据类型、控制流、函数以及数据容器的使用方法,旨在为Python零基础读者提供一篇全面掌握Python语法的博客。
2942 1
Python 语法及入门 (超全超详细) 专为Python零基础 一篇博客让你完全掌握Python语法
|
10月前
|
存储 Python Perl
python正则语法
本文介绍了正则表达式的基础知识及其在 Python 中的应用。首先解释了为什么要使用正则表达式,通过一个判断手机号的示例展示了正则表达式的简洁性。接着详细介绍了 `re` 模块的常用方法,如 `match()`、`search()`、`findall()`、`finditer()` 等,并讲解了正则表达式的基本语法,包括匹配单个字符、数字、锚字符和限定符等。最后,文章还探讨了正则表达式的高级特性,如分组、编译和贪婪与非贪婪模式。
112 2
|
11月前
|
存储 程序员 开发者
Python编程入门:从零开始掌握基础语法
【10月更文挑战第21天】本文将带你走进Python的世界,通过浅显易懂的语言和实例,让你快速了解并掌握Python的基础语法。无论你是编程新手还是想学习一门新的编程语言,这篇文章都将是你的不二之选。我们将一起探索变量、数据类型、运算符、控制结构、函数等基本概念,并通过实际代码示例加深理解。准备好了吗?让我们开始吧!

热门文章

最新文章

推荐镜像

更多