python_求1-2+3-4+......-100的值
求1-2+3-4+5……-100 = ?
逻辑整理:
-- 本质上可以转换一下,1+3+5+……+99 -(2+4+……+100)
加减部分间隔都为2,先求1+3+5+……+99的值,
再求2+4+……+100的值,减去结果就出来了
-- 还可以如此转换 1*[(-1)**(1+1)] +2*[(-1)**(1+2)]+……+100[(-1)**(1+100)]
通过-1来进行+ - 符号的转变
-- 最简单的方法是分开,1 – 2 = -1 ,3 – 4 = -1 ,
依次下去,其实答案已经出来了 结果等于-50
程序化:
第一种方法:
#!/usr/bin/python3 __author__ = 'beimenchuixue'
__blog__ = 'http://www.cnblogs.com/2bjiujiu/' def sum_go(sum_to):
sum_count_1 = 1 # 计算
sum_1 = 0 # 初始和值 sum_count_2 = 2
sum_2 = 0
while True:
if sum_count_1 == sum_to + 1: # 初始值以1开始
break
sum_1 += sum_count_1 # 前者计算累计
sum_count_1 += 2 # 前者和累计 sum_2 += sum_count_2
sum_count_2 += 2 return sum_1 - sum_2 # 结果两者相减 if __name__ == '__main__':
result = sum_go(sum_to=100)
print(result)
第二种方法:
#!/usr/bin/python3 __author__ = 'beimenchuixue'
__blog__ = 'http://www.cnblogs.com/2bjiujiu/' def sum_go(sum_to):
sum_all = 0
for i in range(1, sum_to+1):
sum_all += i * (-1) ** (1 + i)
return sum_all if __name__ == '__main__':
result = sum_go(sum_to=100)
print(result)
python_求1-2+3-4+......-100的值的更多相关文章
- c语言练习题:求1-1/2+1/3-1/4+... -1/100的值
/******************************************* 求1-1/2+1/3-1/4+... -1/100的值 *************************** ...
- pow函数(数学次方)在c语言的用法,两种编写方法实例( 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值)
关于c语言里面pow函数,下面借鉴了某位博主的一篇文章: 头文件:#include <math.h> pow() 函数用来求 x 的 y 次幂(次方),x.y及函数值都是double型 , ...
- 华为上机:求2的N次幂的值
求2的N次幂的值 描述: 求2的N次幂的值(N最大不超过31,用位运算计算,结果以十六进制进行显示). 运行时间限制: 无限制 内存限制: 无限制 输入: 数字N 输出: 2的N次方(16进制,需要按 ...
- 写一函数,用来求表达式1+2+3+.....+n的值,并编写主函数
Description 写一函数,用来求表达式1+2+3+.....+n的值,并编写主函数.n由键盘输入. Input 输入一个整数 Output 输出表达式的值 Sample Input 5 Sam ...
- 求一个Map中最大的value值,同时列出键,值
求一个Map中最大的value值,同时列出键,值 方法1. public static void main(String[] args){ Map map=new HashMap(); map.p ...
- 求集合中选一个数与当前值进行位运算的max
求集合中选一个数与当前值进行位运算的max 这是一个听来的神仙东西. 先确定一下值域把,大概\(2^{16}\),再大点也可以,但是这里就只是写写,所以无所谓啦. 我们先看看如果暴力求怎么做,位运算需 ...
- 求连续出现5次以上的值,并且取第5次所在id
关键字:求连续出现5次以上的值,并且取第5次所在id 关键字:求在某列连续出现N次值的的数据,并且取第M次出现所在行 需求,求连续出现5次以上的值,并且取第5次所在id SQL SERVER: --测 ...
- leetcode-747-Largest Number At Least Twice of Others(求vector的最大值和次大值)
题目描述: In a given integer array nums, there is always exactly one largest element. Find whether the l ...
- 已知空间两点组成的直线求线上某点的Z值
已知空间两点组成的直线求线上某点的Z值,为什么会有这种看起来比较奇怪的求值需求呢?因为真正三维空间的几何计算是比较麻烦的,很多时候需要投影到二维,再反推到三维空间上去. 复习下空间直线方程:已知空间上 ...
随机推荐
- Mysql查询不为null值
Mysql本以为查询不为null就是!=null可是结果查询出来什么都没有,后来才发现不为null应该是is not null ,为null应该是is null.
- Java框架之Hibernate(三)
本文主要讲解: 1 级联 cascade 关键字 2 级联删除 3 inverse 关键字 4 懒加载 5 缓存的模拟 6 Hibernate 的一级缓存 7 Hibernate 的二级缓存 一.级联 ...
- mp3格式转wav格式 附完整C++算法实现代码
近期偶然间看到一个开源项目minimp3 Minimalistic MP3 decoder single header library 项目地址: https://github.com/lieff/m ...
- 固定sql语句传参批量查询数据库脚本
#!/usr/bin/env python # encoding: utf-8 import pandas as pd import psycopg2 conn_dv = psycopg2.conne ...
- Python类的多态的例子
1 # -*- coding: utf-8 -*- 2 # 类的多态 3 4 # 定义Person父类 5 class Person(object): 6 def __init__(self, nam ...
- Java模拟http上传文件请求(HttpURLConnection,HttpClient4.4,RestTemplate)
先上代码: public void uploadToUrl(String fileId, String fileSetId, String formUrl) throws Throwable { St ...
- 基本命令行操作1(java编译)
1. 设置环境变量,具体:https://www.cnblogs.com/shinge/p/5500002.html "cd + 文件名" 可进入指定文件,"cd..&q ...
- CTF---隐写术入门第二题 小苹果
小苹果分值:10 来源: hanyuhang 难度:易 参与人数:2159人 Get Flag:862人 答题人数:996人 解题通过率:87% flag格式: CTF{} 解题链接: http:// ...
- AtCoder Regular Contest 078
我好菜啊,ARC注定出不了F系列.要是出了说不定就橙了. C - Splitting Pile 题意:把序列分成左右两部分,使得两边和之差最小. #include<cstdio> #inc ...
- Timus Online Judge:ural:1006. Square Frames
原题链接:http://acm.timus.ru/problem.aspx?space=1&num=1006 看到题第一反应:这玩意怎么读入…… 本地的话因为是全角字符,会占两个位置,所以需要 ...