Конспект лекций по программированию для начинающих. Гладков В.П. - 75 стр.

UptoLike

Составители: 

77
Δ
2
=a
1
c
2
-a
2
c
1
.
Δ=0
0 1 1 1 1
Δ
1
=Δ
2
=0
- 0 1 1 1
a
1
=b
1
=a
2
=b
2
=0 - - 0 1 1
c
1
=c
2
=0 - - - 0 1
Одно решение х
Система несовместна,нет решений х х
Система неопределенная, бесконечное
количество решений
х х
Упражнение. Проверьте полноту построенной ТР.
9.5. Задачи, приводящие к ветвящимся алгоритмам
Пример 9.33. Определить, поместится ли квадрат площади P в круг
площади S или круг поместится в квадрат, или они не поместятся друг в друга.
Решение. Квадрат поместится в круг, если его диагональ будет меньше или
равна диаметру круга. Круг поместится в квадрат, если его диаметр будет
меньше стороны квадрата или равен ей.
Если не выполняются оба указанных
условия, то круг и квадрат не поместятся друг в друга.
Обозначим длину стороны квадрата - a, длину его диагонали - sqrt(2)*a, а
длину радиуса круга - r. Тогда a=sqrt(P), а r=sqrt(S/π). Построим таблицу
решений и перейдем от нее к программе:
22P
S
π
1 0 0 1
2
S
P
π
0 1 0 1
Квадрат поместится в круг x
Круг поместится в квадрат x
Квадрат и круг не поместятся
друг в друга
x
невозможная комбинация условий
if sqrt(2*P)<=2*sqrt(S/pi)
then write('Квадрат поместится в круг')
else if 2*sqrt(S/pi)<=sqrt(P)
then write('Круг поместится в квадрат ')
else write('Квадрат и круг не поместятся друг в друга ')
Пример 9.33. Любую целочисленную сумму денег, превышающую 7
рублей, можно выплатить без сдачи трешками и пятерками. По заданному
целому положительному n определить пару целых неотрицательных чисел a и
b, таких, что n=3·a+5·b.
Решение
. Заметим, что если выплачивать деньги трешками, то в остатке
могут получиться 0, 1 или 2. Если в остатке получился ноль, то вся сумма
выдается трешками (a=n div 3, b=0). Если в остатке получился 1 рубль, нужно
забрать обратно три трешки и выдать две пятерки (3*3+1=10 div 5 =2, a=n div 3-
                                          77

                          Δ2=a1c2-a2c1.
         Δ=0                                         0       1       1       1   1
         Δ1=Δ2=0                                     -       0       1       1   1
         a1=b1=a2=b2=0                               -       -       0       1   1
         c1=c2=0                                     -       -       -       0   1
         Одно решение                                х
         Система несовместна,нет решений                     х               х
         Система неопределенная, бесконечное                         х           х
         количество решений
   Упражнение. Проверьте полноту построенной ТР.

          9.5. Задачи, приводящие к ветвящимся алгоритмам
   Пример 9.33. Определить, поместится ли квадрат площади P в круг
площади S или круг поместится в квадрат, или они не поместятся друг в друга.
   Решение. Квадрат поместится в круг, если его диагональ будет меньше или
равна диаметру круга. Круг поместится в квадрат, если его диаметр будет
меньше стороны квадрата или равен ей. Если не выполняются оба указанных
условия, то круг и квадрат не поместятся друг в друга.
   Обозначим длину стороны квадрата - a, длину его диагонали - sqrt(2)*a, а
длину радиуса круга - r. Тогда a=sqrt(P), а r=sqrt(S/π). Построим таблицу
решений и перейдем от нее к программе:
                          S                       1 0 0 1
                  2P ≤ 2
                          π
                    S                            0       1       0       1
                2       ≤ P
                    π
                   Квадрат поместится в круг          x
                   Круг поместится в квадрат              x
                   Квадрат и круг не поместятся              x
                   друг в друга
                                 невозможная комбинация условий ⇑
    if sqrt(2*P)<=2*sqrt(S/pi)
    then write('Квадрат поместится в круг')
    else       if 2*sqrt(S/pi)<=sqrt(P)
               then write('Круг поместится в квадрат ')
               else write('Квадрат и круг не поместятся друг в друга ')
    Пример 9.33. Любую целочисленную сумму денег, превышающую 7
рублей, можно выплатить без сдачи трешками и пятерками. По заданному
целому положительному n определить пару целых неотрицательных чисел a и
b, таких, что n=3·a+5·b.
    Решение. Заметим, что если выплачивать деньги трешками, то в остатке
могут получиться 0, 1 или 2. Если в остатке получился ноль, то вся сумма
выдается трешками (a=n div 3, b=0). Если в остатке получился 1 рубль, нужно
забрать обратно три трешки и выдать две пятерки (3*3+1=10 div 5 =2, a=n div 3-