基础实验2-2.1 整数的分类处理 (20分)

给定 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

以下是AC答案
#include<iostream>
#include<cstdio>
using namespace std;

int main()
{
	int n;
	scanf("%d",&n);

	int a1=0,a2=0,a3=0;
	double suma3=0;

	int a[n];
	for(int i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
	}

	for(int i=0;i<n;i++)
	{
		if(a[i]%3==0)//A1
		{
			if(a1<a[i])
				a1=a[i];
		}
		else if(a[i]%3==1)//A2
		{
			a2++;
		}
		else if(a[i]%3==2)//A3
		{
			a3++;
			suma3+=a[i];
		}
	}

	if(a1==0)
		cout<<"NONE"<<‘ ‘;
	else
		cout<<a1<<‘ ‘;

	if(a2==0)
		cout<<"NONE"<<‘ ‘;
	else
		cout<<a2<<‘ ‘;

	if(a3==0)
		cout<<"NONE";
	else
		printf("%.1f",suma3/a3);

	return 0;
 }

  

原文地址:https://www.cnblogs.com/qinmin/p/12263314.html

时间: 2024-11-08 13:11:48

基础实验2-2.1 整数的分类处理 (20分)的相关文章

基础实验4-2.3 二叉树的非递归遍历 (25分)

本题要求用非递归的方法实现对给定二叉树的 3 种遍历. 函数接口定义: void InorderTraversal( BinTree BT ); void PreorderTraversal( BinTree BT ); void PostorderTraversal( BinTree BT ); 其中BinTree结构定义如下: typedef struct TNode *Position; typedef Position BinTree; struct TNode{ ElementType

1012 数字分类 (20 分)

给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A?1?? = 能被 5 整除的数字中所有偶数的和: A?2?? = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n?1??−n?2??+n?3??−n?4???: A?3?? = 被 5 除后余 2 的数字的个数: A?4?? = 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位: A?5?? = 被 5 除后余 4 的数字中最大数字. 输入格式: 每个输入包含 1 个测试用例.每个测试用例先给出一个

1012 数字分类 (20 分)

给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A ?1 ?? = 能被 5 整除的数字中所有偶数的和: A ?2 ?? = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n ?1 ?? ?n ?2 ?? +n ?3 ?? ?n ?4 ?? ?: A ?3 ?? = 被 5 除后余 2 的数字的个数: A ?4 ?? = 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位: A ?5 ?? = 被 5 除后余 4 的数字中最大数字. 输入格式: 每个输入

【PAT】B1012 数字分类(20 分)

#include<stdio.h> int arr[1005]; int main(){ int N,yu,A1,A2,flag2=1,A3,A4,A4a,A5,A5a=0; A1=A2=A3=A4=A4a=A5=0; scanf("%d",&N); for(int i=0;i<N;i++){//输入数据,放入数组 scanf("%d",&arr[i]); yu = arr[i]%5; if(yu==0&&arr[i

基础实验1(单臂路由及利用路由器开启DHCP自动分配IP地址)

实验环境:PT 6.2 两台PC:PC1/PC2  一台cisco 2960交换机 一台2620路由器 实验目的:让PC1/PC2属于不同的VLAN,且相互通信.同时自动获取各自网段IP地址. 1.进入2960的配置模式,划分不同的vlan并将PC1/PC2划入不同的网段.并将连通路由器端口转为干道协议. 代码如下: >en #conf t config)#vlan 10 config)#vlan 20 config)#int f0/21 config)#switchport ac vlan 1

[nRF51822] 10、基础实验代码解析大全 &#183; 实验15 - RTC

一.实验内容: 配置NRF51822 的RTC0 的TICK 频率为8Hz,COMPARE0 匹配事件触发周期为3 秒,并使能了TICK 和COMPARE0 中断. TICK 中断中驱动指示灯D1 翻转状态, 即指示灯D1 以8Hz 的速率翻转状态 COMPARE0 中断中点亮指示灯D2 二.nRF51822的内部RTC结构: NRF51822 有两个RTC 时钟:RTC0,RTC1.两个RTC 均为24 位,使用LFCLK 低频时钟,并带有12 位分频器,可产生TICK.compare 和溢出

[ZigBee] 4、ZigBee基础实验——中断

前言 上一篇介绍了CC2530的IO的基础知识,并用LED的控制来展示如何配置并控制GPIO的输出,用KEY状态的读取实验来展示如何读取GPIO的状态.从上一节的KEY状态读取的代码看出是采用轮训方式的,这种方式是很浪费资源,本节将介绍一种中断方式来替换轮训的方案. 一.中断 电路依然没变,若要使用CC2530的外部中断需要使用P0IEN.PICTL.P0IFG.INE1寄存器. 按键中断初始设置为: 1 /********************************************

WLGK-51单片机接口技术基础实验 ——LED闪烁灯

WLGK-51单片机接口技术基础实验-LED闪烁灯 当我们开始接触单片机,首先接触的第一个实验就是LED灯的使用,类似于我们学习软件开始接触的第一个程序"HelloWorld",这个实验是带领我们走入"软硬件综合使用"的一个很好入门示例,51单片机是他的一个载体.下面小伙伴们,让我们一起来揭开LED的神秘面纱吧! 万立高科官网:www.wanligaoke.com 万立高科官方商城:http://www.wlgkbj.com 万立高科淘宝直销店铺:https://r

[ZigBee] 6、ZigBee基础实验——定时器3和定时器4(8 位定时器)

上一节讲了16位定时器1,本节讲8位定时器3和定时器4! 1.综述 Timer 3 and Timer 4 are two 8-bit timers(8位定时器). Each timer has two independent capture/compare channels(独立的捕获/比较通道),each using one I/O pin per channel. Features: · Two capture/compare channels· Set, clear or toggle