码迷,mamicode.com
首页 > 其他好文 > 详细

PTA乙级 (*1054 求平均值 (20分))

时间:2020-01-23 09:47:26      阅读:104      评论:0      收藏:0      [点我收藏+]

标签:class   cstring   span   ==   ref   check   bool   namespace   std   

1054 求平均值 (20分)

https://pintia.cn/problem-sets/994805260223102976/problems/994805272659214336

#include <cstdio>
#include <cstring>
#include <string>
#include <iostream>
#include <cmath>
#include <algorithm>
#include <iomanip>
using namespace std;
bool check(string &str)
{
	bool flag=false;
	int i=0,a=0,b=0;
	if(str[i]==‘-‘) i++;
	for(;i<str.size();i++)
	{
		if((!isdigit(str[i]))&&(str[i]!=‘.‘)) return false;
		if(str[i]==‘.‘) 
		{
			a++;
			flag=true;
			continue;
		}
		if(flag) b++;
	}
	if(a>1||b>2||stod(str)>1000||stod(str)< -1000) return false;
	else return true;
}
int main()
{
	int n,count=0;
	string str;
	double sum=0;
	cin>>n;
	for(int i=0;i<n;i++) 
	{
		cin>>str;
		if(!check(str)) cout<<"ERROR: "<<str<<" is not a legal number\n";  
		else if(check(str)){
			count++;
			sum+=stod(str);
		}
	}
	if(count==0) cout<<"The average of 0 numbers is Undefined\n";
	else if(count==1) cout<<"The average of 1 number is "<<fixed<<setprecision(2)<<sum<<endl;
	else printf("The average of %d numbers is %.2f\n",count,sum/count);
	return 0;
}

PTA乙级 (*1054 求平均值 (20分))

标签:class   cstring   span   ==   ref   check   bool   namespace   std   

原文地址:https://www.cnblogs.com/jianqiao123/p/12229957.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!