\[ \begin{align}\begin{aligned}\newcommand\blank{~\underline{\hspace{1.2cm}}~}\\% Bold symbols (vectors)
\newcommand\bs[1]{\mathbf{#1}}\\% Differential
\newcommand\dd[2][]{\mathrm{d}^{#1}{#2}} % use as \dd, \dd{x}, or \dd[2]{x}\\% Poor man's siunitx
\newcommand\unit[1]{\mathrm{#1}}
\newcommand\num[1]{#1}
\newcommand\qty[2]{#1~\unit{#2}}\\\newcommand\per{/}
\newcommand\squared{{}^2}
\newcommand\cubed{{}^3}
%
% Scale
\newcommand\milli{\unit{m}}
\newcommand\centi{\unit{c}}
\newcommand\kilo{\unit{k}}
\newcommand\mega{\unit{M}}
%
% Percent
\newcommand\percent{\unit{{\kern-4mu}\%}}
%
% Angle
\newcommand\radian{\unit{rad}}
\newcommand\degree{\unit{{\kern-4mu}^\circ}}
%
% Time
\newcommand\second{\unit{s}}
\newcommand\s{\second}
\newcommand\minute{\unit{min}}
\newcommand\hour{\unit{h}}
%
% Distance
\newcommand\meter{\unit{m}}
\newcommand\m{\meter}
\newcommand\inch{\unit{in}}
\newcommand\foot{\unit{ft}}
%
% Force
\newcommand\newton{\unit{N}}
\newcommand\kip{\unit{kip}} % kilopound in "freedom" units - edit made by Sri
%
% Mass
\newcommand\gram{\unit{g}}
\newcommand\g{\gram}
\newcommand\kilogram{\unit{kg}}
\newcommand\kg{\kilogram}
\newcommand\grain{\unit{grain}}
\newcommand\ounce{\unit{oz}}
\newcommand\pound{\unit{lbs}}
%
% Temperature
\newcommand\kelvin{\unit{K}}
\newcommand\K{\kelvin}
\newcommand\celsius{\unit{{\kern-4mu}^\circ C}}
\newcommand\C{\celsius}
\newcommand\fahrenheit{\unit{{\kern-4mu}^\circ F}}
\newcommand\F{\fahrenheit}
%
% Area
\newcommand\sqft{\unit{sq\,\foot}} % square foot
%
% Volume
\newcommand\liter{\unit{L}}
\newcommand\gallon{\unit{gal}}
%
% Frequency
\newcommand\hertz{\unit{Hz}}
\newcommand\rpm{\unit{rpm}}
%
% Voltage
\newcommand\volt{\unit{V}}
\newcommand\V{\volt}
\newcommand\millivolt{\milli\volt}
\newcommand\mV{\milli\volt}
\newcommand\kilovolt{\kilo\volt}
\newcommand\kV{\kilo\volt}
%
% Current
\newcommand\ampere{\unit{A}}
\newcommand\A{\ampere}
\newcommand\milliampereA{\milli\ampere}
\newcommand\mA{\milli\ampere}
\newcommand\kiloampereA{\kilo\ampere}
\newcommand\kA{\kilo\ampere}
%
% Resistance
\newcommand\ohm{\Omega}
\newcommand\milliohm{\milli\ohm}
\newcommand\kiloohm{\kilo\ohm} % correct SI spelling
\newcommand\kilohm{\kilo\ohm} % "American" spelling used in siunitx
\newcommand\megaohm{\mega\ohm} % correct SI spelling
\newcommand\megohm{\mega\ohm} % "American" spelling used in siunitx
%
% Capacitance
\newcommand\farad{\unit{F}}
\newcommand\F{\farad}
\newcommand\microfarad{\micro\farad}
\newcommand\muF{\micro\farad}
%
% Inductance
\newcommand\henry{\unit{H}}
\newcommand\H{\henry}
\newcommand\millihenry{\milli\henry}
\newcommand\mH{\milli\henry}
%
% Power
\newcommand\watt{\unit{W}}
\newcommand\W{\watt}
\newcommand\milliwatt{\milli\watt}
\newcommand\mW{\milli\watt}
\newcommand\kilowatt{\kilo\watt}
\newcommand\kW{\kilo\watt}
%
% Energy
\newcommand\joule{\unit{J}}
\newcommand\J{\joule}
%
% Composite units
%
% Torque
\newcommand\ozin{\unit{\ounce}\,\unit{in}}
\newcommand\newtonmeter{\unit{\newton\,\meter}}
%
% Pressure
\newcommand\psf{\unit{psf}} % pounds per square foot
\newcommand\pcf{\unit{pcf}} % pounds per cubic foot
\newcommand\pascal{\unit{Pa}}
\newcommand\Pa{\pascal}
\newcommand\ksi{\unit{ksi}} % kilopound per square inch
\newcommand\bar{\unit{bar}}
%
% Bits
\newcommand\bit{\unit{b}}
\newcommand\byte{\unit{B}}\end{aligned}\end{align} \]
Sep 03, 2026 | 357 words | 4 min read
14.1.2. Task 0
Learning Objectives
Create simple user-defined functions and conditional statements in Python.
Practice writing a UDF in the same file as the main script and calling the respective
function in the main script.
Introduction
Python's math library provides many mathematical functions and
constants that are useful for computational tasks. You can explore the full
math library documentation.
Understanding how to use these built-in functions will enhance both your problem-solving
skills and your ability to contribute effectively to future assignments.
Before beginning, be sure to familiarize yourself with the pre-class materials.
Task Instructions
In this task, you will be writing a UDF to perform specific calculations in
Python. Start by making a copy of the ENGR133_Python_Template.py Python template and renaming it
as py2_pre_0_username.py. Make sure
to fill out all header information, including a short description of the code.
Include all needed import statements in the labeled section of the
template.
Create a function called calc_perform below your import
statements that takes in three input arguments (\(a\), \(b\), and \(c\)
in that order) and performs the following calculations based on a conditional test on
input \(a\). The conditional should consist of one if-else
statement. If \(a \gt 4\), perform calculation
(14.1); otherwise perform calculation
(14.2).
(14.1)\[\frac{a^2 + \cos b - \ln c}{b - a \cdot c}\]
(14.2)\[\frac{\sqrt{a + b}}{c! + \sin b}\]
Use a single return statement to return the answer to the selected equation.
Hint
Ensure that each equation within the if or else statements is
assigned to the same variable. Then use a single return statement at the end of the
function that returns this variable.
In your main script, initialize a as user input, b to \(135\) and c to \(3\). Then call your
calc_perform function and print its result as a single formatted string
(f-string) statement to two decimal places. Your output should match the formatting
shown in the Sample Output section below.
Save your program as
py2_pre_0_username.py and turn in
the assignment on Gradescope.
Sample Output
Use the values in Table 14.2
below to test your program.
Ensure your program’s output matches the provided samples exactly.
This includes all characters, white space, and punctuation. In the
samples, user input is highlighted like
this for clarity, but your program should not highlight user
input in this way.
Case 1 Sample Output
$ python3 py2_pre_0_username.py
Input a number for variable a: 5
The result of the function was 0.19
Case 2 Sample Output
$ python3 py2_pre_0_username.py
Input a number for variable a: 4
The result of the function was 1.94
Case 3 Sample Output
$ python3 py2_pre_0_username.py
Input a number for variable a: -0.3
The result of the function was 1.91