Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Что такое стандартная функция?

Поиск

При решении различных задач с помощью компьютера бывает необходимо вычислить логарифм или модуль числа, синус угла и т.д.

Вычисления часто употребляемых функций осуществляются посредством подпрограмм, называемых стандартными функциями, которые заранее запрограммированы и встроены в транслятор языка.

Таблица стандартных функций школьного алгоритмического языка

Название и математическое обозначение функции Указатель функции
Абсолютная величина (модуль) | х | abs(x)
Корень квадратный   sqrt(x)
Натуральный логарифм ln x ln(x)
Десятичный логарифм lg x lg(x)
Экспонента (степень числа е " 2.72) ex exp(x)
Знак числа x (-1,если х<0; 0,если x=0; 1,если x>0) sign x sign(x)
Целая часть х (т.е. максимальное целое число, не превосходящее х)   int(x)
Минимум из чисел х и y   min(x,y)
Максимум из чисел х и y   max(x,y)
Частное от деления целого х на целое y   div(x,y)
Остаток от деления целого х на целое y   mod(x,y)
Случайное число в диапазоне от 0 до х-1   rnd(x)
Синус (угол в радианах) sin x sin(x)
Косинус (угол в радианах) cos x cos(x)
Тангенс (угол в радианах) tg x tg(x)
Котангенс (угол в радианах) ctg x ctg(x)
Арксинус (главное значение в радианах) arcsin x arcsin(x)
Арккосинус (главное значение в радианах) arccos x arccos(x)
Арктангенс (главное значение в радианах) arctg x arctg(x)
Арккотангенс (главное значение в радианах) arcctg x arcctg(x)

 

 

Как записываются арифметические выражения?

Арифметические выражения записываются по следующим правилам:

· Нельзя опускать знак умножения между сомножителями и ставить рядом два знака операций.

· Индексы элементов массивов записываются в квадратных (школьный АЯ, Pascal) или круглых (Basic) скобках.

· Для обозначения переменных используются буквы латинского алфавита.

· Операции выполняются в порядке старшинства: сначала вычисление функций, затем возведение в степень, потом умножение и деление и в последнюю очередь — сложение и вычитание.

· Операции одного старшинства выполняются слева направо. Например, a/b*c соответствует a/b*c. Однако, в школьном АЯ есть одно исключение из этого правила: операции возведения в степень выполняются справа налево. Так, выражение 2**(3**2) в школьном языке АЯ вычисляется как 2**(3**2) = 512. В языке QBasic аналогичное выражение 2^3^2 вычисляется как (2^3)^2 = 64. А в языке Pascal вообще не предусмотрена операция возведения в степень, в Pascal x^y записывается как exp(y*ln(x)), а x^y^z как exp(exp(z*ln(y))*ln(x)).

 

Примеры записи арифметических выражений

Математическая запись Запись на школьном алгоритмическом языке АЯ
x*y/z
x/(y*z) или x/y/z
(a**3+b**3)/(b*c)
(a[i+1]+b[i-1])/(2*x*y)
(-b+sqrt(b*b-4*a*c))/(2*a)
, (x<0) sign(x)*abs(x)**(1/5)
0.49*exp(a*a-b*b)+ln(cos(a*a))**3
x/(1+x*x/(3+(2*x)**3))

 

 

Типичные ошибки в записи выражений:

5x+1 a+sin x ((a+b)/c**3 Пропущен знак умножения между 5 и х Аргумент x функции sin x не заключен в скобки Не хватает закрывающей скобки

Как записываются логические выражения?

В записи логических выражений помимо арифметических операций сложения, вычитания, умножения, деления и возведения в степень используются операции отношения < (меньше), <= (меньше или равно), > (больше), >= (больше или равно), = (равно), <> (не равно), а также логические операции и, или, не.

Примеры записи логических выражений, истинных при выполнении указанных условий.

Условие Запись на школьном алгоритмическом языке
Дробная часть вещественного числа a равна нулю int(a) = 0
Целое число a — четное mod(a,2) = 0
Целое число a — нечетное mod(a,2) = 1
Целое число k кратно семи mod(k,7) = 0
Каждое из чисел a,b положительно (a>0) и (b>0)
Только одно из чисел a,b положительно ((a>0) и (b<=0)) или ((a<=0) и (b>0))
Хотя бы одно из чисел a,b,c является отрицательным (a<0) или (b<0) или (c<0)
Число x удовлетворяет условию a<x<b (x>a) и (x<b)
Число x имеет значение в промежутке [1,3] (x>=1) и (x<=3)
Целые числа a и b имеют одинаковую четность ((mod(a,2)=0) и (mod(b,2)=0) или ((mod(a,2)=1) и (mod(b,2)=1))
Точка с координатами (x,y) лежит в круге радиуса r с центром в точке (a,b) (x-a)**2+(y-b)**2<r*r

 

 

Уравнение ax^2+bx+c=0 не имеет действительных корней b*b-4*a*c<0
Точка (x,y) принадлежит первому или третьему квадранту ((x>0) и (y>0)) или ((x<0) и (y<0))
Точка (x,y) принадлежит внешности единичного круга с центром в начале координат или его второй четверти (x*x+y*y>1) или ((x*x+y*y<=1) и (x<0) и (y>0))
Целые числа a и b являются взаимно противоположными a = -b
Целые числа a и b являются взаимно обратными a*b = 1
Число a больше среднего арифметического чисел b,c,d a >(b+c+d)/3
Число a не меньше среднего геометрического чисел b,c,d a >=(b*c*d)**(1/3)
Хотя бы одна из логических переменных F1 и F2 имеет значение “да” (истина). F1 или F2=истина
Обе логические переменные F1 и F2 имеют значение “да” (истина). F1 и F2=истина
Обе логические переменные F1 и F2 имеют значение “нет” (ложь). не F1 и не F2=истина
Логическая переменная F1 имеет значение “да” (истина), а логическая переменная F2 имеет значение “нет” (ложь) F1 и не F2=истина
Только одна из логических переменных F1 и F2 имеет значение “да” (истина). (F1 и не F2) или (F2 и не F1)=истина

 

Примеры. Определите значение целочисленной переменной S после выполнения операторов:

а) S:=128нц для i от 1до 4 S:=div(S,2)кц Решение
i S
   
  128/2=64
  64/2=32
  32/2=16
  16/2=8

 

Ответ: S=8

г) S:=0 нц для i от 1до2 нц для j от 2 до 3 S:=S+i+j кцкц Решение
i j S
     
    0+1+2=3
    3+1+3=7
    7+2+2=11
    11+2+3=16

 

Ответ: S=16

б) S:=1; a:=1нц для i от 1 до 3 S:=S+i*(i+1)*a a:=a+2кц   д) нц для i от 1 до 3 S:=0 нц для j от 2 до 3 S:=S+i+j кцкц  
в) S:=1; a:=1нц для i от 1 до 3 S:=S+i нц для j oт 2 до 3 S:=S+j кцкц е) нц для i от 1 до 2 S:=0 нц для j oт 2 до 3 нц для k oт 1 до 2 S:=S+i+j+k кц кцкц  
           

 

10. Определите значение переменной S после выполнения операторов:

а) i:=0; S:=0нц пока i<3 i:=i+1; S:=S+i*iкц г) S:=0; N:=125нц пока N>0 S:=S+mod(N,10) | S — сумма цифр числа 125 N:=div(N,10) | текущие числа Nкц
Решение
Условие i < 3 i S
     
0 < 3? да   0+12=1
1 < 3? да   1+22=5
2 < 3? да   5+32=14
3 < 3? нет(кц)    

 

Ответ: S=14

Решение
Условие N > 0 S N
     
125 > 0? да 0+5=5 12
12 > 0? да 5+2=7 1
1 > 0? да 7+1=8 0
0 > 0? нет (кц)    

 

Ответ: S=8

б) S:=0; i:=1нц пока i>1 S:=S+1/i i:=i-1кц д) а:=1; b:=1; S:=0;нц пока a<=5 a:=a+b; b:=b+a; S:=S+a+bкц
в) S:=0; i:=1; j:=5нц пока i<j S:=S+i*j i:=i+1 j:=j-1кц е) a:=1; b:=1нц пока a+b<10 a:=a+1 b:=b+aкцS:=a+b

 

 



Поделиться:


Последнее изменение этой страницы: 2016-08-01; просмотров: 1078; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.158.124 (0.006 с.)