int A = 18;
int B = 18;
short jarak;
short durasi = 2000;
float timePloop;
int startTimeloop;
float durasiSecond;
short nilaiabs;
int ssr = 0;
int jumlahInconver = 0;
int inRealsensor[1000];
float inconver[1000];
float r = 0.8900;
void setup() {
Serial.begin(115200);
}
void loop() {
startTimeloop = micros();
int q = random(1, 3); Serial.print(q);
if (q != 2) {
Serial.print("+");
A = random(-100, 100);
B = random(-100, 100);
} else {
Serial.print("-");
A = 50;
B = 50;
}
Serial.print("\t a="); Serial.print(A);
Serial.print("\t b="); Serial.print(B);
durasi = 1000;
int jarak = max(A, B) - min(A, B);
Serial.print("\t jarak="); Serial.print(jarak);
durasi = (A != B) ? durasi / jarak : durasi;
Serial.print("\t durasi="); Serial.print(durasi);
Serial.printf(" (%d%%) ", map(durasi, 0, 1000, 100, 1));
int batas = constrain(A, -9, 49);
int mappedValue = map(A, -100, 100, 0, 100);
int nilaipow = map(mappedValue, 0, 100, 1, 10);
ssr = (ssr <= 0) ? 35 : ssr - 1;
float hssr = map(ssr, 20, 100, 1000, 0) / 1000.00;
Serial.printf("\n\t constrain(%d)=%d", A, batas);
Serial.printf("\t abs(%d)=%d", A, abs(A));
Serial.printf("\t map(%d)=%d%% ", A, mappedValue);
Serial.printf("\t max(%d)>min(%d)", max(A, B), min(A, B));
Serial.printf("\n\t pow(%d,%d)=", nilaipow, 2); Serial.print(pow(nilaipow, 2));
Serial.printf("\t sq(%d)=", A); Serial.print(sq(A));
Serial.printf("\t sqrt(%d)=", A); Serial.print(sqrt(A));
Serial.printf("\n\t mapIn(%d)=%d", abs(A), A = (abs(A) / 10) + 1);
Serial.printf("\t rangeIn(%d)=", ssr); Serial.print(hssr, 4);
Serial.print("\n");
r = r + 0.01;
float w = 1.0;
Serial.printf("r:%.4f\tw:%.4f\t", r, w);
float rr = (r >= 1.0 || fabs(r - 1.0) < 0.0001) ? 1.0 : r;
float ww = (w >= 1.0 || fabs(w - 1.0) < 0.0001) ? 1.0 : w;
if (rr == ww) {
Serial.println("r dan w sama");
} else {
Serial.println("r dan w tidak sama");
}
Serial.printf("r:%.4f\tw:%.4f\t", rr, ww);
/*
if (hssr > 0.999) {
Serial.println("\n-------------------------------------------------------------");
inRealsensor[jumlahInconver] = ssr;
inconver[jumlahInconver] = hssr;
for (int i = 0; i <= jumlahInconver; i++) {
Serial.printf("|%d>%.5f ", inRealsensor[i], inconver[i]);
}
Serial.println();
jumlahInconver = (jumlahInconver < 1000) ? jumlahInconver + 1 : 0;
}*/
delay(2000);
Serial.println("\n---------------------------------------");
timePloop = (micros() - startTimeloop) / 1000000.0;
Serial.printf("------- durasi/loop = %.5fs ------\n", timePloop);
Serial.println("-------------------------------------");
}