日期计算OI 日期到天数的转换; 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)

日期计算OI 日期到天数的转换

#include <iostream>
using namespace std;
//int main()
//{  
//	int list[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
//	int y, m, d;
//	while (cin >> y >> m >> d)
//	{
//		int a , days = 0;
//		if ((y % 400 == 0) || (y % 4 == 0 && y % 100 != 0))
//			a = 1;
//		else
//		    a = 0;
//		for (int i = 0; i < m - 1; i++)//如果是 5.3 m为5;加上1,2,3,4月的日期;i= 0,1,2,3
//			days += list[i];
//		if ((a == 1) && (m >= 2))
//			days++;
//		days += d;
//		cout << days << endl;
//	}
//	getchar();
//	return 0;
//}

求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)

//  创建N个对象实现循环
class Solution
{
public:
Solution()
	{
	Sum += N;
	--N;
	}
	int sum_Solution(int n)
	{
		N = 0;
		Sum = 0;
		Solution* a = new Solution[n];//n个对象
		delete[]a;
		a = nullptr;
		return Sum;
	}
private:
	static int N;
	static int Sum;
};
int Solution::N = 0;
int Solution::Sum = 0;
//利用逻辑运算符&&的截断性质来终止递归。
class Solution{
public:
	int Sum_Solution(int n){
		int ans = n;
		ans && (ans += Sum_Solution(n - 1));
		return ans;
	}
};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值