Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Операторы языка Паскаль

End.

Строка заголовка программы состоит из зарезервированного слова Program и имени программы. Необходимо помнить, что в теле программы не должны встречаться объекты, имя которых совпадает с именем программы, после которого ставится точка с запятой (;). Строка заголовка программы необязательна.

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

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

Пример. Uses Crt, Graph;

В разделе описания меток Label содержатся перечисленные через запятую имена меток (целые числа, или строка символов, или символьно-цифровая конструкция), предназначенные для организации последовательности вычисления.

В разделе Const содержатся перечисленные через запятую константы, используемые в программе. Константы могут быть следующих видов:

- целые (числа в диапазоне от -32768..+32767);

- вещественные (числа в диапазоне от 2.9*10-39 .. 1.7*1038);

- текстовые (литерные, строковые). Пример. 'а', 'ELEMENT', 'Программа'.

- логические: True (истина), False (ложь).

Пример. Cоnst Pi=3.14; High=100; Stroka='АБВГДЕ';

Тип константы очевиден из ее значения. Константы не могут изменять свои значения в процессе работы программы.

В разделе описания типов Type программист определяет новые типы в программе.

Тип данных — именованное множество величин (значений данных), объединенных совокупностью допустимых операций, которое используется при описании переменных и констант.

В разделе описания переменных Var содержится список переменных, используемых в программе, с указанием их типа.

Переменная — это именованный объект, которому может быть сопоставлено значение определенного типа. Переменные могут изменять свои значения.

Примечание. Разделы Label, Const, Type, Var могут располагаться в произвольном месте программы.

Процедуры и функции — это специальным образом оформленные последовательности команд (подпрограммы). Доступ к такой подпрограмме может быть осуществлен из любого места основной программы, а также из любой процедуры или функции.

Основной блок программы состоит из одного или последовательности операторов. Тело основного блока программы ограничено операторами Begin и end. После end ставится точка. Операторы в основном блоке программы разделяются точкой с запятой (;). После Begin и перед end точка с запятой не ставится.

Примечание. Если в программе пропущена точка с запятой, то при компиляции компилятор выдаст следующее сообщение об ошибке: “Error #85: “;” expected” (т.е. ожидалась точка с запятой). Если после последнего end в программе не поставлена точка, то компилятор выдаст следующее сообщение об ошибке: “Error #10: “Unexpected end of file”” (т.е. неожиданный конец файла”, если же там стоит “;”, то компилятор выдаст сообщение: “Error #10: “.” expeted” (т.е. ожидалась точка).

Для пояснения программы или отдельных ее частей используются комментарии. Комментарии ограничены слева и справа фигурными скобками {} или лексемами (* и *). Наличие комментариев делает программу более понятной и удобной для чтения. При выполнении программы комментарии игнорируются и не влияют на выполнение программы.

3. Типы данных языка Паскаль. Все типы данных разделяются на простые (скалярные) и структурные (составные).

Простой тип — это тип данных, значения которых не содержат составных частей (компонентов).

Простые типы — базовые, на их основе строятся более сложные типы. Рассмотрим простые (стандартные) типы данных, которые являются встроенными (предопределенными) в язык Turbo Pascal 7.0.

Integer — целый тип. Диапазон значений от –32 768 до 32 767.

Над целыми переменными типа integer можно проводить арифметические операции +, -, *, /, div (деление нацело), mod (вычисление остатка от целочисленного деления). Определены операции отношения: =, <>, >, <, >=, <=, вырабатывающие результат булевского типа. С аргументом целого типа можно использовать следующие стандартные функции.

Имя функции Значение Тип результата
Sin (x) Sin x Real
Cos (x) Cos x Real
Ln (x) Ln x Real
Sqrt (x) √х Real
Arctan (x) Arctg x Real
Exp (x) ех Real
Sqr (x) х2 Integer
abs (x) │x│ Integer
Odd(x) для четного аргумента значение функции False, для нечетного — True. Boolean
Succ(x) Следующее целое число. Integer
Pred(x) Предыдущее целое число. Integer

Real — вещественный (действительный) тип. Данные этого типа могут иметь две формы записи: с фиксированной точкой и с плавающей точкой (для значений с десятичным порядком). Числа с фиксированной точкой записываются в виде целой и дробной частей числа, разделенных десятичной точкой. Например, 1.23, 12.56. Числа с плавающей точкой используются для записи чисел, изменяющихся в широком диапазоне значений (от очень маленьких до очень больших). Например, 1.23Е000, 1.256Е001, -1.6Е4. Диапазон значений от 2.9*10-39 до 1.7*1038. Над переменными вещественного типа определены арифметические операции +, -, *, / и операции отношения. С аргументом вещественного типа могут использоваться стандартные арифметические функции (смотри функции целого аргумента, кроме функций Odd, Pred, Succ). Все они вырабатывают результат вещественного типа. Кроме них, существуют стандартные функции преобразования значения вещественного типа в значение целого типа: Trunc (х) — отбрасывание у значения вещественной переменной x дробной части; Round (х) — округление значения вещественной переменной х до ближайшего целого.

Примеры.

Значение х Trunc(х) Round(х)
21.53    
-2.7 -2 -3
-2.2 -2 -2

Boolean — логический тип. Данные этого типа могут принимать только два значения: True (истинно) и False (ложно).

Над переменными определены три логические операции:

- and — конъюнкция (логическое умножение);

- or — дизъюнкция (логическое сложение);

- not — отрицание.

Булевский тип определен так, что False < True. Таким образом, данным булевского типа можно применять операции отношения. Определены следующие значения стандартных функций:

- Ord(True)= 1;

- Ord(False)= 0;

- Succ(False)= True;

- Pred(True)= False.

Char — данные символьного (литерного) типа могут принимать значение только одного символа, имеющегося в наборе данной ЭВМ.

Существуют две стандартные, обратные по отношению друг к другу, функции преобразования:

- Ord (S) — возвращает порядковый номер символа S в упорядоченном множестве символов;

- Chr (I) возвращает символ, стоящий под номером I, в упорядоченном множестве символов.

Пример. Ord ('A')=65, Chr (65)= 'A'.

Справедливы следующие формулы:

Chr(Ord (S))= S, Ord(Chr (I))= I.

Над переменными символьного типа определены операции отношения. Пусть С1 и С2 — переменные символьного типа. Отношение С1<С2 истинно тогда и только тогда, когда Ord(С1) < Ord(C2).

К аргументам символьного типа применимы стандартные функции:

- Pred (S) — возвращает предыдущий символ;

- Succ (S) — возвращает следующий символ.

Пример. Succ ('A') = 'B', Pred ('B')= 'A'.

Справедливы равенства:

Pred (S)= Chr(Ord (S)-1), Succ (S)= Chr(Ord (S)+1).

3. Выражения в языке Паскаль. Выражения в языке Паскаль конструируются из констант, перемененных, имен функций, знаков операций и круглых скобок (). Значения выражений вычисляются с учетом расставленных скобок и старшинства операций. Действия, встречающиеся в выражениях, выполняются в следующем порядке:

1) not;

2) *, /, mod, div, and;

3) +, -, or;

4) <, <=, >, >=, <>, =.

Операции одного достоинства выполняются слева направо.

При выполнении арифметических операций над величинами типов Real и Integer вырабатывается результат типа Real.

Пример. Пусть Var NI, KL: integer; TER, X: Real; S: Char. Найдем значение выражения (TER - Ln(x) > 2.5 * KL) and (Ord(S) < NI).

Обозначим отдельно выполняемое действие через Ai. Результаты при выполнении действий рассматриваемого выражения примут следующие типы:

1. A1:= Ln(x) Real
2. A2:= 2.5 * KL Real
3. A3:= TER - A1 Real
4. A4:= A3 > A2 Boolean
5. A5:= Ord(S) Integer
6. A6:= A5< NI Boolean
7. A7:= A4 and A6 Boolean

Операторы языка Паскаль

4.1. Составной оператор. Объединение нескольких операторов в одну группу называется составным оператором. Форма записи данного оператора: Begin [ список операторов] end, где операторы в списке операторов разделяются точкой с запятой (;). После Begin и перед end точка с запятой не ставится. В этой конструкции служебные слова Begin и end называются операторными скобками.

4.2.Оператор присваивания. С помощью этого оператора переменной или функции присваивается значение выражения. Форма записи: переменная:= выражение. Например, В:=60; А:=Sqrt(X). Переменная и выражение должны иметь одинаковый тип (исключение: тип переменной Real, тип выражения Integer).

Примечание. Нельзя с помощью одного оператора присваивать одно значение разным переменным. Запись правильная: i:=0;K:=0;j:=0. Запись не правильная: i,K,j:= 0.

4.3. Пустой оператор. Оператор, не выполняющий никакого действия, называется пустым оператором. Пустому оператору соответствует отсутствие записи на том месте, где по правилам должен быть какой-нибудь оператор. В этом случае ставится символ точки с запятой (;). Например, А:=4; В:=6;; С:=В+А.

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

Для стандартного ввода данных используются встроенные процедуры: Read [(список_имен_переменных)] и ReadLn [(список_имен_переменных)], — где список_имен_переменных состоит из имен переменных, которые разделяются запятой.

Процедуры стандартного ввода вызывает приостановку программы, переключение на экран пользователя и ожидание ввода значений из предопределенного текстового файла с именем InPut, который по умолчанию связан с клавиатурой. После набора всех вводимых значений и нажатия клавиши Enter происходит переключение на программу, и она продолжает свою работу. При вводе значений необходимо согласовывать типы вводимых значений с типами соответствующих переменных из списка переменных. Переменные, упоминаемые в списке имен переменных, могут быть типа Real, Integer, Char. Ввод переменных логического типа при помощи стандартных процедур не допустим. Значения переменных числовых типов, имена которых упоминаются в списке переменных оператора ввода, при вводе разделяются пробелом или нажатием клавиши Enter, а значения символьного типа вводятся без разделителей.

Пример. Пусть переменные CH1, CH2, CH3 типа Char. Тогда если записан оператор ReadLn(CH1, CH2, CH3), то пользователь вводит (без каких-либо) разделителей три символа, которые должны быть присвоены в качестве значений переменным CH1, CH2, CH3 и нажимает в конце клавишу Enter. В результате первый символ будет присвоен переменной CH1, второй — CH2, третий — CH3.

Примечание. Если при вводе значений переменных символьного типа, упоминающихся в списке переменных оператора ввода, разделить их пробелом или нажатием клавиши Enter, то переменные получат неверные значения. Так ASCII-кодом символа, присвоенного второй переменной в списке, будет совпадать с кодом #32 или #13, т.е. с ASCII-кодом символа пробела или клавиши Enter соответственно и т.д.

Рассмотрим примеры ввода числовых значений переменных для присвоения их переменным A, B, C.

Пример 1. Если записан один оператор ReadLn(A,B,C), то пользователь или вводит, разделяя пробелом, значения, которые должны быть присвоены переменным A, B, C в одной строке (в том же порядке как они перечислены в списке имен переменных оператора ReadLn), а затем нажимает клавишу Enter, или после набора каждого значения нажимает клавишу Enter (тем самым, вводя каждое значение в отдельной строке).

Примечание. Если при вводе, когда требуется ввести число, попытаться ввести число в неправильном числовом формате (например, стоит запятая вместо десятичной точки в вещественном числе), или букву, или специальный символ, то компилятор прервет выполнение программы и выдаст следующее сообщение об ошибке: “Error #106: Invalid numeric format” (т.е. неправильный числовой формат).

Пример 2. Если записаны три оператора ReadLn(A); ReadLn(B); ReadLn(C), то после набора каждого значения необходимо нажимать клавишу Enter.

Пример 3. Если записаны три оператора Read(A); Read(B); Read(C), то действия такие же как и в примере 1, только после ввода значения переменной С курсор не перейдет на новую строку, а останется справа сразу после значения, которое было введено для назначения его переменной С.

Примечание. Оператор ReadLn без списка имен переменных можно использовать для организации задержки в работе программы до нажатия клавиши Enter.

Стандартный вывод выполняется в предопределенный текстовый файл с именем OutPut, который по умолчанию связан с дисплеем. Для стандартного вывода информации используется встроенные процедуры: Write [(список_выражений)] и WriteLn [(список_выражений)], — где список_выражений состоит из выражений (в частном случае, переменных и констант), разделенных запятой. Процедуры вывода позволяют выводить значения выражений (в том числе и переменных) типа Real, Integer, Char, Boolean и строковые константы. Окончание имени Ln означает, что после ввода или вывода курсор переходит в начало следующей строки, иначе он остается справа от выведенного значения.

Примеры различной организации вывода значений переменных А,В,С, при А=50, В=100, С=150:

1) Write(A,B,C); Результат на экране: 50100150

2) WriteLn(A,' ',B,' ',C); Результат на экране: 50 100 150

3) WriteLn('Значение переменной А=',A);

WriteLn('Значение переменной В=',В);

WriteLn('Значение переменной С=',С); Результат на экране:

Значение переменной А=50

Значение переменной В=100

Значение переменной С=150

Примечание. Оператор WriteLn без списка вывода можно использовать для пропуска строки. Несколько таких операторов обеспечат вывод группы пустых строк.

Помимо стандартного формата вывода данных, который определен по умолчанию для данных стандартных типов, можно задавать свой формат вывода для каждого данного, путем указания ширины поля вывода и точности представления для вещественных чисел. Для организации форматного вывода на экран значений переменных в языке Паскаль существуют следующие средствами управления печатью. Для этого элементы списка выражений процедуры вывода должны иметь вид: выражение [: ширина_поля[: точность]], где ширина поля — это выражение целого типа, определяющее ширину поля вывода; точность — это выражение целого типа, определяющее точность представления вещественного числа (точность используется только при выводе значений выражений вещественного типа).

Ширина поля вывода — целая величина, указываемая через двоеточие после соответствующего выражения в операторе вывода, определяющая, сколько позиций приходится на вывод значения данного выражения. При этом выводящиеся значения центрируются по правому краю, а слева значения дополняются пробелами до ширины поля;

Точность представления вещественного числа — целая величина, указываемая через двоеточие после ширины поля, которая задает, сколько десятичных знаков выводить после десятичной точки у значения выражения вещественного типа. Если точность указана, то вещественное число выводится на экран в формате с фиксированной запятой, в противном случае — в формате с плавающей запятой (в экспоненциальной форме).

Задача 1. Составить программу подсчета периметра прямоугольника.

Program Perimetr_Rectangl;

Var A, B, P: Integer; {описание переменных A, B и P,

т.е. под каждую из этих переменных

резервируется область оперативной памяти,

необходимая для хранения данных целого типа

Integer. Присвоение такой переменной где-

нибудь в программе значения какого-нибудь

другого типа будет считаться ошибкой. При

этом компилятор выдаст сообщение Error #26:

Type mismatch. (т.е. несоответствие типов)}

Begin

A:=5; {переменной А присваивается значение 5}

B:=21; {переменной В присваивается значение 21}

P:= (A+B)*2; {В этой строке сначала вычисляется значение

суммы A+B, затем оно умножается на 2 и полученное значение присваивается переменной P}

Write (P) {вывод значения переменной Р на экран дисплея}

end.

Задача 2. Составить программу, организующую ввод с клавиатуры данных символьного, целого и вещественного типов (по два каждого типа) и форматированный вывод, введенных данных, на экран дисплея, снабдив распечатки соответствующими заголовками.

Program Format_OutPut; {программа иллюстрирующая вывод данных }

Var R, S: Real; { описание переменных }

I, J: Integer;

C, D: Char;

B: Boolean;

Begin

B:=False;

Write(‘Ввести сначала два символа, затем вещественное и

целое число: ’);

Read (C, D, R, I); { ввод значений переменных }

ReadLn(J, S);

{организация форматированного вывода результатов на экран}

WriteLn(‘Вывод вещественных чисел в стандартном формате’);

WriteLn (R, S);

WriteLn(‘Форматный вывод вещественных чисел с шириной поля 7, и точностью 2’);

WriteLn (' R= ', R:7:2, ' и S= ', S:7:2);

WriteLn(‘Форматный вывод вещественных чисел с шириной поля 10, и точностью 1’);

WriteLn (' R= ', R:10:1, ' и S= ', S:10:1);

WriteLn(‘Вывод целых чисел в стандартном формате’);

WriteLn (I, J);

WriteLn(‘Форматный вывод целых чисел с шириной поля 10’);

WriteLn (' I= ', I:10, ' и J= ', J:10);

WriteLn(‘Форматный вывод целых чисел с шириной поля 4’);

WriteLn (' I= ', I:4, ' и J= ', J:4);

WriteLn(‘Вывод символов в стандартном формате’);

WriteLn (С, D);

WriteLn(‘Форматный вывод символов с шириной поля 2’);

WriteLn (' C= ', C:2, ' и D= ', D:2);

WriteLn(‘Форматный вывод значения булевской переменной с шириной поля 10’);

WriteLn (' B= ', B:10)

end.

Задача 3. Составить программу вычисления значения функции

Y(X)= arcsin(0.5sin())/arcctg(|X|)+ lg8(2X+X2+|X+1|X

в точке Х и вывести на экран True, если точка (X; Y) принадлежит области D на рисунке 1, и False в противном случае. Значение Х вводится с клавиатуры.

Решение. В языке Паскаль нет стандартных встроенных функций для вычисления значений arcsinX, arccosX, arcctgX, логарифмов с произвольным основанием и показательной функции с произвольным основанием. Однако их можно выразить через имеющиеся в языке Паскаль функции, пользуясь следующими математическими формулами:

; ;

; ;

Пользуясь последними соотношениями, легко получаем следующую формулу для вычисления заданной функции. (Для сохранения значения аргумента функции арксинус используется вспомогательная переменная Y1. Это сделано для сокращения записи.)

Y1:=0.5*Sin(Sqrt(Abs(X+Exp(1/5*Ln(X)))));

Y:=Arctan(Y1/Sqrt(1-Sqr(Y1)))/ {Окончательное значение арксинуса}

Arctan(1/(Abs(X)))+ {Вычисление арккотангенса}

Exp(8/Ln(10)*Ln({Возведение в восьмую степень}

Exp(X*Ln(2)) {Вычисление 2Х}

+Sqr(X) {Вычисление Х2}

+Exp(X*Ln(Abs(X+1))) {Вычисление |X+1|X}

) {Закрывающая скобка аргумента Ln}

) {Закрывающая скобка аргумента Exp}

Для ответа на вопрос: принадлежит ли точка (X, Y) заштрихованной области на рисунке 1, необходимо получить систему неравенств соответствующую этой области. Ясно, что такой системой будет, например, следующая система неравенств

Ей соответствует выражение (Y>=0)and(Sqr(X)+Sqr(Y)<=225)and (Y<=15-X), типа Boolean, значение которого присвоим переменной B. Тогда программа будет иметь следующий вид.

Program F_Example;

Var X,Y,Y1:Real; B:Boolean; {Y1 — вспомогательная переменная}

Begin

Write('Введите значение X= ');Read(X);{Ввод значения переменной X}

Y1:=0.5*Sin(Sqrt(Abs(X+Exp(1/5*Ln(X)))));

Y:=Arctan(Y1/Sqrt(1-Sqr(Y1)))/Arctan(1/(Abs(X)))+

Exp(8/Ln(10)*Ln(Exp(X*Ln(2))+Sqr(X)+Exp(X*Ln(Abs(X+1))));

WriteLn('Y= ',Y);

B:=(Sqr(X)+Sqr(Y)<=225) and (Y>=0) and (Y<=15-X);

WriteLn(’Высказывание “Точка (’, X:5:2,

’;’, Y:5:2, ’)” является ’,B);

end.

Результат работы программы:

Введите значение Х=0.1 Y=1.32430147063569E+0001

Высказывание “Точка (0.10; 13.24) ” является True

Введите значение Х=1 Y=2.68864950159099E+0002

Высказывание “Точка (1.00; 268.86) ” является False

Контрольные вопросы

1. Какие символы используются в языке Паскаль?

2. Что такое "служебное слово"?

3. Для чего предназначено "имя" и как оно записывается?

4. Как описываются переменные?

5. Перечислите разделы программы и служебные слова, относящиеся к ним.

6. С чего начинается основная часть программы?

7. В каком виде оформляется комментарий?

8. Как записывается оператор вывода?

9. Что представляют собой форматы вывода?

10. Почему и как возникло широко используемое представление чисел в форме с плавающей точкой? Перечислить достоинства и недостатки такой формы представления чисел.

11. В каком виде выводятся данные, если в операторе вывода форматы не указаны?

12. Как организовать вывод пустых позиций внутри строки между данными?

13. Как организовать вывод текстовых сообщений?

14. Как записывается оператор ввода?

15. Может ли константа быть параметром оператора ввода?

16. Как записывается оператор присваивания?

17. Что понимается под составным оператором? Что такое пустой оператор?

18. Чем заканчивается программа?

19. Как описываются переменные целого типа?

20. Каков диапазон значений данных целого типа?

21. Какие операции можно осуществлять над переменными целого типа?

22. Как описываются переменные вещественного типа?

23. Каков диапазон значений данных вещественного типа?

24. Какие операции можно осуществлять над переменными вещественного типа?

25. Как описываются переменные логического типа?

26. Каков диапазон значений данных логического типа?

27. Какие операции можно осуществлять над данными логического типа?

28. Что понимается под символьными данными?

29. Совместимы ли данные различных типов?

30. Как описываются в программе константы?

31. Какие стандартные функции используются в языке программирования Паскаль?

32. Каковы правила записи арифметических выражений?

33. Укажите порядок выполнения действий в арифметическом выражении.

34. В чем отличие логического выражения от арифметического?

35. Каков порядок выполнения операций в логическом выражении?

Упражнения

1. Переведите следующие дробные числа из формата с фиксированной запятой в формат с плавающей запятой с пятью значащими цифрами в мантиссе и двумя цифрами в экспоненте. Напишите, какова в каждом случае величина погрешности округления. а) 2.718281828;

2. б) 0.00035716; в) -0.45359237; г) 101325.); д) -133.32238; е) 100000.0.

3. Переведите следующие дробные числа из формата с плавающей запятой в формат с фиксированной запятой: а) 1.0737Е+09; б) 6.1803Е-01; в) -8.8542Е-12.

4. Считая, что А = 1.0000Е+04, В = 3.0000Е-01, С = 3.0004Е-01, выполните ниже приведенные, вычисления и определите погрешность в каждом случае путем сравнения с результатами аналогичных расчетов в формате с фиксированной запятой: а) А + В; б) В - С; в) А + В + С; г) С + В + А; д) А * С + В; е) А / С + В.

5. Переменная Х равна 147.25. Какая последовательность символов будет выведена на экран при выполнении следующих операторов: а) Write(X:12:4); б) Write(X/2:5:1); в) Write(-X:2:2); г) Write(X:14); д) Write(3.0*X:10); е) Write(X+10.0:1).

6. Переменная Х равна -230.258093. Запишите операторы Паскаля, выводящие ее значение в следующих форматах: а) ÿÿ-230.2581; б) ÿÿ-2.3026Е+02; в) -2.30258093Е+02; г) -230.26.

7. Допустимы ли следующие идентификаторы в программе на языке программирования Паскаль? Для тех, которые недопустимы, ответьте - почему? а) Findnewtime; б) Case; в) Process-One-Person; г) TestValue; д) 2overX; е) grand total.

8. Вычислите значения следующих выражений, если А, В. и С равны соответственно 4, 6 и 7: а) A*B-30 div C; б) A+4*B-2*C div 5; в) A*B mod 3 = 0; г) A+B*C = A*B+C.

9. Предположим, что I — переменная типа Integer, равная 5, R — переменная типа Real, равная 1.3, B — переменная типа Boolean. Для тех из ниже перечисленных операторов присваивания, которые являются допустимыми, определить присваиваемое значение, для прочих объяснить, почему они недопустимы: а) R:=2*I+1; б) I:=2*R+1; в) R:=Trunc(R+2); г) I:=Round(R+2); д) R:=Trunc(1-3*R); е) R:=Round(R-1); ж) B:=R>4*I; з) B:=R<10.

10. Определить результат логического выражения (A>3) and (B=A+6) or not (C=4) при A=2, B=8, C=5.

11. Определить, при каких значениях А и В результат операции (А>10) or (В<3) будет истинным и будет ложным.

12. Определить, при каких значениях А и В результат операции (А>10) and (В<3) будет истинным и будет ложным.

Задания

1. Составить и выполнить программу вычисления площади треугольника по формуле Герона.

2. Составить и выполнить программу, меняющей местами значения переменных Х и У с использованием промежуточной переменной.

3. Составить и выполнить программу нахождения суммы цифр заданного трехзначного числа.

4. Составить и выполнить программу, которая вычисляет сопротивление двух электрических цепей, состоящих из резисторов R1 и R2, соединенных соответственно последовательно и параллельно.

5. Составить и выполнить программу, которая вычисляет периметр треугольника, заданного координатами своих вершин (Х1, У1), (Х2, У2), (Х3, У3).

6. Составить и выполнить программу, которая вводит два вещественных числа, вычисляет и печатает коэффициенты приведенного квадратного уравнения, корнями которого являются эти числа.

7. Составить и выполнить программу определения времени приземления самолета в часах, минутах и секундах, если известно время взлета (часы, минуты, секунды) и продолжительность полета в секундах. Учесть возможный переход на другие сутки.

8. Составить и выполнить программу, которая определяет произведение цифр заданного четырехзначного числа.

9. Составить и выполнить программу, которая для треугольника, заданного величинами своих углов и радиусом описанной окружности, находит его стороны.

10. Составить и выполнить программу, которая для данной величины А, не используя никаких функций и никаких операций кроме умножения, вычисляет А15 за пять операций.

11. Составить и выполнить программу, которая определяет, равен ли квадрат заданного трехзначного числа кубу суммы цифр этого числа.

12. Составить и выполнить программу, которая, не используя другие арифметические операции, кроме сложения и умножения, вычисляет 1+2Х+3Х2+4Х3 не более, чем за восемь операций.

13. Составить и выполнить программу, которая вычисляет значение производной функции ХХ в заданной точке А (А>0).

14. Часовая стрелка образует угол c с лучом, проходящим через центр и через точку, соответствующую 12 часам на циферблате, 0<c£2p. Составить и выполнить программу, которая определяет значение угла для минутной стрелки, а также количество часов и полных минут.

15. Даны целые числа Н и М (0<Н£12, 0£М<60), указывающие момент времени "Н часов, М минут". Составить и выполнить программу, которая определяет наименьшее время (число полных минут) до момента совпадения на циферблате часовой и минутной стрелок, до момента, когда они расположатся перпендикулярно друг другу.

16. Составить и выполнить программу, меняющей местами значения переменных Х и У без использования промежуточной переменной.

17. Составить и выполнить программу, которая выводит True или False в зависимости от того, имеют три заданных целых числа одинаковую четность или нет.

18. Составить и выполнить программу, которая для заданных чисел Р, А и В (А<В) определяет, имеет ли уравнение Arctg (2Х-½Р½)= корень на отрезке [А, В].

19. Составить и выполнить программу, которая определяет, может ли конь на шахматной доске, координаты которого даны как целые числа от 1 до 8, за один ход прейти на другое поле, также определяемое двумя целыми числами того же диапазона.

20. Камень падает в шахту и через время Т0 =6с слышен звук удара камня о дно шахты. Составить и выполнить программу, которая определяет глубину шахты (сопротивлением воздуха пренебречь, ускорение свободного падения считать равным 10 м/с2, ответ указать с ошибкой 1м).

 


<== предыдущая | следующая ==>
Война всех против всех (верный ответ) | Методы оценки основных фондов

Date: 2015-06-05; view: 968; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию