PWM Configuration Defaults

#include <iostream>
using namespace std;

#define DEFAULT_FREQ 1000
#define DEFAULT_DT 0

void setPWM (int duty, int frequency = DEFAULT_FREQ
            ,int deadtime = DEFAULT_DT)
{
    if (frequency < 1 || frequency > 100000)
    {
        frequency = DEFAULT_FREQ;
    }

    if (deadtime < 0 || deadtime > 1000)
    {
        deadtime = DEFAULT_DT;
    }

    std::cout << duty << " " << frequency << " " << deadtime;
}

int main() {
    int duty, mode;
    cin >> duty >> mode;

    if (mode == 0) {
        setPWM(duty);
    }
    else if (mode == 1) {
        int frequency;
        cin >> frequency;
        setPWM(duty, frequency);
    }
    else if (mode == 2) {
        int frequency, deadtime;
        cin >> frequency >> deadtime;
        setPWM(duty, frequency, deadtime);
    }

    return 0;
}

Solving Approach

 

 

 

 

 

Upvote
Downvote
Loading...

Input

50 0

Expected Output

50 1000 0