Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика в задачах, примерах, алгоритмах

.pdf
Скачиваний:
0
Добавлен:
11.08.2026
Размер:
652 Кб
Скачать

4. Линейные программы

131. По заданной длине à сторонам правильного n-угольника найти величину его внутреннего угла, площадь, радиусы вписанной и описанной окружностей. (Радиусы описанной R и вписанной r окружностей вычисляются по формулам:

R =

a

;

r =

a

,

 

 

 

 

2Sin

180

2tg

180

 

n

 

 

n

 

 

 

 

 

 

 

площадь треугольника по трем сторона можно вычислить по формуле Герона:

S = p(p a)(p b)(p c)

ãäå p = 12 (a + b + c).

Для того, чтобы перевести значение углов из градусов в радиа-

ны, необходимо величину угла в градусах умножить на число π , 180

ãäå π = 3,141592654.) Ответ: Ïðè n = 6 è a = 1

внутренний угол равен 120°; R = 1; r = 0866 025 4 площадь равна 2,598076.

132. Даны две прямые y = k1 x + b1 , y = k2 x + b2 . Найти координаты точки пересечения. (Точка пересечения P(x p , y p ) принадлежит обеим прямым, т.е. является решением этой системы уравнения.)

Ответ: Ïðè k1 = 2,057, b1 = 89, k2 = 0,0073, b2 = 21,0753 x p = −33,13885, y p = 20,83339.

133. По заданным сторонам à, b, c треугольника найти его углы. Выразить углы в градусах и радианах. (Можно воспользоваться

теоремой косинусов: a 2

= b 2

+ c 2 2bcCos α и соотношением ме-

 

 

 

 

 

 

æäó cos è tg: tgα =

1

cos 2

α

 

 

 

 

), т.к. для вычисления углов можно

 

cos α

 

 

 

 

 

использовать только одну функцию ATN()-арктангенс. АTN возвращает угол в радианах. Для перевода в градусы необходимо по-

лученное значение разделить на число π . 180

41

Информатика в задачах, примерах, алгоритмах

Ответ: Ïðè a = 3, b = 4, c = 5 получаются следующие значения углов:

α

= 36,869 897 3°

β

= 53,130 101 77°

γ

= 90,000 002 49°

134. Вычислить расстояние l м от наблюдателя, находящегося на высоте h м от поверхности земли, до линии горизонта. Радиус Земли R принять равным 6380 км. (Расстояние можно рассчитать

по формуле: l = (R + h)2 .)

Ответ: Ïðè h = 10 ì l = 11293,02 ì.

135. Дано количество суток n. Посчитать число часов h, минут M и секунд s в данном количестве суток. Использовать только одну переменную.

Ответ: Ïðè n = 92 h = 2 208, M = 132 480, s = 7 948 800.

5. Условный оператор

Условный оператор проверяет выполнение некоторого условия при помощи (посредством) операций сравнения или знаков булевой операции. Члены операции должны быть одного типа.

Операция сравнения

Знак операции

 

 

Равно

=

 

 

Не равно

<>

 

 

Меньше

<

 

 

Больше

>

 

 

Меньше или равно

<=

 

 

Больше или равно

>=

 

 

42

 

5. Условный оператор

 

 

 

 

Булева операция

Оператор

 

 

Отрицание

NOT

 

 

Конъюнкция (логическое “И”)

AND

 

 

Дизъюнкция (включающее “Или”)

OR

 

 

Исключающее “Или”

XOR

 

 

Эквивалентность

EQV

 

 

Импликация

IMP

 

 

Каждая булева операция возвращает результат в соответствии с таблицей истинности.

И — истина, Л — ложь.

Выражение1

Выражение2

NOT

AND

OR

XOR

EQV

IMP

 

 

 

 

 

 

 

 

È

È

Ë

È

È

Ë

È

È

 

 

 

 

 

 

 

 

È

Ë

Ë

Ë

È

È

Ë

Ë

 

 

 

 

 

 

 

 

Ë

È

È

Ë

È

È

Ë

È

 

 

 

 

 

 

 

 

Ë

Ë

È

Ë

Ë

Ë

È

È

 

 

 

 

 

 

 

 

В задачах 136—178 необходимо составить программу, которая отвечает на поставленный в задаче вопрос.

Пример. На овощную базу привезли помидоры: в первый день 8 машин по a ящиков в каждой; во второй день 6 машин по b ящиков в каждой. В какой день привезли помидоров больше?

Возможный вариант программы:

QBasic

CLS 'очищаем экран дисплея

DIM P1,P2,a,b AS INTEGER 'Определяем переменные как 'целые

PRINT “Сколько ящиков в машине?”

INPUT “ в первый день ”, a 'вводим êîë-âî ящиков INPUT “ во второй день ”, b ' в машине

43

Информатика в задачах, примерах, алгоритмах

'подсчитываем кол-во ящиков в 1-й и 2-й дни

P1 = 8*a

P2 = 6*b

' Проверяем условие

IF P1>P2 THEN

PRINT “В первый день помидоров привезли больше” ELSE

PRINT “Во второй день помидоров привезли больше” ENDIF 'Конец условного оператора

END

Задачи

136.Петя встал утром в 7 часов, Коля — на 13 минут раньше него, Сережа на 4 минуты позже Коли, а Саша встал на 10 минут позже Сережи. Кто встал раньше, Петя или Саша?

Ответ: Саша.

137.У Сережи 145 рублей. Он решил купить 3 блокнота по 48 рублей. Хватит ли денег на покупку?

Ответ: Хватит.

138.Ребята собрали в саду 875 кг яблок и упаковали их в ящики по 25 кг в каждом. Хватило ли им 40 ящиков?

Ответ: Хватило.

139.Из куска ткани можно сшить 17 детских плащей, расходуя на каждый 2 м ткани. Можно ли из этого куска сшить 8 плащей для взрослых, расходуя по 4 м ткани на каждый плащ?

Ответ: Да.

140.В коробке 3 кг лимонов и апельсинов. Лимоны вынули и взвесили отдельно. Их масса оказалась 1 кг 760 г. Каких цитрусовых больше и на сколько?

Ответ: Лимонов, на 520 г.

141.Валя взяла у подруги книгу на 3 дня. В первый день она про- читала A страниц, во второй день прочитала в B раз больше, чем в первый, в третий день она прочитала на C страниц меньше, чем во второй. Успела ли Валя прочитать книгу вовремя, если в книге 194 страницы? Решить задачу при следующих значениях переменных:

a)A = 28, B = 3, C = 25;

Ответ: Нет.

b) A = 30, B = 3, C = 16.

Ответ: Успела.

44

5. Условный оператор

142. Мотоциклист должен прибыть в город через T часов после выезда из пункта, находящегося на расстоянии S км от города. Успеет ли он вовремя прибыть в город, если в первый час он проедет A км, а все оставшееся время будет ехать со скоростью B км/ч? Решить задачу при следующих значениях переменных:

a)T = 4, S = 320, A = 75, B = 70;

Ответ: Нет, не успеет.

b)T = 5, S = 300, A = 65, B = 60.

Ответ: Да, успеет.

143.В театр пришло A зрителей. Из них B человек купили билеты по 30 рублей, остальные — по 20 рублей. Получит ли театр прибыль, если расходы на спектакль составили Z рублей? Решить задачу при следующих значениях переменных:

a)A = 800, B = 300, Z = 15000;

Ответ: Да, получит.

b)A = 600, B = 100, Z = 15000.

Ответ: Нет, не получит.

144.Расстояние между городами А и Á равно S. Из города À â ãî-

ðîä Á выехал велосипедист со скоростью V1, через T часов вслед ему выехал 2-й велосипедист со скоростью V2. Догонит ли 2-й велосипедист 1-го, прежде чем тот доедет до города Á? Решить зада- чу при следующих значениях переменных:

a)S = 50, V1 = 12, V2 = 16, T = 2;

Ответ: Нет, не догонит.

b) S = 50, V1 = 12, V1 = 16, T = 1.

Ответ: Догонит и даже перегонит.

145.Даны два числа. Вывести их на экран дисплея в порядке возрастания.

146.Даны два числа. Вывести на экран первое число, если оно больше второго, и оба числа, если это не так.

147.Даны два числа. Меньшее из этих чисел заменить их полусуммой, а большее — удвоенным произведением.

148.Даны два числа. Заменить второе число нулем, если оно не меньше первого, и оставить его прежним, если это не так. Первое число оставить без изменения.

149.Даны три числа. Возвести в квадрат отрицательные числа. Положительные числа оставить без изменений.

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

45

Информатика в задачах, примерах, алгоритмах

151.Составить программу, находящую максимальное число из че- тырех заданных.

152.Даны четыре числа. Найти разницу между максимальным и минимальным числами.

153.Определить принадлежность точки кругу с радиусом R с

центром в начале координат. (Уравнение окружности с центром в

начале координат R 2 = x 2 + y 2 . Точка на плоскости определена своими координатами: A(xa , ya ). Точка принадлежит кругу (то есть находится внутри круга с радиусом R или находится на окружно-

сти), если выполняется следующее условие: x 2 + y 2 R2 .)

a)R = 5, xa = 2,47, ya = 2,28;

Ответ: Принадлежит.

b)R = 3,28, xa = 2,47, ya = 2,28.

Ответ: Не принадлежит.

154.Определить принадлежность точки C (xa , ya ) заданному отрез-

êó A(xa , ya ) B(x b

, y b ). (Точка C принадлежит заданному отрезку

[A,B], åñëè xa xc

x b è ya yc y b è xc è yc удовлетворяют урав-

нению прямой, проходящей через точки A и B.)

a)A (–1, 0), B (2, 3), C (0, 1);

Ответ: Принадлежит.

b)A (–2, –1), B (1, 2), C (–0,5, 0,7);

Ответ: Не принадлежит.

155.Определить, в какой четверти лежит точка с координатами (x, y).

a)(–0,00089, 63);

Ответ: II четверть.

b)(2,3458, –0,000015) Ответ: IV четверть.

156.Даны три числа. Выяснить, существует ли треугольник с такими сторонами. (Условие существования треугольника следующее: сумма любых двух сторон треугольника должна быть больше третьей стороны.)

a)3, 4, 5;

Ответ: Существует.

b)10, 8, 3. Ответ: Существует.

c)1, 2, 3.

Ответ: Не существует.

46

5. Условный оператор

157. Две точки A(x a , ya ), B (xb , yb ) заданы своими координатами.

Выяснить, лежат ли они на одной окружности с центром в начале координат. (Условие того, что две точки лежат на одной окружности, следующее: (xa2 + ya2 ) = (x b2 + y b2 ).)

à) A (2,475, 7,8506), B (7,655279, 3,0256);

Ответ: Лежат на одной окружности.

b) A (86,09801, 149,0034), B (172,0897, 0,00097);

Ответ: Лежат на одной окружности.

ñ) A (6,2548, 18,39482), B (–245,001, –3,25).

Ответ: Не лежат на одной окружности.

158.Даны три числа: a, b, c. Выяснить, выполняется ли условие a < b < c.

159.Числовая прямая разбита на отрезки числами A1, A2, A3, ..., An. Определить, какому отрезку принадлежит заданная точка x.

Ответ:

A1

A2

A3

A4

õ

Ответ

 

 

 

 

 

 

–127

–68

–3

45

–24,65

–68, –3

 

 

 

 

 

 

2

45

0

28

10

2, 28

 

 

 

 

 

 

0,5687

–56,5871

124,06

–9,687

0,4987

–9,687, 0,5687

 

 

 

 

 

 

160. Определить, какая из двух точек A(x a , ya ), B (xb , yb ) находит-

ся ближе к окружности с радиусом R c центром в начале координат. (Можно воспользоваться следующим соотношением: та точка находится ближе к окружности с радиусом R, для которой разность (xi2 + yi2 ) R 2 меньше.)

Ответ:

xà

yà

xb

yb

R

Ответ

 

 

 

 

 

 

–127

–68

–3

45

24,65

B

 

 

 

 

 

 

2

45

0

28

10

B

 

 

 

 

 

 

256

–5

84

15

45

B

 

 

 

 

 

 

0,5687

–56,5871

124,06

–9,687

0,4987

A

 

 

 

 

 

 

161. Даны две окружности с радиусами R1 и R2 с центрами в точ- ках (x1, y1) и (x2, y2). Определить характер их расположения: пересекаются, касаются, не пересекаются.

47

Информатика в задачах, примерах, алгоритмах

Для решения задачи можно воспользоваться следующими соображениями: если расстояние между этими точками

x1 x 22 + y1 y 22

больше суммы радиусов, то окружности не пересекаются. Если расстояние равно сумме радиусов, то окружности касаются. Если расстояние меньше суммы радиусов, то окружности пересекаются.

Ответ:

x1

y1

x2

y2

R1

R2

Ответ

–127

–68

–3

45

24,65

38

ÍÏ

2

45

0

28

10

15,25

Ï

256

–5

84

15

45

5,6

ÍÏ

0,5687

–56,5871

124,06

–9,687

0,4987

87

ÍÏ

15

15

30

30

12

10

Ï

2,458

25,657

5,568

12,5848

9,689

3,748

Ê

Обозначения: НП — не пересекаются; П — пересекаются;

Ê— касаются.

162.Даны два числа — x è y. Вычислить:

a ) z = x — y, åñëè x > y, z = y — x + 1 в противном случае;

Ответ:

x

y

z

–127

–68

–194

2

45

44

256

–5

261

0,5687

–56,5871

57,1558

15

15

1

2,458

25,657

24,199

 

 

 

b ) z = 13,8, если x > y, z = 20,0 в противном случае.

Ответ:

x

y

z

–127

–68

20

2

45

20

256

–5

13.8

0,5687

–56,5871

13,8

15

15

20

2,458

25,657

20

48

 

 

 

 

 

5. Условный оператор

 

163. При выполнении условия x — y < 0 вычислить

 

z = (x + y)/ 2 + 1,

 

 

в противном случае проверить условие

x — y = 0, è åñëè îíî

выполняется, вычислить

z = ( x + y)/2,

в противном случае

z = 3,2.

 

 

 

 

Ответ:

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

y

 

z

 

 

 

 

 

 

 

 

 

–127

 

–68

 

96.5

 

 

 

 

 

 

 

 

 

2

 

45

 

24.5

 

 

 

 

 

 

 

 

 

256

 

–5

 

3.2

 

 

 

 

 

 

 

 

 

0,5687

 

–56,5871

 

3,2

 

 

 

 

 

 

 

 

 

15

 

15

 

15

 

 

 

 

 

 

 

 

164. Даны два числа — x è y. Переменной m присвоить значе- ние 1, если x < y, è –1, åñëè x > y.

Ответ:

x

y

M

 

 

 

–127

–68

1

 

 

 

2

45

1

 

 

 

256

–5

–1

 

 

 

0,5687

-56,5871

–1

 

 

 

15

15

–1

 

 

 

165. Даны два числа — x è y. Переменной r присвоить значение 1, если x < y; 0, åñëè x = y, è —1, åñëè x > y.

Ответ:

x

y

M

 

 

 

–127

–68

1

 

 

 

2

45

1

 

 

 

256

–5

–1

 

 

 

0,5687

–56,5871

–1

 

 

 

15

15

0

 

 

 

49

Информатика в задачах, примерах, алгоритмах

Дано действительное число x. Вычислить y:

166.

 

 

x2,

 

 

åñëè 2

x

2;

y =

 

 

 

 

 

 

 

 

 

 

 

x + 1,

в противном случае

Ответ:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

–35

 

 

 

–34

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

–1,3589

 

 

 

1,8466092

 

 

 

 

 

 

 

 

 

 

 

167.

 

 

 

x 2

+ 4x + 5,

åñëè x

2;

 

 

 

 

 

y =

 

 

1

,

в противном случае

 

 

 

 

x 2

+ 4x + 5

Ответ:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

–35

 

 

 

1090

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,078

 

 

 

 

0,05672123

168.

 

 

 

 

 

 

 

 

 

 

0,

 

 

åñëè x < 0;

 

y =

 

x,

 

 

åñëè 0

x

1;

 

 

 

x2,

 

 

åñëè x > 0

 

Ответ:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

y

 

 

 

 

 

–35

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,078

 

 

 

 

4,318084

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,273

 

 

 

 

0,273

 

 

 

 

 

 

 

 

 

 

169.

 

 

0,

 

 

åñëè x

0;

 

y =

 

 

x 2 ,

åñëè 0 < x < 1;

 

 

 

 

x 2

1,

в других случаях

50

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]