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

Ответ: 5.

Ответ: 5

198. Сотрудник ме­те­о­бю­ро в ходе из­ме­ре­ний сред­не­су­точ­ной тем­пе­ра­ту­ры за­пи­сы­вал по­ка­за­ния тер­мо­мет­ра в таб­ли­цу Tem (Tem[1] — температура, по­лу­чен­ная в ре­зуль­та­те пер­во­го измерения, Tem[2] — вто­ро­го и т. д.).

Определите, какое число будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей программы. Текст про­грам­мы приведён на трёх язы­ках программирования.

Алгоритмический язык

Бейсик

Паскаль

алг

нач

цел­таб Tem[1:12]

цел k, b

b := 15

Tem[1] := 22; Tem[2] := 25

Tem[3] := 20; Tem[4] := 18

Tem[5] := 16; Tem[6] := 14

Tem[7] := 20; Tem[8] := 23

Tem[9] := 17; Tem[10] := 19

Tem[11] := 20; Tem[12] := 21

нц для k от 1 до 12

если Tem[k] < 20 то

b := b + 1

все

кц

вывод b

кон

DIM Tem(12) AS INTEGER

DIM k, b AS INTEGER

b = 15

Tem(1)= 22: Tem(2)= 25

Tem(3)= 20: Tem(4) = 18

Tem(5)= 16: Tem(6)= 14

Tem(7)= 20: Tem(8)= 23

Tem(9)= 17: Tem(10)= 19

Tem(11)= 20: Tem(12)= 21

FOR k = 1 TO 12

IF Tem(k) < 20 THEN

b = b + 1

END IF

NEXT k

PRINT b

Var k, b: integer;

Tem: array[1..12] of integer;

Begin

b := 15;

Tem[1] := 22; Tem[2] := 25;

Tem[3] := 20; Tem[4] := 18;

Tem[5] := 16; Tem[6] := 14;

Tem[7] := 20; Tem[8] := 23;

Tem[9] := 17; Tem[10] := 19;

Tem[11] := 20; Tem[12] := 21;

For k := 1 to 12 Do

If Tem[k] < 20 Then

b := b + 1;

Writeln(b);

End.

Пояснение.

НЕ нашли? Не то? Что вы ищете?

Программа даёт на выходе 15 плюс число дней, в которых температура была менее 20 градусов. Про­ана­ли­зи­ро­вав входные данные, при­хо­дим к выводу, что от­ве­том является число 20.

Ответ: 20.

Ответ: 20

199. В таб­ли­це Dat хра­нят­ся дан­ные о ко­ли­че­стве дет­ских праздников, ко­то­рые про­во­ди­ло кафе за по­след­ний год (Dat[1] — ко­ли­че­ство дет­ских празд­ни­ков в январе, Dat[2] — ко­ли­че­ство празд­ни­ков в фев­ра­ле и т. д.). Определите, что будет на­пе­ча­та­но в ре­зуль­та­те вы­пол­не­ния сле­ду­ю­ще­го алгоритма, за­пи­сан­но­го на трёх ал­го­рит­ми­че­ских языках.

Алгоритмический язык

Бейсик

Паскаль

алг

нач

целтаб Dat[1:12]

цел к, m, month

Dat[1] := 2

Dat[2] := 8

Dat[3] := 6

Dat[4] := 3

Dat[5] := 8

Dat[6] := 2

Dat[7] := 3

Dat[8] := 7

Dat[9] := 8

Dat[10] := 3

Dat[11] := 8

Dat[12] := 7

month:=1; m := Dat[1]

нц для к от 8 до 12

если Dat[к] > m то

m:= Dat[k]

month := k

все

КЦ

вывод month

КОН

DIM Dat(12) AS INTEGER

Dat[1] = 2

Dat[2] = 8

Dat[3] = 6

Dat[4] = 3

Dat[5] = 8

Dat[6] = 2

Dat[7] = 3

Dat[8] = 7

Dat[9] = 8

Dat[10] = 3

Dat[11] = 8

Dat[12] = 7

month = 1: m = Dat(1)

FOR k = 8 TO 12

IF Dat(k) > m THEN

m = Dat(k)

month = k

END IF

NEXT k

PRINT month

END

Var k, m, month: integer;

Dat: array[1...12] of integer;

Begin

Dat[1] := 2

Dat[2] := 8

Dat[3] := 6

Dat[4] := 3

Dat[5] := 8

Dat[6] := 2

Dat[7] := 3

Dat[8] := 7

Dat[9] := 8

Dat[10] := 3

Dat[11] := 8

Dat[12] := 7

month:=1; m := Dat[1];

for k := 8 to 12 do

if Dat[k] > m then

begin

m:= Dat[k];

month := k;

end;

write(month);

End.

Пояснение.

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

Ответ: 9

200. Владелец круп­но­го яб­ло­не­во­го сада в те­че­ние 12 лет за­пи­сы­вал в таб­ли­цу App ко­ли­че­ство со­бран­но­го урожая. (App[1] — ко­ли­че­ство тонн яблок, со­бран­ных за пер­вый год, App[2] — за вто­рой и т. д.). Определите, какое число будет на­пе­ча­та­но в ре­зуль­та­те ра­бо­ты сле­ду­ю­щей программы. Текст про­грам­мы приведён на трёх язы­ках программирования.

Алгоритмический язык

Бейсик

Паскаль

алг

алг

нач

цел­таб App[1:12]

цел k, m

App[1] := 100; App[2] := 128

App[3] := 80; App[4] := 99

App[5] := 120; App[6] := 69

App[7] := 55; App[8] := 115

App[9] := 84; App[10] := 111

App[11] := 59; App[12] := 100

m := 0

нц для k от 1 до 12

если App[k] > 100 то

m := m + 1

все

кц

m := m + 10

вывод m

кон

DIM App(12) AS INTEGER

DIM k, m AS INTEGER

App(1)= 100: App(2)= 128

App(3)= 80: App(4) = 99

App(5)= 120: App(6)= 69

App(7)= 55: App(8)= 115

App(9)= 84: App(10)= 111

App(11)= 59: App(12)= 100

m = 0

FOR k = 1 TO 12

IF App(k) > 100 THEN

m = m + 1

END IF

NEXT k

m = m + 10

PRINT m

Var k, m: integer;

App: array[1..12] of integer;

Begin

App[1] := 100; App[2] := 128;

App[3] := 80; App[4] := 99;

App[5] := 120; App[6] := 69;

App[7] := 55; App[8] := 115;

App[9] := 84; App[10] := 111;

App[11] := 59; App[12] := 100;

m := 0;

For k := 1 to 12 Do

If App[k] > 100 Then

Begin

m := m + 1;

End;

m : = m + 10;

Writeln(m);

End.

Пояснение.

Программа пред­на­зна­че­на для на­хож­де­ния ко­ли­че­ства лет, в ко­то­рые вла­де­лец со­брал более ста тонн яблок. Таких лет было 4. Учитывая, по­след­нее действие: m : = m + 10, по­лу­ча­ем ответ 14.

Ответ: 14

201. На ри­сун­ке изоб­ра­же­на схема дорог, свя­зы­ва­ю­щих го­ро­да A, B, C, D, E, F, G. По каж­дой до­ро­ге можно дви­гать­ся толь­ко в одном направлении, ука­зан­ном стрелкой. Сколь­ко су­ще­ству­ет раз­лич­ных путей из го­ро­да A в город D?

Пояснение.

Начнем счи­тать ко­ли­че­ство путей с конца маршрута — с го­ро­да D. Пусть NX — ко­ли­че­ство раз­лич­ных путей из го­ро­да А в город X, N — общее число путей.

В D можно при­е­хать из C или E, по­это­му N = ND = NC + NE(*).

Аналогично:

NC = NB + NE = 3 + 2 = 5;

NB = NA + NE = 1 + 2 = 3;

NE = NF + NG = 1 + 1 = 2;

NG = NF = 1;

NF = NА = 1.

Подставим в фор­му­лу (*): N = 5 + 2 = 7.

Ответ: 7.

Ответ: 7

202. На рисунке — схема дорог, свя­зы­ва­ю­щих го­ро­да А, Б, В, Г, Д, Е, Ж и К. По каж­дой до­ро­ге можно дви­гать­ся толь­ко в одном направлении, ука­зан­ном стрелкой. Сколь­ко су­ще­ству­ет раз­лич­ных путей из го­ро­да А в город К?

Пояснение.

Начнем счи­тать ко­ли­че­ство путей с конца маршрута — с го­ро­да К. Пусть NX — ко­ли­че­ство раз­лич­ных путей из го­ро­да А в город X, N — общее число путей.

В К можно при­е­хать из Е, В, Г или Ж, по­это­му N = NК = NЕ + NВ + NГ + NЖ (*).

Аналогично:

NЕ = NВ = 2;

NВ = NА + NБ = 1 + 1 = 2;

NГ = NВ + NА + NД = 2 + 1 + 1 = 4;

NЖ = NГ + NД = 4 + 1 = 5;

NБ = NА = 1;

NД = NА = 1.

Подставим в фор­му­лу (*): N = 2 + 2 + 4 + 5 = 13.

Ответ: 13

203. На ри­сун­ке изоб­ра­же­на схема соединений, свя­зы­ва­ю­щих пунк­ты A, B, C, D, E, F, G, H. По каж­до­му со­еди­не­нию можно дви­гать­ся толь­ко в одном направлении, ука­зан­ном стрелкой. Сколь­ко су­ще­ству­ет раз­лич­ных путей из пунк­та А в пункт H?

Пояснение.

Начнем счи­тать ко­ли­че­ство путей с конца маршрута — с го­ро­да H. Пусть NX — ко­ли­че­ство раз­лич­ных путей из го­ро­да А в город X, N — общее число путей.

В H можно при­е­хать из E или G, по­это­му N = NH = NE + NG.

Из за большого объема этот материал размещен на нескольких страницах:
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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67