Алгоритмический язык исполнителя содержит две команды: Отнять и Поделить. Отнять означает вычесть единицу. Поделить - разделить на два. Команда Отнять кодируется знаком «–» , а команда Поделить – знаком «/». Делить можно только целые числа. Команды выполняются одна за другой, слева направо.
Пример: исходное число: 25; программа: – / /– –. Результат 4. Какая из перечисленных программ преобразует число 101 в 11?
– / – – / –
– / – / – /
– / – / / –
– / / – / –
// PascalABC.Net 3.0, сборка 1066
procedure CheckString(var s:string; var n:integer);
var
i:integer;
begin
i:=Length(s);
while i>0 do begin
if not(s[i] in ['a'..'z']) then Delete(s,i,1);
Dec(i)
end;
n:=Length(s)
end;
var
s1,s2:string;
i,p,n1,n2:integer;
begin
Write('Введите первую строку: '); Readln(s1);
CheckString(s1,n1);
if n1=0 then Writeln('Введенная строка не содержит допустимых символов')
else begin
Write('Введите вторую строку: '); Readln(s2);
CheckString(s2,n2);
if n2=0 then Writeln('Введенная строка не содержит допустимых символов')
else
{ теперь обе строки содержат только маленькие латинские буквы }
if n1=n2 then begin
for i:=1 to n1 do begin
p:=Pos(s1[i],s2);
if p=0 then Break
else Delete(s2,p,1)
end;
if Length(s2)=0 then Writeln('Решение имеется')
else Writeln('Решения нет')
end
else
Writeln('Решения нет');
end
end.
Тестовое решение:
Введите первую строку: this is my own deal!
Введите вторую строку: Тест: *is now=l2ead my sthi?
Решение имеется
Также имеется современное решение, которому пока что в школах не учат:
// PascalABC.Net 3.0, сборка 1066
begin
var s1:=ReadString('Введите первую строку: ').Where(x->x in ['a'..'z']);
if s1.Count=0 then
Writeln('Введенная строка не содержит допустимых символов')
else begin
var s2:=ReadString('Введите вторую строку: ').Where(x->x in ['a'..'z']);
if s2.Count=0 then
Writeln('Введенная строка не содержит допустимых символов')
else
if s1.Except(s2).Count>0 then Writeln('Решения нет')
else Writeln('Решение имеется')
end
end.
Однако не все так просто. Если посмотреть на израильские древние языки, то написание цифр там, как ни странно, совершенно не такое, к какому мы привыкли. Их цифры представляют из себя завитушки и крючёчки, и только их цифра «9″ чуть-чуть смахивает на нашу девятку.
Так кто же тогда придумал арабские цифры? На самом деле, знакомые нам цифры (1, 2, 3, …, 9) придумали вовсе не арабские народы. Это написание пришло к нам из Индии. Именно индийские древние народы так обозначали цифры. Конечно, сегодня данное написание претерпело множество изменений, но именно в древней индийской письменности можно разглядеть похожие «закорючки» . Арабские цифры были придуманы в Древнем Востоке для того, чтобы людям было удобнее записывать сложные математические вычисления. Ведь тогда на территории Древнего Востока существовало большое количество научных и псевдонаучных школ.
Но почему тогда цифры названы арабскими? Оказывается, из Индии в Европу эти цифры принесли именно арабы. Однако напрашивается вопрос – почему же тогда арабы не оставили такое написание и себе?