小明去打印

任务描述

小明需要去打印 10 个材料,复印店打印的价格是每张纸 0.1 元,且每张纸最多包含70个字,如果超过70个字则需要增加纸来完成打印。

现在给出小明每份材料的字数,求他所花费的金额。

编程要求 根据提示,在右侧编辑器补充代码,计算并输出数组的平均值和最大值。

测试说明 平台会对你编写的代码进行测试:

测试输入: 39 49 42 61 44 147 42 72 35 46 预期输出: 1.3

样例代码

#include <iostream>
#include <iomanip>
using namespace std;
double money(int page){
	if (page%70 == 0){
		return 0.1*page/70;
	}else{
		return 0.1*(page/70+1);
	}
} 
int main(){
	int a0,a1,a2,a3,a4,a5,a6,a7,a8,a9;
	cin>>a0>>a1>>a2>>a3>>a4>>a5>>a6>>a7>>a8>>a9;
	cout<<setiosflags(ios::fixed)<<setprecision(1)<<money(a0)+money(a1)+money(a2)+money(a3)+
	money(a4)+money(a5)+money(a6)+money(a7)+money(a8)+money(a9);
	return 0;
} 

合法纳税

任务描述

计算个人所得税,月收入5000元以上征20%,800元以上5000元 以下的征3%,800元以下的免税,输入个人应发工资,计算并输出个人所得税。

编程要求 根据提示,在右侧编辑器补充代码,计算并输出个人所得税。

测试说明 平台会对你编写的代码进行测试:

测试输入:1287 预期输出:个人所得税14.61元

样例代码

#include <iostream>
#include <iomanip>
using namespace std;
int main(){
	int s;
	cin>>s;
	if (s<=800) cout<<setiosflags(ios::fixed)<<setprecision(2)<<"个人所得税0.00元";
	else if (s<=5000) cout<<setiosflags(ios::fixed)<<setprecision(2)<<"个人所得税"<<0.03*(s-800)<<"元";
	else cout<<setiosflags(ios::fixed)<<setprecision(2)<<"个人所得税"<<0.2*(s-5000)+126<<"元";
	return 0;
}

A、B和C谁最大

任务描述

有3个整型数,a,b,c,由键盘输入,输出其中最大的数。

编程要求 根据提示,在右侧编辑器补充代码,计算并输出最大的数。

测试说明 平台会对你编写的代码进行测试:

测试输入:12 89 100 预期输出:100

样例代码

//有3个数,a,b,c,由键盘输入,输出其中最大的数。
#include <iostream>
using namespace std;
int main(){
	int a,b,c;
	cin>>a>>b>>c;
	if (a>=b and a>=c){
		cout<<a;
	}else if (b>=a and b>=c){
		cout<<b;
	}else{
		cout<<c;
	}
}

石头剪刀布

任务描述

大家应该都会玩“锤子剪刀布”的游戏。现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。

输入 甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空格。

输出 如果甲赢了:输出“甲胜” 如果乙赢了:输出“乙胜” 如果打平了:输出“平局”

测试说明 平台会对你编写的代码进行测试:

输入:C J 输出:甲胜

样例代码

#include <iostream>
using namespace std;
int main(){//0甲赢   1平   2 乙赢 
	char a, b;
	cin>>a>>b;
    if (a=='C'){
        if (b=='J') {
            cout<<"甲胜";
        }
        else if (b=='C') cout<<"平局";
        else if (b=='B') {
            cout<<"乙胜";
        }
    }
    else if (a=='B'){
        if (b=='J') {
            cout<<"乙胜";
        }
        else if (b=='C') {
            cout<<"甲胜";
        }
        else if (b=='B') cout<<"平局";
    }
    else if (a=='J'){
        if (b=='J') cout<<"平局";
        else if (b=='C') {
            cout<<"乙胜";
        }
        else if (b=='B') {
            cout<<"甲胜";
        }
    }
}

日历问题

任务描述

在我们现在使用的日历中, 闰年被定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰年。例如:1700, 1800, 1900 和 2100 不是闰年,而 1600, 2000 和 2400是闰年。 给定从公元2000年1月1日开始逝去的天数,你的任务是给出这一天是哪年哪月哪日星期几。

编程要求 根据提示,在右侧编辑器补充代码。

输入 一个正整数,表示从2000年1月1日开始逝去的天数。可以假设结果的年份不会超过9999。

输出 输出一行,该行包含对应的日期和星期几。格式为“YYYY-MM-DD DayOfWeek”, 其中 “DayOfWeek” 必须是下面中的一个: “Sunday”, “Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday” and “Saturday“

测试说明 平台会对你编写的代码进行测试:

测试输入:1730 预期输出:2004-09-26 Sunday

测试输入:1740 预期输出:2004-10-06 Wednesday

样例代码

#include <iostream>
using namespace std;
int run(int n){
	if (n%4==0&&n%100!=0||n%400==0) return 1;
	else return 0;
}
int years[2]={365,366};
string DayOfWeek[7]={"Saturday","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday"};
int MonthOfYear[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int main(){
	int days;
	cin>>days; 
	MonthOfYear[1]=28;
	int n=days;
	int year=2000;
	int m=0;
	while (n>=years[run(year)]){
		n-=years[run(year)];
		year++;
	}
	if (run(year)==1) MonthOfYear[1]=29;
	
	while (n>=MonthOfYear[m]){
		n-=MonthOfYear[m];
		m++;
	}
	int w=days%7;//YYYY-MM-DD DayOfWeek
	cout<<year<<"-";
	if (m+1<10) cout<<"0"<<m+1<<"-";				
	else cout<<m+1<<"-";
	if (n+1<10) cout<<"0"<<n+1<<" ";
	else cout<<n+1<<" ";
	cout<<DayOfWeek[w]<<endl; 
	return 0;
}