Lecture 3

作者: mykingy | 来源:发表于2016-03-02 01:25 被阅读0次

A. while loop

1. • Need a loop variable

    – Initialized outside loop

    – Changes within loop

    – Test for termination depends on variable

   • Useful to think about a decrementing function

   – Maps set of program variables into an integer

   – When loop is entered, value is non-negative

   – When value is <= 0, loop terminates, and

   – Value is decreased every time through loop

   eg: abs(x) – ans**3 (smaller the solution, nearer we will done.)

2. different between branching program and looping program:

  • Branching structures (conditionals) let us jump to different pieces of code based on a test

  – Programs are constant time

  • Looping structures (e.g., while) let us repeat pieces of code until a condition is satisfied

  – Programs now take time that depends on values of variables, as well as length of program

3. some command

a.

what does these stand for

b. If the command break is executed within a loop, it halts evaluation of the loop at that point and passes control to the next expression.

c. stop infinite loop : control C

B. for loop:    for <identifier> in <sequence>:

                           <code block>

1. some logics:

• Identifier bound to first value in sequence

• Code block executed

• Identifier bound to next value

• Code block executed

• Continues until sequence exhausted or a break statement is executed

• To generate a sequence of integers, use

– range(n) = [0, 1, 2, 3, …, n-1]

– range(m,n) = [m, m+1, …, n-1]

PS: spaces in strings as characters too!

2. range function:

some examples

more info: https://docs.python.org/3/library/functions.html#range

3. in range, 'num' variable will assign new value. (In python you can assign new values to variables. In this case the for loop will iterate in the list [0, 1, 2, 3, 4], each time the for loop iterates from the list it will assign num a new value.)

4. 5%2=1 5/2=2 5.0/2=2.5

5. if no indent, continue execute following if 

6. Approximation Methods

• Suppose we now want to find the square root of any non-negative number?

• Can’t guarantee exact answer, but just look for something close enough

• Start with exhaustive enumeration

– Take small steps to generate guesses in order

– Check to see if close enough

•general method:

-Exhaustive enumeration

– Bisection search

– Newton-Raphson (for root finding)

7. Print on the same line: use comma

# 习题中出现的问题:

a. 多次重复的部分可以命名成变量

b. 尽量避免在循环判断当中有重复。

相关文章

网友评论

      本文标题:Lecture 3

      本文链接:https://www.haomeiwen.com/subject/hlhnkttx.html