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

3_Метод_Часть_2_Разветвл_алгоритм

.pdf
Скачиваний:
42
Добавлен:
28.03.2015
Размер:
1.29 Mб
Скачать

8)Даны целые числа k,m, действительные числа x, y, z. При k < m2 , k = m2 или k > m2 заменить модулем соответственно значения x, y или z, а два других значения уменьшить на 0.5.

9)Дано натуральное число n (n≤100). Определите:

a)Сколько цифр в числе n?

b)Чему равна сумма его цифр?

10)Дано натуральное число n (n≤100).

a)Найти последнюю цифру числа n.

b)Найти первую цифру числа n.

c)В предположении, что n≥10, найти предпоследнюю цифру числа n.

11)Дано натуральное число n (n≤9999). Является ли это число палиндромом (перевертышем) с учетом четырех цифр, как , например,

числа 2222, 6116, 0440 и т.д.?

12)Дано натуральное число n (n≤9999). Верно ли это число содержит три одинаковые цифры, как , например, числа 6676, 4544, 0006 и

т.д.?

13)Даны целые числа k,l. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных, а если равны, то заменить числа нулями.

14)Даны действительные положительные числа x, y (x≠ y). Меньшее из этих двух чисел заменить их полусуммой , а большее – их удвоенным произведением.

15)Даны три действительные числа. Возвести в квадрат те из них, значения которых неотрицательны.

16)Если сумма трех попарно различных действительных чисел x, y, z меньше единицы, то наименьшее из этих трех чисел заменить полусуммой двух других; в противном случае заменить меньшее из x и y полусуммой двух оставшихся значений.

17)Даны действительные числа а, b, с, d. Если а≤ b≤ с≤d, то каждое число заменить наибольшим из них ; если а> b> с> d, то числа

51

оставить без изменения; в противном случае все числа заменяются их квадратами.

18)Даны действительные числа x, y, Если x и y отрицательны, то каждое значение заменить его модулем; если отрицательно только одно из них, то оба значения увеличить на 0.5; если оба значения неотрицательны и ни одно из них не принадлежит отрезку [0.5,2.0], то оба значения уменишить в 10 раз; в остальных случаях x и y оставить без изменения.

19)Даны действительные положительные числа x, y, z. Если существует треугольник, то ответить – является ли он остроугольным.

20)Задано число x. Составьте программу, с помощью которой опреде-

лите, является ли натуральное число х:

a)нечетным;

b)кратным натуральному числу 7;

c)кратным натуральному числу 11.

21)Задано число x. Если оно нечетное, то увеличьте его в два раза, в противном случае уменьшите его два раза.

22)Дана трапеция, стороны которой равны a, b, c, d. Определите, является ли она равнобокой.

23)Четырѐхугольник задан своими сторонами a, b, c, d. Определите, является ли он параллелограммом.

24)Задано трехзначное число x. Составьте программу, с помощью которой определите, равняются ли в нем сумма крайних цифр и средняя цифра.

25)Задано трехзначное число x. Составьте программу, с помощью которой определите, равняются ли в нем произведение первой и третьей цифр и сумма второй и первой цифр.

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

52

27)Задано трехзначное число x. Составьте программу, с помощью которой определите, является ли это число палиндромом. Числапалиндромы читаются слева направо и справа налево одинаково.

28)Задано четырехзначное число x. Составьте программу, с помощью которой определите, является ли это число палиндромом. Если х – палиндром, то увеличьте число х в 2 раза.

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

30)Заданы три числа a, b и с. Составьте программу, с помощью которой определите среднее геометрическое этих переменных, если все они отличны от нуля, и среднее арифметическое в противном случае.

Задание повышенной сложности.

Реймон Кено предложил под названием ―Сказка на ваш вкус‖ приведенный ниже текст. Напишите программу, рассказывающую сказку по желанию читателя, сидящего перед диалоговым терминалом, используя операторы case of и goto. Выполнение программы состоит из таких этапов: программа печатает несколько строк, за которыми следует вопрос (типа ―Предпочитаете, чтобы они спали?‖). Читатель отвечает, набирая на клавиатуре ―Да‖ или ―Нет‖. Тогда программа выбирает продолжение текста в зависимости от этого ответа. (Предусмотрите кроме ―Да‖ и ―Нет‖ еще некоторый код, означающий ―Достаточно‖.)

Сказка на ваш вкус:

1.Хотите ли вы узнать историю трех шустрых горошин? Если да, перейдите к 4, если нет, перейдите к 2.

2.Может быть , вы предпочитаете историю трех длинных жердей? Если да, перейдите к 16, если нет, перейдите к 3.

3.Может быть, вы предпочитаете историю о трех простых скромных кустиках? Если да, перейдите к 17, если нет, перейдите к 21.

4.Жили-были когда-то три маленькие горошины, одетые во все зеленое. Они мирно спали в своем стручке. Личики у них были совсем кругленькие, а маленькие носики тихо и ровно посапывали.

53

Если вы предпочитаете другое описание, перейдите к 9, если вас все устраивает, перейдите к 5.

5.Они не видели снов. Эти маленькие существа вообще никогда не видят снов. Если вы предпочитаете, чтобы они видели сны, перейдите к 6, иначе перейдите к 7.

6.Они видели сны. Эти маленькие существа все время видят сны, и ночи скрывают их чудесные сновидения. Если вы хотите узнать сны, перейдите к 11, если для вас это безразлично, перейдите к 7.

7.Их миленькие ножки были укутаны в теплые носки, а с рук они не снимали черные шерстяные перчатки. Если вы предпочитаете перчатки другого цвета, перейдите к 8, если этот цвет вас удовлетворяет, перейдите к 10.

8.Они никогда не снимали голубые шерстяные перчатки. Если вы предпочитаете перчатки другого цвета, перейдите к 7, если этот цвет вам подходит, перейдите к 10.

9.Жили-были три маленькие горошины, которые обошли весь свет, бродя по дорогам. К вечеру, утомленные и усталые, они очень быстро уснули. Если вы хотите узнать, что было дальше, перейдите к 5, иначе перейдите к 21.

10.Всем трем приснился одинаковый сон (они, в самом деле, нежно любили друг друга и, словно отраженные в трех зеркалах, видели одинаковые сны). Если вы хотите узнать их сон, перейдите к 11, иначе перейдите к 12.

11.Им приснилось, что они уселись ужинать в харчевне и, открыв крышку кастрюли, увидели, что это был суп из чечевицы. От ужаса они проснулись. Если вы хотите знать, почему они проснулись в ужасе, поищите в энциклопедии слово ―чечевица‖, и не будем об этом больше говорить, если вы считаете бесполезным углублять этот вопрос, перейдите к 12.

12.Ой-ой-ой! – воскликнули они, открыв глаза. Ой-ой-ой! что за сон мы увидели. Это не к добру, - сказала первая горошина. Да, - сказала вторая, - это так, я боюсь. Не тревожьтесь, - сказала треть, которая была самая умная, - надо не нервничать, а разобраться. Я сейчас попробую вам все объяснить. Если вы хотите сразу узнать толкование этого сна, перейдите к 15, если вы, напротив, хотите знать, как на это прореагировали две другие горошины, перейдите к 13.

13.Не заговаривай нам зубы, - сказала первая, - с каких пор ты научилась толковать сны? Да с каких пор? Да с каких пор? – прибавила вторая. Если вы хотите знать, с каких пор, перейдите к 14,

54

иначе все-таки перейдите тоже к 14, потому что вы ничего не узнаете больше.

14.С каких пор? – вскричала третья, - Разве я знаю? Да, я умею. Сейчас увидите. Если вы хотите увидеть, перейдите к 15, если нет, то тоже перейдите к 15, но вы ничего не увидите.

15.Хорошо, посмотрим! – сказали сестры. Мне не нравятся ваши насмешки, - ответила тогда третья горошина, - и вы ничего не узнаете. Кстати, пока мы здесь довольно живо обсуждаем, не уменьшились ли ваши страхи? Тогда стоит ли копаться в глубинах вашего подсознания мотыльковых? Пойдемте скорее к фонтану, умоемся и порадуемся этому веселому утру в чистоте и добром здравии! Сказано сделано: они вылезли из своего стручка, спустились осторожно на землю и затем быстро и весело добрались до фонтана. Если вы хотите знать, что произошло у фонтана, нажмите 16, если вы этого знать не хотите, перейдите к 21.

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

17.Три простых скромных кустика смотрели, что они делают. Если Три простых скромных кустика вам не нравятся, перейдите к 21, если они вас устраивают, перейдите к 18.

18.Видя, что они так на них глазеют, три шустрые маленькие горошины смущенно отвернулись. Если вы хотите знать, что они дальше сделали, перейдите к 19, если вы этого не желаете, перейдите к 21.

19.Они быстренько побежали к своему стручку, укрылись в нем и снова заснули. Если вы хотите знать продолжение, перейдите к 20, если вы этого не желаете, перейдите к 21.

20.А продолжения-то и нет, потому что сказка закончилась.

21.И в этом случае сказка тоже закончилась.

55

Ответы к упражнениям

Упражнения №1

1.

 

 

Алгоритм решения

 

Программа

 

 

 

 

 

 

 

Начало

 

 

 

 

 

CLS

 

 

 

 

 

 

 

x, y

 

 

 

 

 

INPUT “x, y=”; x, y

 

 

 

 

 

 

 

 

 

 

 

 

IF x>y THEN max=x ELSE max=y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PRINT “max=”;max

 

 

Нет

 

 

 

 

 

 

 

 

 

Да

 

END

 

 

 

 

 

x>y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

max=x

 

 

 

 

 

 

 

 

 

max=x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

max

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

 

 

Алгоритм решения

 

Программа

 

 

 

 

 

 

 

Начало

 

 

 

 

 

CLS

 

 

 

 

 

 

 

a, b, c

 

 

 

 

 

INPUT “a,b,c=”;a,b,c

 

 

 

 

 

 

 

 

 

 

 

 

IF a>=b and b>=c THEN→

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rez=a+b+c ELSE rez=a*b*c

 

 

Нет

 

 

 

 

 

 

 

 

 

 

Да

 

PRINT “rez=”; rez

 

 

 

 

 

a≥b,b≥c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

END

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rez=a*b*c rez=a+b+c

rez

Конец

56

3.

 

 

 

 

 

Алгоритм решения

 

 

 

 

 

 

 

Программа

 

 

 

 

 

 

 

 

 

 

 

Начало

 

 

 

 

 

CLS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

INPUT “x=”; x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

t = x^2 + 4*x + 5

 

 

 

 

 

 

 

 

 

 

t x2 4x 5

 

 

 

 

 

 

IF x<=2 THEN f=t ELSE f=1/t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PRINT “f=”; f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

END

 

 

 

 

 

 

 

 

 

 

Нет

 

 

x≤2

Да

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f=1/t

 

 

 

 

 

 

 

 

 

 

 

f=t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.

 

 

 

 

 

Алгоритм решения

 

 

 

 

 

 

 

Программа

 

 

а)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Начало

 

 

 

 

 

x02

y02 9

x02

y02 9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

2

или

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y x0

y x0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 0

 

x 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

R x02 y02

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CLS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y x02

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

INPUT “x0, y0=”; x0, y0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

R = x0^2 + t0^2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y = x0^2-2

 

 

 

 

 

 

Нет

 

 

 

 

 

 

 

 

 

 

Да

IF (R<=9 AND y0<=y and x<=0)→

 

 

 

 

 

 

1) или 2)

OR (R<=9 AND y0>=y and x>0)→

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

THEN ?” Принадлежит” ELSE→

 

 

 

 

Не

при-

 

 

 

 

 

 

 

Принад

-

 

 

 

?”Не принадлежит”

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

надлежит

 

 

 

 

 

 

 

 

лежит

 

 

 

END

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

57

4.

 

 

 

Алгоритм решения

 

Программа

 

б)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Начало

 

 

 

 

CLS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

INPUT “x0, y0=”; x0, y0

 

 

 

 

 

 

 

x

 

 

 

 

R = x0^2 + t0^2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

IF R<=1 AND R>=0.25 THEN→

 

 

 

 

 

 

 

 

 

 

 

 

 

 

?” Принадлежит” ELSE ?”Не→

 

 

 

 

 

 

R x02 y02

 

 

 

 

 

 

 

 

 

 

 

 

 

принадлежит”

 

 

 

 

 

 

 

 

 

 

 

Да

 

END

 

 

 

 

Нет

 

 

0.25≤R≤1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Не принад-

 

 

 

 

 

Принад-

 

 

 

 

 

 

лежит

 

 

 

 

 

лежит

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

5.

 

 

Алгоритм решения

 

 

Программа

 

 

 

 

 

Начало

 

 

 

 

CLS

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

INPUT “a=”; a

 

 

 

 

 

 

 

 

 

IF a/2=a\2 THEN ?” Число→

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

чѐтное” ELSE ?” Число→

 

 

 

 

 

 

 

 

 

 

нечѐтное ”

 

 

 

Нет

 

a/2=a\2

 

Да

 

 

END

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Число

 

 

 

Число

 

 

 

 

 

нечѐтное

 

 

 

чѐтное

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Конец

6.Программа

CLS

INPUT “a, b, c=”; a, b, c

IF a=b AND b=c THEN ?” Равностор.” ELSE ?” Не равностор.”

END

58

Упражнения №2

Алгоритмы решения

1.

 

 

Начало

 

 

 

 

 

x,y,z

 

 

 

Нет

x<y

Да

 

 

 

 

 

 

Нет

y<z

Да

Не

x<z

Да

 

 

 

т

 

 

min=y

 

min=z

min=z

 

min=x

min

Конец

2.

x<-4

f sin 1 arctg x

Начало

x

a2 102 ;

b2 ln a

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x>8

 

 

ELSE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f ln

 

a x

 

 

f 5x ex 3

 

b2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

Конец

59

3.

1 x2 ,

x 1

 

 

x

2;

f (x) 4,

 

2

,

1 x 2.

x

 

 

 

 

 

Начало x

x

 

x<-1

 

 

x>2

 

ELSE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f 1 x2

 

 

 

f 4

 

 

 

f x2

 

 

 

 

 

 

 

 

 

 

 

f

Конец

4.

 

Начало

 

 

 

 

 

x

 

 

 

 

R2 x2 y2

 

 

 

 

 

x

 

 

 

 

x>0

ELSE

 

 

НЕТ

Усл1

ДА

НЕТ

Усл2

ДА

 

 

 

 

Нет

 

ДА

Нет

 

ДА

Конец

60