PTA 整数的分类处理(c语言)(超细致讲解)

文章介绍了如何通过编程解决一个关于整数特性的计算问题,包括输入、处理步骤和输出样例,强调了逻辑思维和循环结构的应用。
摘要由CSDN通过智能技术生成

给定 N 个正整数,要求你从中得到下列三种计算结果:

  • A1 = 能被 3 整除的最大整数
  • A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数
  • A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)

输入格式:

输入首先在第一行给出一个正整数 N,随后一行给出 N 个正整数。所有数字都不超过 100,同行数字以空格分隔。

输出格式:

在一行中顺序输出 A1、A2、A3的值,其间以 1 个空格分隔。如果某个数字不存在,则对应输出NONE

输入样例 1:

8
5 8 7 6 9 1 3 10

输出样例 1:

9 3 6.5

输入样例 2:

8
15 18 7 6 9 1 3 10

输出样例 2:

18 3 NONE

相信很多刚学习的同学不知道怎么整理思路,其实很简单,题中每个数都要经历三种判断,所以我们可以用三次循环来进行判断和运行。

  • 运行思路

    1. 首先,通过scanf函数获取输入的数字个数N
    2. 然后,使用for循环依次读取N个数字,并根据不同的取余结果进行处理:
      • 如果num%3==0,则更新A1为满足条件中的最大值。
      • 如果num%3==1,则增加A2计数。
      • 如果num%3==2,则增加A3计数,并累加该数字到sum中。
    3. 最后,根据不同的情况输出结果:
      • 如果A1为0,则输出"NONE "。
      • 如果A2为0,则输出"NONE "。
      • 如果sum/A3为0,则输出"NONE"。
      • 否则,分别输出A1的值、A2的值以及sum/A3的平均值(保留一位小数)。

这个时候我们先进行输入

此时N代表我们输入的整数个数,num代表整数的值,A1,A2,就是所要求的A1,A2,,但是A3是满足第三个条件的整数的个数,并不是最终A3的值,sum为求A3时我们所需要的所有满足要求的整数的累加和。

下面是三个循环

此时我们已经得到了A1 A2 A3 sum的值

接下来进行分类输出

 

因为我们输出时每个值中间需要空格,所以A1 A2 输出时后面需要加空格 

如果觉得对你有帮助希望可以点赞收藏,如有错请联系更改

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值