A potentiometer is a simple knob that provides a variable resistance, which we can read into the Arduino board as an analog value. They can be attuned from zero ohms to whatever maximum resistance that is specific to it. For example, a potentiometer of 10 kΩ can be adjusted from 0 Ω to its maximum of 10 kΩ.
A resistor is a passive two-terminal electrical component that implements electrical resistance as a circuit element. In electronic circuits, resistors are used to reduce current flow and adjust signal levels among other uses. Resistance is measured in Ohm with a sign of Ω.
A microcontroller (e.g. Arduino) utilizes I/O signals for communication with external hardware devices, where the most commonly known being GPIO. As a reminder, digital logic circuits have three logic states: high, low and floating (or high impedance). When there’s nothing connected to your GPIO pins, your program will read a floating impedance state, which we do not want. To achieve either high or low states, we’ll have to implement pull-up or pull-down resistors in our digital circuit.