Есть таблица с ценами (HTML), примерно такая:
spoilerНет конкретного шага как у цены, так и у диаметра. Таблица для примера.
Сейчас у меня код состоит из кучи else if типа "если диаметр от 1 до 49 то цена 30, если диаметр от 50 до 69 то..."
Править такой код очень неудобно, в этих интервалах от-до очень легко запутаться.
Как можно по другому организовать получение цены из таблицы по диаметру?
мой код сейчас:
spoilerif(PL == 0.000025){
if (d<18 || d>500){
cena = 0;
alert("Укажите диаметр от 18 до 500! Цена для указанного диаметра - договорная");
m = 0.00;
clean();
} else if (d >= 18 && d <= 45) {
cena = 32;
} else if (d > 45 && d <= 62){
cena = 28;
} else if (d > 62 && d <= 102){
cena = 30;
} else if (d > 102 && d <= 132){
cena = 35;
} else if (d > 132 && d <= 162){
cena = 39;
} else if (d > 162 && d <= 182){
cena = 50;
} else if (d > 182 && d <= 202){
cena = 60;
} else if (d > 202 && d <= 225){
cena = 70;
} else if (d > 225 && d <= 252){
cena = 85;
} else if (d > 252 && d <= 270){
cena = 90;
} else if (d > 270 && d <= 302){
cena = 100;
} else if (d > 302 && d <= 322){
cena = 112;
} else if (d > 322 && d <= 352){
cena = 130;
} else if (d > 352 && d <= 402){
cena = 160;
} else if (d > 402 && d <= 452){
cena = 180;
} else if (d > 452 && d <= 500){
cena = 200;
}
}else{
if (d<18 || d>500){
cena = 0;
alert("Укажите диаметр от 18 до 500! Цена для указанного диаметра - договорная");
m = 0.00;
clean();
} else if (d >= 18 && d <= 45) {
cena = 21;
} else if (d > 45 && d <= 62){
cena = 18;
} else if (d > 62 && d <= 102){
cena = 20;
} else if (d > 102 && d <= 132){
cena = 22;
} else if (d > 132 && d <= 162){
cena = 24;
} else if (d > 162 && d <= 182){
cena = 30;
} else if (d > 182 && d <= 202){
cena = 35;
} else if (d > 202 && d <= 225){
cena = 40;
} else if (d > 225 && d <= 252){
cena = 50;
} else if (d > 252 && d <= 270){
cena = 62;
} else if (d > 270 && d <= 302){
cena = 69;
} else if (d > 302 && d <= 322){
cena = 77;
} else if (d > 322 && d <= 352){
cena = 90;
} else if (d > 352 && d <= 402){
cena = 105;
} else if (d > 402 && d <= 452){
cena = 112;
} else if (d > 452 && d <= 500){
cena = 127;
}
}