欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

求正负数交互序列的和的MFC版

发布时间:2025/4/14 编程问答 42 豆豆
生活随笔 收集整理的这篇文章主要介绍了 求正负数交互序列的和的MFC版 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

这是一道ACM基础题;

输入n,计算f(n) =  - 1 + 2 - 3 + … + ( - 1)^n*n
问题分析:可使用列表法用数组存放结果,获取n后通过数组直接输出;或者分n为正数与负数两种情况讨论;

程序;

#include<stdio.h> typedef long long LL;int main() {LL n,sum=0;scanf("%lld",&n);if(n%2==0){sum=n/2;}else{sum=(n-1)/2-n;}printf("%lld",sum);return 0; }

它是分两种情况就计算了;

先手算看一下;

f(n) =  - 1 + 2 - 3 + … + ( - 1)^n*n

(-1)^4*4 = 4
f(4) = -1 + 2 - 3 +4 = 2

(-1)^5*5 = -5
f(5) = -1 + 2 - 3 +4 -5 = -3

(-1)^6*6 = 6
f(6) = -1 + 2 - 3 +4 -5 + 6 = 3

(-1)^7*7 = -7
f(7) = -1 + 2 - 3 +4 -5 + 6 - 7 = -4

(-1)^11*11 = -11
f(11) = -1 + 2 - 3 +4 -5 + 6 - 7 + 8 - 9 + 10 - 11 = -6

MFC做一下;对话框工程;

void CzfDlg::OnBnClickedButton1() {// TODO: 在此添加控件通知处理程序代码int n,sum=0;CString strn, strsum;GetDlgItem(IDC_EDIT1)->GetWindowTextW(strn);n = _ttoi(strn);if(n%2==0){sum=n/2;}else{sum=(n-1)/2-n;}strsum.Format(_T("%d"), sum);SetDlgItemText(IDC_EDIT2,strsum); }

运行;

 

 

 

 

 

总结

以上是生活随笔为你收集整理的求正负数交互序列的和的MFC版的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。