Compute ADC Voltage Scale

#include <iostream>
#include <cstdint>

using namespace std;

// TODO: Implement constexpr int32_t computeScale(int32_t maxAdc, int32_t maxVoltage_mV)
// TODO: Define constexpr int32_t SCALE_UV = ...
constexpr int32_t maxADC = 4095;
constexpr int32_t maxVoltage_mV = 3300;
constexpr int32_t computeScale(int32_t _maxAdc, int32_t _maxVoltage_mV)
{
    return (_maxVoltage_mV * 1000) / _maxAdc;
}
constexpr int32_t SCALE_UV = computeScale(maxADC, maxVoltage_mV);

int main() {
    int32_t x;
    if (!(cin >> x)) return 0;

    // TODO: Compute voltage_uv using SCALE_UV
    auto voltage_uv = x * SCALE_UV;
    // TODO: Print the result
    std::cout << voltage_uv;

    return 0;
}

Solving Approach

 

 

 

 

 

Upvote
Downvote
Loading...

Input

0

Expected Output

0