Код Бодо - длина кодов всех символов алфавита одинакова и равна пяти. В данном случае не возникает проблемы отделения букв друг от друга.Каждая пятерка сигналов — это знак текста.
<span>А у Морзе каждая буква алфавита кодируется последовательностью коротких сигналов в его случае - точек, и длинных сигналов - тире. Буквы отделяются друг от друга паузами, то есть отсутствием сигналов. </span>
<em><u>Вариант для тех, кто любит и понимает множества.</u></em>
const
cs='бвгджз';
var
s:string;
i:integer;
c:char;
p,csg:set of char;
begin
Writeln('Введите текст, разделяя слова запятыми, в конце поставьте точку');
Readln(s);
p:=[];
for i:=1 to Length(cs) do Include(csg,cs[i]); { инициализация множества }
s:=LowerCase(s); { приведение к нижнему регистру }
i:=1; c:=s[1];
while c<>'.' do begin
{ обработка нечетного слова }
while not (c in [',','.']) do begin
if (c in csg) and not (c in p) then Include(p,c);
i:=i+1;
c:=s[i]
end;
{ обработка четного слова }
if c<>'.' then begin i:=i+1; c:=s[i] end;
while not(c in [',','.']) do begin
if (c in csg) and (c in p) then Exclude(p,c);
i:=i+1;
c:=s[i]
end;
if c<>'.' then begin i:=i+1; c:=s[i] end
end;
s:='';
for i:=1 to Length(cs) do if cs[i] in p then Write(cs[i])
end.
<em><u>Тестовое решение:</u></em>
Введите текст, разделяя слова запятыми, в конце поставьте точку
Это,пример,текста,созданного,для,проверки,программы.
гд
<em><u>Вариант для тех, кто с множествами не дружит:</u></em>
const
cs='бвгджз';
var
s,p:string;
i,n:integer;
c:char;
begin
Writeln('Введите текст, разделяя слова запятыми, в конце поставьте точку');
Readln(s);
p:=''; n:=Length(cs);
s:=LowerCase(s); { приведение к нижнему регистру }
i:=1; c:=s[1];
while c<>'.' do begin
{ обработка нечетного слова }
while (c<>',') and (c<>'.') do begin
if (Pos(c,cs)>0) and (Pos(c,p)=0) then p:=p+c;
i:=i+1;
c:=s[i]
end;
{ обработка четного слова }
if c<>'.' then begin i:=i+1; c:=s[i] end;
while (c<>',') and (c<>'.') do begin
if (Pos(c,cs)>0) and (Pos(c,p)=1) then p[Pos(c,p)]:='*';
i:=i+1;
c:=s[i]
end;
if c<>'.' then begin i:=i+1; c:=s[i] end
end;
for i:=1 to Length(cs) do if Pos(cs[i],p)>0 then Write(cs[i])
end.
<em><u>Тестовое решение:</u></em>
Введите текст, разделяя слова запятыми, в конце поставьте точку
Данная,фраза,предлагается,для,тестирования.
вг
#include <iostream>
int main() {
long n;
std::cin >> n;
long power = 10;
for (long i = 1; i <= n; i++) {
if (power <= i) {
power *= 10;
}
if (i * i % power == i) {
std::cout << i << " ";
}
}
return 0;
}
Ответ 10
Смотри, ты не можешь напрямую доехать из А в Е, видишь квадратик пустой. Значит тебе надо искать объездные пути (грубо говоря пересадки).
Ты можешь доехать из А в Б(3 км), из А в С (8км)Б из А в D (7 км). Далее смотрим сколько из пересадочных точек километров до точки Е. Из Б в Е (8 км), из С в Е (3 км) и из D в Е(5км). Можно поехать с 2-мя пересадками, например из А в Б, потом из Б в С, потом из С в Е
Рассчитываем все возможные перемещения:
1)из А в Б а потом в Е
3+8=11
2) А-С-Е=8+3=11
3)из А в Б из Б в С и из С в Е
3+4+3=10
<span>Память является инструментом ХРАНЕНИЯ информации </span>