[从头学数学] 第184节 周游列国拜诸侯(中)

剧情提要:
[机器小伟]在[工程师阿伟]的陪同下进入了[九转金丹]之第二转的修炼。
这次要研究的是[例题]

正剧开始:

(续前节)

星历2016年04月19日 09:02:47, 银河系厄尔斯星球中华帝国江南行省。
[工程师阿伟]正在和[机器小伟]一起研究[例题]。


[从头学数学] 第184节 周游列国拜诸侯(中)_第1张图片

<span style="font-size:18px;">#例1
def prime(x):
    if x < 2:
        return False;
    
    for i in range(2, math.ceil(x**0.5)+1):
        if (i != x) and (x%i==0):
            return False;

    return True;
	
	
#例2
def fun(x):
    return x**2-2;

def bisection(xMin, xMax):
    if fun(xMin)*fun(xMax) > 0:
        return float('inf');
    elif fun(xMin) == 0:
        return xMin;
    elif fun(xMax) == 0:
        return xMax;
    else:
        epsilon = 10e-6;
        
        while (abs(xMin-xMax)> epsilon):
            xMid = (xMin+xMax)/2;
            if (fun(xMid)*fun(xMin)< 0):
                xMax = xMid;
            elif (fun(xMid)*fun(xMax) < 0):
                xMin = xMid;
            else:
                return xMid;

        return xMid;
		
#例3
def HQFormula(a, b, c):  
    p = (a+b+c)/2;  
    S = math.sqrt(p*(p-a)*(p-b)*(p-c));  
  
    return S; 
	
#例4
def validTriangle(a, b, c):
    if (a <= 0 or b <= 0 or c <= 0):
        return False;
    
    array = sorted([a, b, c]);
    if (array[-1] >= array[0] + array[1]):
        return False;

    return True;
	
#例5
def quadratic(a, b, c):
    if a == 0 and b == 0:
        if c != 0:
            return ['nul'];
        else:
            return ['R'];
    elif a == 0 and b != 0:
        return [-c/b];
    else:
        delta = (b**2-4*a*c);
        if (delta == 0):
            return [-b/(2*a)];
        elif (delta > 0):
            delta = delta**0.5;
            return [(-b-delta)/(2*a), (-b+delta)/(2*a)];
        else:
            return ['nul'];
			
#例6
def sum100(N):
    result = 0;
    for i in range(1, N+1):
        result += i;

    return result;
	</span>

[从头学数学] 第184节 周游列国拜诸侯(中)_第2张图片

<span style="font-size:18px;">#例7
def fun7():
    product = 200;
    year = 2005;

    while (product <= 300):
        product *= 1.05;
        year += 1;
    return year;

#例1
def funSketch(x):
    return x**3+3*x**2-24*x+30;

def sketch():
    array = [];
    for i in range(-5, 6):
        array.append(funSketch(i));

    return array;

#例2
def average(literature, math, english):
    return (literature + math + english)/3;

#例3
def assign(x, num):
    return num;
	
#例4
def swap(A, B):
    return [B, A];
	
#例5
def fun5(x):
    return abs(x);</span>


[从头学数学] 第184节 周游列国拜诸侯(中)_第3张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第4张图片

<span style="font-size:18px;">#例6
def fun6():
    inputs = input('输入a, b, c, 逗号隔开: ').split(',');
    a = float(inputs[0]);
    b = float(inputs[1]);
    c = float(inputs[2]);
    delta = b**2-4*a*c;

    if (delta >= 0):
        p = -b/(2*a);
        q = delta**0.5/(2*a);

        if (delta == 0):
            print(p);
        else:
            x1 = p+q;
            x2 = p-q;
            print(x1, x2);

    else:
        print('方程没有实数根');</span>


[从头学数学] 第184节 周游列国拜诸侯(中)_第5张图片

<span style="font-size:18px;">#例7
def sortNumber():
    inputs = input('输入a, b, c, 逗号隔开: ').split(',');
    a = float(inputs[0]);
    b = float(inputs[1]);
    c = float(inputs[2]);

    array = [a, b, c];

    array = sorted(array, reverse=True);
    return array;
	
#例8
def funSketch(x):
    return x**3+3*x**2-24*x+30;

def sketch():
    array = [];
    for i in range(-5, 6):
        array.append(funSketch(i));

    return array;
	
#例1
def gcd(m, n):  
    m, n = max(m, n), min(m, n);  
    i = 1;  
    while n:  
        print('step', i, ': ', m, n);  
        i += 1;  
        m, n = n, m % n  
          
    return m  
	
#例2
def poly(x, coef):  
    #coef为多项式按次数从高到低排列的系数矩阵  
    rank = len(coef);  
    result = 0;  
  
    for i in range(rank):  
        result *= x;  
        result += coef[i];  
    return result;  
	
#例3
def binToDec(s):
    sum = 0;
    for i in range(len(s)):
        sum *= 2;
        sum += int(s[i]);
    return sum;

#例4
def kToDec(s, k):
    #s为k进制数的字符串形式,k为进制,如2, 8, 10, 16等
    charTable = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';

    sum = 0;
    if k > 32:
        return 'inf';
    for i in range(len(s)):
        sum *= k;
        for j in range(k):
            if s[i] == charTable[j]:
                sum += j;
                break;

    return sum;

#例5, 6	
def dec2k(N, k):  
    s = '';  
    a = [];  
    #只提供了36进制数以内的唯一表示对照表  
    if k > 36:  
        return '';  
      
    charTable = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';  
    a.append(N%k);  
    N//=k;  
    while N > 0:  
        a.append(N%k);  
        N//=k;  
  
    size = len(a);  
    for i in range(size):  
        s += charTable[a[size-i-1]];  
    return s;  
    
</span>

[从头学数学] 第184节 周游列国拜诸侯(中)_第6张图片


[从头学数学] 第184节 周游列国拜诸侯(中)_第7张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第8张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第9张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第10张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第11张图片


[从头学数学] 第184节 周游列国拜诸侯(中)_第12张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第13张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第14张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第15张图片

<span style="font-size:18px;">>>> 
0.8765

#例2
def fun2():
    yes = 0;
    no = 0;
    N = 10000;

    for i in range(N):
        time_1 = 6.5+random.random();
        time_2 = 7 + random.random();
        if (time_1 < time_2):
            yes+=1;
        else:
            no+=1;
    return yes/N;

	
>>> 
3.1388

#例3
def fun3():
    yes = 0;
    no = 0;
    N = 10000;

    for i in range(N):
        x = random.random()-0.5;
        y = random.random()-0.5;
        if (x**2+y**2<=0.5**2):
            yes+=1;
        else:
            no+=1;
    return yes/N*4;
	
>>> 
1.332

#例4
def fun4():
    yes = 0;
    no = 0;
    N = 10000;

    for i in range(N):
        x = 2*(random.random()-0.5);
        y = random.random();
        if (y >= x**2):
            yes+=1;
        else:
            no+=1;
    return yes/N*2;
	
</span>

[从头学数学] 第184节 周游列国拜诸侯(中)_第16张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第17张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第18张图片


[从头学数学] 第184节 周游列国拜诸侯(中)_第19张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第20张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第21张图片





[从头学数学] 第184节 周游列国拜诸侯(中)_第22张图片


[从头学数学] 第184节 周游列国拜诸侯(中)_第23张图片


[从头学数学] 第184节 周游列国拜诸侯(中)_第24张图片


[从头学数学] 第184节 周游列国拜诸侯(中)_第25张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第26张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第27张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第28张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第29张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第30张图片



[从头学数学] 第184节 周游列国拜诸侯(中)_第31张图片



[从头学数学] 第184节 周游列国拜诸侯(中)_第32张图片


[从头学数学] 第184节 周游列国拜诸侯(中)_第33张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第34张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第35张图片





[从头学数学] 第184节 周游列国拜诸侯(中)_第36张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第37张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第38张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第39张图片

[从头学数学] 第184节 周游列国拜诸侯(中)_第40张图片



(待续)

你可能感兴趣的:([从头学数学] 第184节 周游列国拜诸侯(中))