#include<iostream>#include<cstdio>#include<string>#include<iomanip>
using namespace std;
intmain(){
int n;
string s;
cin>>n;
int f=0;
int f2;
int cnt=0;
float t=0;
for(int i=0;i<n;i++){
cin>>s;
f=0;
f2=0;
for(int i=0;s[i]!=NULL;i++){
if(s[i]=='+'||s[i]=='-'){
if(i==0){
if(s[1]==NULL){
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
f=1;
break;
}
elseif(s[1]=='.'){
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
f=1;
break;
}
}
else{
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
f=1;
break;
}
}
elseif(s[i]=='.'){
if(i==0){
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
f=1;
break;
}
if(f2==0){
f2=1;
}
else{
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
f=1;
break;
}
if(s[i+3]!=NULL&&s[i+1]!=NULL&&s[i+2]!=NULL){
if(s[i+3]<='9'&&s[i+3]>='0'){
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
f=1;
break;
}
}
}
elseif(s[i]<'0'||s[i]>'9'){
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
f=1;
break;
}
}
if(f==0){
if(stof(s)>=-1000&&stof(s)<=1000){
cnt++;
t+=stof(s);
}
else{
cout<<"ERROR: "<<s<<" is not a legal number"<<endl;
}
}
}
if(cnt==1){
cout<<"The average of 1 number is ";
if(t/cnt<0&&t/cnt>-0.005){
cout<<fixed<<setprecision(2)<<0;
}
else{
cout<<fixed<<setprecision(2)<<(t/cnt);
}
}
elseif(cnt==0){
cout<<"The average of "<<cnt<<" numbers is ";
cout<<"Undefined";
}
else{
cout<<"The average of "<<cnt<<" numbers is ";
if(t==0){
cout<<"Undefined";
}
else{
if(t/cnt<0&&t/cnt>-0.005){
cout<<fixed<<setprecision(2)<<0;
}
else{
cout<<fixed<<setprecision(2)<<(t/cnt);
}
}
}
return0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)