Var s,s1:string; i:integer; begin readln(s); var ars:=s.ToWords; for i:=0 to ars.length-1 do if lowcase(ars[i][1])<>lowcase(ars[i][length(ars[1])]) then s1:=s1+ars[i]+' '; writeln(s1); end.
Пример ввода: Мама окно рама Пример вывода: Мама рама
Если в компьютере, значит надо перевести в двоичную систему. Для того, чтобы перевести число из 10-ой в 2-ю с. с. , нужно разделить его на 2 и выделить остаток, затем частное снова разделить на 2 и выделить остаток. Процесс деления повторять до тех пор, пока в частном не останется 1. Затем, начиная с последнего частного – 1, переписываем все остатки в обратном порядке. Это и есть искомое число 129/2 (целое 64) (остаток 1) 64/2 (целое 32) (остаток 0) 32/2 (целое 16) (остаток 0) 16/2 (целое 8) (остаток 0) 8/2 (целое 4) (остаток 0) 4/2 (целое 2) (остаток 0) 2/2 (целое 1) (остаток 0) 129 = 10000001
Определим количество бит, которое необходимо для хранения одного символа при мощности алфавита, равной 32768, и равной 8. При мощности алфавита равной 32768, количество бит, необходимое для хранения одного символа, равно 15, т.к. 32768 = 2^15 (смотрим степень). При мощности алфавита равной 8, количество бит, необходимое для хранения одного символа, равно 3, т.к. 8 = 2^3 (опять же степень).
То есть для мощности 32768 отводится 15 бит на символ, а для мощности 8 - 3 бита на символ.
15/3 = 5, то есть кол-во информации в первом тексте в пять раз больше, чем во втором.
Var
s,s1:string;
i:integer;
begin
readln(s);
var ars:=s.ToWords;
for i:=0 to ars.length-1 do
if lowcase(ars[i][1])<>lowcase(ars[i][length(ars[1])]) then s1:=s1+ars[i]+' ';
writeln(s1);
end.
Пример ввода:
Мама окно рама
Пример вывода:
Мама рама