求正负数交互序列的和的MFC版
生活随笔
收集整理的這篇文章主要介紹了
求正负数交互序列的和的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版的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GDI对象存储和查看lib文件导出函数
- 下一篇: DirectX 向量点乘和叉乘