Как записать условие если int лежит в пределе масива?
Я сам не знаю можно ли так, но думаю что можно. Если что я только начал осваивать программирование так что могу писать бред, заранее извиняюсь. Есть масив типа:
const int type = 3;
const int type1 = 2;
int topwear[type][type1]
{ {0,10},
{10,15},
{15,20} };
я хочу чтоб если переменная типа int a (вводит пользователь) лежит в пределе topwear[0][1] (условно вводит 3 и тройка лежит в пределе 0-10) вводило тотото... если в пределе topwear[1][1] (типа 12 лежит в пределе 10-15) - писало уже что-то другое и так далее. Может у меня еще знаний не достаточно чтоб такое сделать но мне кажеться можно как-то символом типа: ==, ||, | и тд. Если же нет простите за потраченое время:).
Ответы (1 шт):
Ну вот представьте: Вы сидите в «китайской комнате», у Вас на стене висит распечатка массива. И тут приходит пользователь и бросает Вам в окошко бумажку: «3». А Вы должны написать на другой бумажке: «Входит в диапазон 0-10». Что делать будете? Правильно, искать. Теперь вместо Вас тупая каменюка, она сама умеет делать только некоторые операции, описанные в стандарте языка. Сложить два числа и положить в такую-то ячейку памяти камень может, а искать – нет. Ваша же задача – описать поиск, используя только то, что камень умеет делать. Как? Очень просто. Надо перебрать весь массив массивов и сравнить введённое значение с элементами элементов.
for (i=0; i<type; ++i)
{
if ((a>=topwear[i][0])&&(a<=topwear[i][1]))
{
std::cout<<a<<" входит в диапазон от "<<topwear[i][0]<<" до "<<topwear[i][1]<<"."<<std::endl;
}
}
Привыкайте размеры массивов задавать не итнами, а size_t. И кажеться – это что делать?