I=k*i
K - количество символов
I - вес всего сообщения
i - вес одного символа
10 байт = 80 бит (в 1 байте - 8 бит)
80 = 300 * i
i = 80 / 300 - и в общем такого быть не может. Или ошибка в условии или еще что-то. Но там должно получится целое число и больше или равно 1. Не может быть такого что бы символ весил меньше чем 1 бит.
Но по идеи потом по формуле:
2^i=N
Где N - количество символом в алфавите.
<span><em>// PascalABC.NET 3.3, сборка 1576 от 16.11.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
</span><span>begin
var s:=ReadlnString('Введите имя и фамилию:');
var g:=ReadlnString('Введите год рождения:');
var n:=ReadInteger('Сколько раз повторить вывод?');
loop n do Writeln(s,NewLine,g)
end.
<u>Пример</u>
Введите имя и фамилию: Иванов Сергей
Введите год рождения: 24.06.2001
Сколько раз повторить вывод? 3
Иванов Сергей
24.06.2001
Иванов Сергей
24.06.2001
Иванов Сергей
24.06.2001</span>
01010101₂ = 0+2⁶+0+2⁴+0+2²+0+2⁰ = 64+16+4+1 = 85₁₀
11111000₂ = -(1111000₂) = -(2⁶+2⁵+2⁴+2³+0+0+0) = -(64+32+16+8) = -120₁₀
//Dev-C++ 4.9.9.2
#include <iostream>
using namespace std;
int main(){
int a,n=0;
int k0=0;
int kp=0;
int kot=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>a;
if(a==0)k0++;
if(a>0)kp++;
if(a<0)kot++;}
cout<<k0<<endl<<kp<<endl<<kot;
cin.get();
cin.get();
return 0;
}
Пример ввода:
4
0
-1
1
2
Пример вывода:
1
2
1
Var
k : integer;
begin
read (k);
if k mod 2 = 0 then
writeln ((k div 2 - 1) mod 10)
else writeln ((k div 2 - 1) div 10 + 1);
end.
вроде так