Вводим два числа.Если одно больше второго -- меняем их местами, теперь у нас точно x <= y.Делаем операции описанные в задаче.Если числа были поменяны местами -- swaped == true -> меняем их обратно.Выводим.
Если нужно с дробными, то изменить тип int на float.
Что бы перевести и 2-ной c.c в десятичную,необходимо разложить число по разрядам,над числом 1100,начиная с конца (т.е от знака равно) и начиная с нулевого разряда,т.е 1100(2)=(расставляем разряды над числом) (2) =(теперь для того чтобы перевести из 2-ной в 10-ную,необходимо разложить число на множители, умножая на основание данной с.с и расставляя степень числа)1*+1*+0*+0*=(затем возводим основание с.с в степень данного числа)1*8+1*4+0*2+0*1=(в итоге перемножаем и складываем)8+4+0+0=(после сложение получилось число в 10-ной с.с) 12(10), то что (...)- это система счисления,записывается нижним индексом и без скобок,т.е старшей сестре 12 лет, если она пошла в школу с 111, то это 111(2)= ==1*4+1*2+1*1=4+2+1=7(10) ---->сестра пошла в школу с 7-ми лет, тут 7 лет - 1 кл, 8 лет - 2 кл, 9 лет - 3 кл, 10 лет - 4 кл, 11 лет - 5 кл, 12 лет - 6 кл а младше сестре 100(2)= = =1*4+0*2+0*1=4 (10) года
#include <iostream>
using namespace std;
int main()
{
int x, y;
cin >> x >> y;
bool swaped = false;
if (x > y)
{
swap(x, y);
swaped = true;
}
int tmp = x;
x = (x + y) / 2;
y = 2 * tmp * y;
if (swaped)
swap(x, y);
cout << x << ' ' << y << endl;
}
Объяснение:
Вводим два числа.Если одно больше второго -- меняем их местами, теперь у нас точно x <= y.Делаем операции описанные в задаче.Если числа были поменяны местами -- swaped == true -> меняем их обратно.Выводим.Если нужно с дробными, то изменить тип int на float.
а младше сестре 100(2)= = =1*4+0*2+0*1=4 (10) года