int main() { list<int>mylist; //Делаем со списком, что хотим mylist.push_back(1); mylist.push_back(2); mylist.push_back(3); mylist.push_back(-4); mylist.push_back(5); for (auto i : mylist) { cout << i << " "; } cout << "\n"; //Удаляем последний отрицательный элемент auto it = mylist.end(); while (*it > 0) { if (it == mylist.begin()) { cout << "Not found.\n"; return 0; } it--; } //Делаем со списком, что хотим mylist.erase(it); for (auto i : mylist){ cout << i << " "; } return 0; }
afilippov3321
14.04.2022
Заменим символы операций на более привычные (логическое сложение на сложение, логическое умножение - на умножение), но будем помнить, что все же это не арифметика, хотя и тут умножение "старше" сложения и выполняется первым. x=19+17*13+22*14 1) 17₁₀*13₁₀ 17₁₀ = 10001₂; 13₁₀=01101₂ Правила умножения поразрядно: 1*1=1, иначе 0 10001 *01101
00001 = 1₂ 2) 19₁₀+1₂ 19₁₀=10011₂ Правила сложения поразрядно: 0+0=0, иначе 1 10011 +00001
Двоичная: 10011011011.1001011100
Восьмеричная: 2333.4560507534
Шестнадцатеричная: 4DB.970A3D70A3
Нормализованный вид: 0.124359+E2