Часто возникает необходимость получить строковое представление числа и наоборот (например, получить строку '13' из числа 13). Для работы с числами и строками применяются две процедуры.
Str(N, Str1) − переводит числовое значение N в строковое и присваивает результат строке Str1, причем можно переводить как целые числа, так и вещественные.
Примеры
Str(1234, Str1) − после выполнения Str1='1234';
Str (452.567, Str1) − переводим вещественное число с фиксированной запятой, результат Str1='452.567';
Str(4.52567е+2, Str1) − переводим вещественное число в экспоненциальной форме, результат Str1='4.52567e+2',
Вторая процедура выполняет обратное действие. Val(Str, N, К) − переводит строковое значение в числовое. Если данная строка действительно является записью числа (целого или вещественного), то значение К=0, а N − это искомое число, иначе К будет равно номеру первого символа, с которым процедура Val "не справилась".
Примеры
Val('1234', n, k) - n=1234, k=0;
Val('234.56', n, k) - n=234.56, k=0;
Val('2.3456e+2', n, k) - n=2.3456e+2, k=0;
Val('12-45', n, k) k=3, так как знак "−" в записи чисел может быть только на первом месте;
Val('2,567m', n, k) k=2, так как разделительным знаком между целой и дробной частями является точка, а не запятая;
Val ('5.87с-5') k=5, так как символ 'с' не должен встречаться в записи вещественного или целого числа.
Решение задач
Пример 1
Сколько раз в данной строке встречается символ 'a'?