p := sign(y + 13 * a) * power(abs(y + 13 * a), 1/3);
Объяснение:
Единственная проблема тут - как записать кубический корень. В паскале есть функция power(a, p), которая возводит a в степень p, но если p не целое, оно работает только для положительных (для p > 0 неотрицательных) a. Кубический корень же определён для всех a.
Решение такое: посчитать кубический корень для модуля , а потом поставить такой же знак, что и под корнем.
Полностью программа может выглядеть, например, так:
var p, y, a: real;
begin
read(y, a);
p := sign(y + 13 * a) * power(abs(y + 13 * a), 1/3);
write(p)
end.
2. к массивам символов.
3. 255
4. char
5. Строки можно присваивать друг другу.
Строки можно объединять с операции конкатенации, которая
обозначается знаком +.
Строки можно сравнивать друг с другом с операций отношения.
К отдельному символу строки можно обращаться как к элементу массива
символов, например s1[3].
6. Функция Length (s) возвращает фактическую длину строки s, результат имеет
тип byte.
Функция Pos (subs, s) ищет вхождение подстроки subs в строку s и
возвращает номер первого символа subs в s или нуль, если subs не
содержится в s.
Функция Concat (s1, s2, ..., sn) возвращает строку, являющуюся слиянием
строк s1, s2, ..., sn.
Функция Copy (s, start, len) возвращает подстроку длиной len, начинающуюся с позиции start строки s.
7. Процедура Delete (s, start, len) удаляет из строки s, начиная с позиции start,
подстроку длиной len.
Процедура Insert (subs, s, start) вставляет в строку s подстроку subs, начиная
с позиции start.
8. как к элементу массива символов, например s1[3].
9. Строки равны, если они имеют одинаковую длину и посимвольно
эквивалентны. А так как символы "М" и "м" не эквивалентны - строки не равны.