с заданием по информатике
1. Написать код программы на Паскале, вычисляющей площадь и длину круга, при известном радиусе и числе Пи.
2. Вывести на экран три введенных с клавиатуры числа в порядке, обратном их вводу.
Щелкните, чтобы написать ответ
Прикрепить файл
3. Найти периметр и площадь прямоугольного треугольника, если даны длины его катетов a и b.
4. Даны два ненулевых числа. Найти их сумму, разность, произведение и частное.
Решение в лоб:
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> a(10);
cout << "Enter array:" <<endl;
for (int& i : a) {
cin >> i;
}
int m = 0;
for (int i = 0; i < a.size(); ++i) {
if (a[i] > 0) {
m = i + 1;
}
}
cout << "Enter element to insert:" << endl;
int v;
cin >> v;
a.insert(a.begin() + m, v);
cout << "Result is below:" << endl;
for(const int& i : a) {
cout << i << ' ';
}
cout << endl;
return 0;
}
32
Объяснение:
Давайте размышлять:
каждое число N = abc в 16ричной системе представимо в виде N = a * 16 ^ 2 + b * 16 ^ 1 + c * 16 ^ 0
а что такое 16?
по отношению к 2.
16 = 2 ^ 4
в этом случае, а * 16 ^ 2 это a * 2 ^ 8
и число представимо в виде N = a * 2 ^ 8 + b * 2 ^ 4 + c * 2 ^ 0
если 2 - основание системы счисления, то они пошли через 3
а что же делать с a? оно же может быть 7, а в двоичной системе таких цифр нет.
переведём его в двоичную
тогда ячейку из четырех разрядов займет двоичная запись а и т.д.
надеюсь вы примерно поняли весь предыдущий текст, им я пытался подвести вас к тому, что при переводе из 16ричной в 2ичную количество знаков увеличится вчетверо (если не отбрасывать ведущие нули)
тогда при обратном дейтсвии оно уменьшится в 4 раща, и станет равным 125//4 (округлим в большую сторону, т.к. 125 - это как 125 цифр и три нуля, а вот потерять цифру и сделать 124 будет неверно) равно 32