var s1,s2: string; p:integer;
begin
writeln('Введите фамилию и имя:');
readln(s1);
p:=pos(' ',s1);
s2:=copy(s1,p+1,1)+'. '+copy(s1,1,p-1);
writeln(s2);
end.
Пример:
Введите фамилию и имя:
Иванов Петр
П. Иванов
Информаци + о + н + 'ые'
'тех' + н + о + лог + ии
<h3>То, что выделено в кавычках невозможно получить из этих слов.</h3>
Алгоритмы быстрого возведения в степень (дихотомический алгоритм возведения в степень, бинарный алгоритм возведения в степень) — алгоритмы, предназначенные для возведения числа {\displaystyle x} x в натуральную степень {\displaystyle n} n за меньшее число умножений, чем это требуется в определении степени[1]. Алгоритмы основаны на том, что для возведения числа {\displaystyle x} x в степень {\displaystyle n} n не обязательно перемножать число {\displaystyle x} x на само себя {\displaystyle n} n раз, а можно перемножать уже вычисленные степени. В частности, если {\displaystyle n=2^{k}} n=2^k степень двойки, то для возведения в степень {\displaystyle n} n достаточно число возвести в квадрат {\displaystyle k} k раз, затратив при этом {\displaystyle k} k умножений вместо {\displaystyle 2^{k}} 2^k. Например, чтобы возвести число {\displaystyle x} x в восьмую степень, вместо выполнения семи умножений {\displaystyle x\cdot x\cdot x\cdot x\cdot x\cdot x\cdot x\cdot x} {\displaystyle x\cdot x\cdot x\cdot x\cdot x\cdot x\cdot x\cdot x} можно возвести число в квадрат ( {\displaystyle x^{2}=x\cdot x} {\displaystyle x^{2}=x\cdot x}), потом результат возвести еще раз в квадрат и получить четвертую степень ( {\displaystyle x^{4}=x^{2}\cdot x^{2}} {\displaystyle x^{4}=x^{2}\cdot x^{2}}), и наконец результат еще раз возвести в квадрат и получить ответ ( {\displaystyle x^{8}=x^{4}\cdot x^{4}} {\displaystyle x^{8}=x^{4}\cdot x^{4}}).
Кроме того, некоторые алгоритмы для дальнейшей оптимизации используют тот факт, что операция возведения в квадрат быстрее операции умножения за счёт того, что при возведении в квадрат цифры в сомножителе повторяются[2].
Бинарный алгоритм возведения в степень был впервые предложен в XV веке персидским математиком Аль-Каши[3].
Данные алгоритмы не всегда оптимальны. Например, при использовании схемы «слева направо» быстрое возведение в степень n = 15 потребует выполнения трёх операций умножения и трёх операций возведения в квадрат, хотя возведение в 15-ю степень можно выполнить и за 3 умножения и 2 возведения в квадрат[4].
1. function f( x: float ): float;
var i: integer;
begin
for i := 0 to size-1 do
if (fx[ i ] <= x) and (x <= fx[ i+1 ]) then
begin
f := (fy[ i+1 ] - fy[ i ]) / (fx[ i+1 ] - fx[ i ]) * (x - fx[ i ] );
break;
end;
end;
...
x := a;
dx := (b-a) / 10;
while (x <= b) do
begin
writeln( x, ' => ', f(x) );
x := x + dx;
end;
2. sqrt( pow( x, 4/5 ) + pow( x, (4-x)/5 ) ) + ln( abs(x-0.25) )