1) Такой подход к измерению информации не имеет отношения к содержанию текста, поэтому такой измерения информации называют объективным. Все символы кодируются одинаковым количеством байт. Количество байт, отводимое под один символ определяется размером алфавита. Пусть в алфавите N букв, а n - количество байт, отводимое под один символ. Тогда n можно найти следующим образом: n - минимальное число такое, что 2^n >= N. Если знаете, что такое логарифм, то n = [logN], где log - двоичный логарифм, а [] - операция округления вверх.
3) Числа хранятся в виде последовательности байт. Пусть для числа отведено n байт. Тогда значения, которые может принимать число - от 0 до 2^n - 1 (если число беззнаковое) или от -2^(n - 1) до 2 ^ (n - 1) - 1 (если число со знаком).
7) #include <iostream>using namespace std; int main(){ int a, b; cin >> a >> b; cout << a * b << endl; return 0;}
9) #include <iostream>using namespace std; int main(){ int a; cin >> a; cout << a * a << endl; return 0;}
11) #include <iostream>using namespace std; int arr[1000]; int main(){ int n; cin >> n; for (int i = 0; i < n; ++i) cin >> arr[i]; int sum = 0, cnt = 0; for (int i = 0; i < n; ++i) { if(arr[i] > 0) { sum += arr[i]; ++cnt; } } cout << (float)sum / cnt << endl; return 0;}
вот код Ruby
for i in "10".to_i(8).."55".to_i(6)
p [i, i.to_s(6),i.to_s(8)]
end
вывод (в 10чной, 6чной, 8чной)
[8, "12", "10"]
[9, "13", "11"]
[10, "14", "12"]
[11, "15", "13"]
[12, "20", "14"]
[13, "21", "15"]
[14, "22", "16"]
[15, "23", "17"]
[16, "24", "20"]
[17, "25", "21"]
[18, "30", "22"]
[19, "31", "23"]
[20, "32", "24"]
[21, "33", "25"]
[22, "34", "26"]
[23, "35", "27"]
[24, "40", "30"]
[25, "41", "31"]
[26, "42", "32"]
[27, "43", "33"]
[28, "44", "34"]
[29, "45", "35"]
[30, "50", "36"]
[31, "51", "37"]
[32, "52", "40"]
[33, "53", "41"]
[34, "54", "42"]
[35, "55", "43"]
аналитическое решение
8*a+b = 6*b+a ОДЗ: a in (1;7) in N, b in (1;5) in N
7a=5b
a = 5b/7 - наименьшее целочисленное решение при b = 7 что не входит в ОДЗ
3) Числа хранятся в виде последовательности байт. Пусть для числа отведено n байт. Тогда значения, которые может принимать число - от 0 до 2^n - 1 (если число беззнаковое) или от -2^(n - 1) до 2 ^ (n - 1) - 1 (если число со знаком).
7)
#include <iostream>using namespace std;
int main(){ int a, b; cin >> a >> b; cout << a * b << endl; return 0;}
9)
#include <iostream>using namespace std;
int main(){ int a; cin >> a; cout << a * a << endl; return 0;}
11)
#include <iostream>using namespace std;
int arr[1000];
int main(){ int n; cin >> n; for (int i = 0; i < n; ++i) cin >> arr[i]; int sum = 0, cnt = 0; for (int i = 0; i < n; ++i) { if(arr[i] > 0) { sum += arr[i]; ++cnt; } } cout << (float)sum / cnt << endl; return 0;}