17:38 Задачи для подготовки | |
Материал взят из сайта http://informatics.mccme.ru Для решения задач нам понадобятся стандартные функции и процедуры. Функция - это такая организация преобразования переданного ей значения, при которой это измененное значение передается обратно. Процедура - это такая организация преобразования переданного ей значения параметра, при которой изменяется значение этого параметра, и, в отличие от функции, не возвращается никакого значения. Познакомимся с основными, наиболее часто используемыми процедурами и функциями. Арифметические функции: Abs(x), где аргумент и результат являются переменными целого или вещественного типа - вычисляет модуль (абсолютную величину) числа х; Cos(x), где аргумент и результат являются переменными вещественного типа - вычисляет косинус х; Sin(x), где аргумент и результат являются переменными вещественного типа - вычисляет синус х; Frac(x), где аргумент и результат являются переменными вещественного типа - выделяет дробную часть числа х; Int(x), где аргумент и результат являются переменными вещественного типа - выделяет целую часть числа х; Pi, где результат является переменной вещественного типа - вычисляет значение π; Random(x), где аргумент и результат являются переменными целого типа - генерирует случайное число в пределах от 0 до х включительно. Если параметр х не задан, то формируется вещественное число от 0 до 1. Перед использованием данной функции нужно инициализировать генератор случайных чисел при помощи процедуры Randomize (см. ниже); Sqr(x), где аргумент и результат являются переменными целого или вещественного типа - вычисляет x2; Sqrt(x), где аргумент и результат являются переменными целого или вещественного типа - вычисляет √x. Функции преобразования типов: Chr(x), где аргумент типа Byte, а результат типа Char- возвращает символ, у которого код в таблице ASCII равен х; Ord(x), где аргумент может быть любого порядкового типа, а результат типа LongInt - возвращает порядковый номер значения х при начале нумерации с нуля; Round(x), где аргумент вещественного типа, результат типа LongInt - округляет число х до ближайшего целого; Trunc(x), где аргумент вещественного типа, результат типа LongInt - выделяет целую часть числа х. Функции для порядковых типов: Odd(x), где аргумент типа LongInt, а результат логического типа - определяет, является ли число четным (результат false) или нечетным (результат true); Pred(x), где аргумент и результат любого порядкового типа - получает предшествующее значение; Succ(x), где аргумент и результат любого порядкового типа - получает последующее значение; Upcase(x), где аргумент и результат типа Char - преобразует букву латинского алфавита в соответствующую ей заглавную (буква х может быть как строчной, так и заглавной). Процедуры для порядковых типов: Dec(x), где аргумент любого порядкового типа - уменьшает значение переменной х на 1; Dec(x,n), где х любого порядкового типа, а n типа LongInt - уменьшает значение переменной х на n; Inc(x), где аргумент любого порядкового типа - увеличивает значение переменной х на 1; Inc(x,n), где х любого порядкового типа, а n типа LongInt - увеличивает значение переменной х на n; Randomize - инициализирует генератор случайных чисел. Правила применения функций: чтобы воспользоваться функцией, нужно указать ее в правой части оператора присваивания; при обращении к функции необходимо в круглых скобках указать ее аргументы; в разделе описания переменных правильно указывайте типы переменных, которые хотите употребить в качестве аргумента или результата функции; в одном выражении можно обратиться к нескольким функциям. Правила применения процедур: для выполнения процедуры ее надо вызвать в программе в виде оператора; в разделе описания переменных правильно указывайте тип переменной, которую хотите употребить в качестве аргумента процедуры. Задача. Найти значения выражений: a) (1+x)2 b) c) |a+ bx| Прежде чем приступить к составлению программы, необходимо перевести данные выражения с математического языка на язык Паскаль. a) (1+x)2 → sqr(1+x) b) → sqrt((1+A)*5) c) |A+ bx| → abs(A+b*x) Теперь уже можно переходить к составлению программы. Program Primer; Uses Crt; Var A : word; {так как подкоренное выражение должно быть положительно} b, x, result : real; Begin ClrScr; Writeln('Введите значения переменных (A-положительно)'); Write('A='); Readln(A); Write('b='); Readln(b); Write('x='); Readln(x); Result := sqr(1+x); Writeln ('sqr(1+x)=', result); Result := sqrt((1+A)*5); Writeln ('sqrt((1+A)*5)=', result); Result := abs(A+b*x); Writeln ('abs(A+b*x)=', result); Readln; End. Задание. Наберите программу, протестируйте, добавьте комментарий, сохраните файл и распечатайте листинг. | |
|