program StrToWord;
var
s, r: string;
i: Integer;
b: Boolean;
d: Set of Char;
begin
WriteLn ('Введите строку:');
ReadLn (s);
d := [' ', ',', '.'];
r := '';
b := true;
for i := 1 to Length (s) do begin
if s [i] in d then begin
b := True;
end else if b and not (s [i] in d) then begin
r := r + s [i];
b := False;
end;
end;
WriteLn (r);
ReadLn;
end.
Объяснение:
d := [' ', ',', '.']; - это множество символов - разделителей, можно добавить еще любые символы, которые разделяют слова
ответ: Число 9 (1001) и 10(1010) имеет 2 единицы в двоичной записи, 10 больше 9, значит ответ 10.
2) 519 --> 2^9+2^2+2^1+2^0 ---> 1000000111
ответ: 519 содержит 4 единицы в двоичной СС
3) 99 ---> 2^6+2^5+2^1+2^0 > 1100011
128 ---> 10000000
257 ---> 2^8+2^0 ---> 100000001
3) Y = 100 в двоичной = 4 в десятичной
X = 101010 в двоичной = 42 в десятичной
X-Y=42-4=38
38 ---> 2^5+2^2+2^1 ---. 100110
5) 1 ---> 1 в двоичной СС
3 ---> 11 в двочиной СС
11 ---> 1011 в двоичной СС
33 ---> 100001
ответ: 11
var i,n,znak:integer;
a:char;
begin
clrscr;
Writeln('Введите символ:');
readln(a);
writeln;
znak:=0;
for i:=1 to 5 do
begin
n:=ord(a);
n:=n+i;
writeln(i,') ',chr(n));
if (n = 44) or (n = 45) or (n = 46) or (n = 58) or (n = 59) or (n = 33) or (n = 63) or (n = 34) then
znak:=znak+1;
end;
if znak = 0 then writeln('Нет знаков препинание.')
else writeln('В следующем 5 символе оказалась ',znak,' знак(ов) препинание');
readkey;
end.