Информатика. Курс лекций. Громов Ю.Ю - 139 стр.

UptoLike

напечатать значение переменной Y;
Если параметры передаются по значению, что будет напечатано при выполнении следующего фрагмента программы?
Что будет напечатано, если параметры передаются по ссылке?
X 5;
apply modify to X;
напечатать значение переменной X;
28. Предположим, что процедура modify определена следующим образом:
procedure modify(Y)
Y 9;
напечатать значение переменной X;
напечатать значение переменной Y;
Допустим также, что Xэто глобальная переменная. Если параметры передаются по значению, что будет напечатано
при выполнении следующего фрагмента программы? Что будет напечатано, если параметры передаются по ссылке?
X 5;
apply modify to X;
напечатать значение переменной X;
29. Иногда фактический параметр передается в процедуру путем создания его копии, предназначенной для использова-
ния в процедуре (как если бы параметр передавался по значению), но после выполнения процедуры значение копии при-
сваивается фактическому параметру перед тем, как будет продолжено выполнение вызывающей процедуры. В таких случаях
говорят, что параметр передается по значению-результату. Что будет напечатано фрагментом программы из упражнения 28,
если параметры передаются по значению-результату?
30. Какая неоднозначность кроется в следующем операторе?
X 3 + 2 * 5
31. Предположим, что небольшая компания имеет пять сотрудников и планирует увеличить их число до шести. Ниже
приведены фрагменты из двух эквивалентных программ (используемых компанией), которые нужно изменить, чтобы ото-
бразить изменение количества сотрудников. Обе программы написаны на языке, напоминающем Pascal. Укажите, какие из-
менения следует произвести в каждой программе. Какие осложнения возникают в первой программе и не возникают при
использовании констант во второй программе?
Программа 1
.
.
.
DailySalary := TotalSal / 5;
AvgSalary := TotalSal / 5;
DailySales := TotalSales / 5;
AvgSales := TotalSales / 5;
.
.
.
Программа 2
.
.
.
сonst
NumEmpl = 5;
DayWk= 5;
.
.
.
DailySalary: = TotalSal / DayWk;
AvgSalary := TotalSal / NumEpml;
DailySales := TotalSales / DayWk;
AvgSales := TotalSales / NumEmpl;
.
.
.
32. Нарисуйте синтаксическую диаграмму, представляющую структуру оператора while из псевдокода, описанного в
главе 4.
33. Разработайте совокупность синтаксических диаграмм для описания синтаксиса телефонных номеров, написанных в
формате (044) 555-1234.
34. Разработайте совокупность синтаксических диаграмм для описания простого предложения на английском языке.
35. Напишите предложение, описывающее структуру строки, в соответствии с приведенной ниже синтаксической диа-
граммой. Затем нарисуйте дерево синтаксического анализа строки ххyхх.