#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.
#include <iostream>
int main() {
const int SIZE = 10;
bool isSence = false;
int sum = 0;
int count = 0;
int arr[SIZE];
for (int i = 0; i < SIZE; i++)
{
arr[i] = rand() % 20 - 10; // "рандомно" заполняем массив от -10 до 10
std::cout << arr[i] << "\t"; // выводим массив в консоль
if (arr[i] >= 0)
isSence = true;
}
for (int i = 0; i < SIZE; i++)
{
if ((isSence) && (arr[i] > 0))
sum += arr[i]; //sum = sum + arr[i];
count++;
}
if (isSence)
std::cout << "\nсреднее арифметическое положительных чисел = " << double(sum) / count << std::endl; // явное приведение типов
else
std::cout << "\nВ массиве нету положительных чисел или нету нулей и/или отрицательных чисел" << std::endl;
return 0;
}
Дв шестн
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 10 (А)
1011 11 (В)
1100 12 (С)
1101 13 (D)
1110 14 (Е)
1111 15 (F)
собственно двоичное число 101101 справа налево делим по 4 цифры ->
-> 0010 и 1101 -> по таблице смотри и получаем 2D в 16-ричной cc
Теперь переводим в 10-ую из 16-ричной
2D = 16^1*2 + 16^0*13 = 32 + 13 = 45
Отв.: 2D и 45
Далее число 101101 в десятичную = 1*2^5+0+1*2^3+1*2^2+0+1*2^1 = 45
и из десятичной в восьмеричную 45/5=5(остаток 5) -> 45 в восьмеричной = 55 или 055