Starting from:

$25

ITI1120-Lab 2 Python’s Expressions, Function Calls, Assignment Statements and Function Design Solved

Objective of  this      lab is   to  get      familiar     with    Python’s      expressions,  function   calls,         assignment    statements    and      function   design via:

Starting   Lab 2
•           Open   a    browser    and     log into Brightspace

•           On  the left hand   side     under  Labs tab,     find     lab2    material contained in   lab2-students.zip file

•           Download that     file to  the Desktop and     unzip  it.

Before   starting, always make sure you  are running Python    3

This   slide     is    applicable  to   all   labs,     exercises,   assignments   …    etc 

ALWAYS  MAKE   SURE    FIRST   that      you are running   Python 3.4 (3.5,     

3.6 is fine       too)

That  is,   when   you click      on   IDLE      (or start     python any   other    way)     look      at   the   first      line that      the Python   shell     displays.     It    should   say Python 3.4 or   3.5 or   3.6   (and     then     some    extra   digits)

If you do  not know    how      to   do  this,      read     the material   provided    with     Lab 1.   It   explains      it    step      by  step

div   // and mod % operators   in Python

// is  called       div operator    in    Python.   It      computes        integer    division

% is     called       mod operator  in    Python.   It      computes        the    remainder of   integer     division

If  uncertain,        here is      how to    compute a//b and a%b

1.   Compute      first  x=a/b

2.   a//b is      then equal       to     the     whole      (i.e   integer)   part of     x. More        precisely  a//b is     equal       the   integer     that is     closest     to     a/b but not   bigger     than a/b

3.   a%b is equal       to             a - (a//b) * b

Task  1
•           Open   the pdf file called  in   Task1-lab2.pdf

•           Read    the instructions   and complete  all  the exercises

Note:  If    you     have    not printed      this      document beforehand    or      do not have    a    tablet  with    a      pen,    just      take    a    piece   of      blank  paper  and     write   your      answers    on that     paper. 

Task  2
•           Go  to  coursera webpage    and log in.

•           Go  to  this      link:

•           https://www.coursera.org/learn/learn-to-program/home/week/1

•           Scroll   down  and     complete  the Quiz    of  Week  1.   You     can do the quiz     more   than    once.  

Task                2  (in case coursera does not work)
•           Only     do this      if    coursera web page    is   giving  you     difficulties. The      quiz     in   the following  file Task2-lab2.pdf    is   the same   as on coursera webpage.

•           Open   the pdf file called  in   Task2-lab2.pdf

•           Read    the instructions   and complete  all  the questions

Note:    This        exercise will be   available online    on   UofT Coursera    course: “Learn   to    Program:     The Fundamentals”. Unfortunately,   the course   has not started  yet, thus       the paper    version  of    the exercises.

Strings
In addition to integer, float (i.e. number) and boolean objects. Python has string objects. (For now think of objects as just values)

•A string is a sequence of characters between single quotes, double quotes or triple quotes. 

‘This is a string’

Note that these are also strings: 

“ “       this is a string that is comprised of one blank space

‘257’   this is a string unlike 257 which is an integer

•Strings can be assigned to variables. Examples: s1=‘Harry’ s2=“Potter”

•There are many operations that can be applied on strings. For example when the + operator is applied to two strings, the result is a string that is the concatenation of the two. For example, s1+s2, would result in a string 

‘HarryPotter’

Note that “The year is “+ 2525 would cause a syntax error since the + operator can be applied to two numbers or two strings but not the mix of the two. This however is a valid expression 'The is year “+ “2025” Python also has * operator for strings. It can be applied to a string and an integer. Eg: 4 * “la” gives ‘lalalala’

Programming   Exercises
Pretend that       the following      4       programming     questions     are  your       Assignment 1.    Write     all   your       solutions      to    the following      4       questions     in    one file  called       lab2_prog_solutions.py

You will be   instructed    to    do   a     similar       thing      in    your       Assignment 1.

IMPORTANTE  NOTE:     for this     LAB    and    the     ASSIGNMENT(s):

If     a     question       specifies       the       function       name     and the names   of       its   parameters, then       that        same       function       name     and function       parameter   names   must      be   used       when     programming     your       functions.    That       will be   the case       in    every     question       in    your       assignment  1.    For example       in       the question       on   the next       page,       your       function       definition     MUST       start       with: def repeater(s1, s2, n): as that is specified as a part of the question

exercises  1


 
 
 

Write     a     function       called repeater(s1, s2,  n)    that        given     two strings   s1 and   s2           and an   integer n returns a      string     that        starts     with an   underscore, then       s1    and s2 alternate      n     times,    then       ends with       an   underscore. (For those     who know     loops:    you may       not use loops to    solve      this questions.)

Testing  your       code:     

Here       is     what      the output   of    your function       should   look       like when you make     the following      function calls:

exercises  2
Read        the  first paragraph      of     this  page on    quadratic       equation and finding    its    roots (it.   solutions)


 
 
 

https://en.wikipedia.org/wiki/Quadratic_equation
Write      a      function called      roots(a,  b,     c) that given       three       coefficients    a and       b and c       prints a   nicely      formatted      message displaying      the  equation and its    two roots (the two roots       may be    the  same       number). You may assume   that a is  a      non zero number, and that a and       b               and c       are  such that b2-4ac     is      a      positive  number. (Do  you know       why we   are  making   this  assumption?)

exercises  3
Think       back        on    the  previous question …

Write      a      function called      real_roots(a, b,     c) that returns True  if      the  quadratic       equation with the  given       three       coefficients    a and       b         and c       has  real roots.      Otherwise      it returns   False.

Recall      that roots       of     a      quadratic equation are  real if      and only if      b2-4ac     is      a non-negative number. (Do  not  use  if      statements nor  loops)

Testing   your        code:

 

exercises  4


 
 
 

Write     a     function       called     reverse(x)    that        given     a     two digit positive integer x       returns the  number with       reversed digits.  (You       may assume that        x      is     a     two digit positive integer).       (Do not use if statements  nor loops)

Hints:     Think     of    mod       and div operators     and how       they       can help. What     number should   you div  x with    to get  the 1st digit. 

Testing  your       code:

More products