Результат максимальное значение 9280

Задания 6

1.1

Дано n0=1, s<51, nk=64,S=S+5, n=n*2, Somin-?

Решение.

 Проверим, на каком цикле программа  выведет результат n=64

Т.к n изменяется по формуле n=(2*2*….),где количество множителей из двоек соответствует количеству циклов, значит

  nk= 2k = 64, k=6.

Таким образом на 6 цикле у нас будет

S<51 да

S=Somin+ 6 *5

  n6= 26 = 64

Значит, на следующей проверке цикла мы должны не пройти условие S<51  , выйти из цикла и вывести значение n=64.

Для того чтобы условие S<51    не соблюдалось, наше реальное S должно быть >=51.

Somin+ 6 *5>=51 Somin>=21 , откуда минимальное целое число при решении неравенства 21

Ответ 21.

Программно. 1 вариант

 вывело 25.24.23.22.21 – все s при которых n =64, наименьшее 21

   2 вариант

 вывело 25.24.23.22.21 – все s при которых n =64, наименьшее 21

1.2.

Дано   n0=1, s<=130, nk=625,S=S+20, n=n*5, Somax-?

Решение.

 Проверим, на каком цикле программа  выведет результат n=625

Т.к n изменяется по формуле n=(5*5*….),где количество множителей из 5 соответствует количеству циклов, значит

  nk= 5k = 625, k=4.

Таким образом на 4 цикле у нас будет

S<=130 да

S=So+ 4 *20

n4= 54 = 625

Значит, на следующей проверке цикла мы должны не пройти условие S<=130  , выйти из цикла и вывести значение n=625.

Для того чтобы условие S<=130    не соблюдалось, наше реальное текущее S должно быть >130.

Т.е  4 цикл последний цикл

So+ 4 *20>130 So>50 при этом значении условие не соблюдается  , а при S=51 это минимальное возможное значение при котором условие соблюдается, 

Найдем верхнюю границу, т.к на предпоследнем(третьем) цикле мы уже достигнем пограничное значение S<=130 при котором еще возможно выполнение последнего 4 цикла(чтобы n=625), т.е на третьем цикле So+ 3 *20<=130, отсюда   70 =130-60 , Somax <= 70 . Вилка от 51 до 70.

Ответ 70

Внимание! Вывод - в таких задачах минимальное значение достигается на последнем возможном цикле, а максимальное на предыдущем.


Программа для проверки. 1 Способ

Выведет от 70 до 51. 2. Способ.

1.3.


 

Дано n0=34, n<=170, Skmin=1000,S=S+120, n=n+23, So-?

Решение.

Й Способ.

1.1 Проверим, на каком цикле программа закончит работать и выведет результат.

Первый цикл, k=1, где к – номер текущего цикла.

34<=170 - да

S=So+120  или S=So+1*120 (So+k*120)

n=34+23= 57 или n=34+1*23 (n=34+k*23)

Второй цикл, k=2

57<=170 - да

S=So+120+120 или S=So+2*120 (So+k*120)

n=34+23+23=80 или n=34+2*23 (n=34+k*23)

Третий цикл, k=3

80<=170 - да

S=So+120+120 +120 или S=So+3*120 (So+k*120)

n=34+23+23+23=103 или n=34+3*23 (n=34+k*23)

Четвертый цикл, k=4

103<=170 - да

S=So+120+120 +120+120 или S=So+4*120 (So+k*120)

n=34+23+23+23+23=126 или n=34+4*23 (n=34+k*23)

Пятый цикл, k=5

126<=170 да

S=So+120+120 +120+120 +120 или S=So+5*120 (So+k*120)

n=34+23+23+23+23+23=149 или n=34+5*23 (n=34+k*23)

Шестой цикл, k=6

149<=170 - да

S=So+120+120 +120+120 +120 +120 или S=So+6*120 (So+k*120)

n=34+23+23+23+23+23+23=172 или n=34+6*23 (n=34+k*23)

Седьмой цикл, k=7

172<=170 - нет, выход из цикла

Вывод результата S=So+6*120 ,

Теперь нам надо найти минимальное So при S>=1000(первое четырехзначное число)

So+720>=1000

So>=280

На отрезке решений неравенства минимальное целое S = 280

Ответ 280.

Теперь унифицируем первый способ.

Й способ

Найдем сколько циклов пройдет программа , пока не достигнется условие n>170(цикл работает пока n<=170). По условию задачи с каждым циклом к n прибавляется 23, т.е за k циклов получим конечное nk=no+23k, а Sk =So+k*120

 подставляем все , что нам известно про n, при условии что условие выполнилось, те nk>170, и следующий шагом в программе  будет проверка на n<=170 и выход из цикла(См. способ 1).

34+23*k > 170, отсюда k>5.9, берем первое целое число, на отрезке, удовлетворяющем решение неравенства , тк кол-во циклов – целые числа, получаем k=6. На этом цикле мы выполняем все действия в теле цикла(S=S+120, n=n+23), затем идем на проверку n<=170, не проходим ее и выходим из цикла(см способ 1 шаг 6,7), при этом у нас S=So+6*120 .

Значит, мы выводим на печать S=So+6*120 , нас спрашивают найти такое мин So, чтобы S>=1000

So+720>=1000

So>=280

На отрезке решений неравенства минимальное целое S = 280 Ответ 280.

Напишем программный код

for i in range (0,1001,1): #перебор всех s от 0 до 1001

n=34

s=i

while n<=170:

s=s+120

n=n+23

if s>=1000:# как только достигаем искомое , печать начального значения n и выход из цикла

print(i) #

break

print(s)

Здесь результат будет 280, это минимальное значение, а максимальное ищем по достижении 5 тизначного числа, т.е цикл до 10000, сравнение с 9999,

for i in range (0,10000,1): #перебор всех s от 0 до 9999

n=34

s=i

while n<=170:

s=s+120

n=n+23

if s>=9999:# как только достигаем искомое , печать начального значения n и выход из цикла

print(i) #

break

print(s)

Результат максимальное значение 9280

1.4.

Дано ko=0, so=5 , S=S+k, k=k+2, sn= 161 , domin-?

Решение.

 Проверим, на каком цикле  n программа выведет результат sn= 161

Т.к k изменяется по формуле k= ko+(2+2+2…) = ko+2*n=0+2*n=2n ,где количество множителей из двоек соответствует количеству циклов

Найдем закономерность для s , заметив , что Sn=Sn-1+2*n=161(заметим ,что разность между ними = 2n),  макcимальное d=160, а т.к Sn-1<d< Sn то для минимального d фактически нам надо найти количество циклов ,

 k1 = 2*1 s1=5+2*1,     k2 = 2*2 s2=5+2*1+2*2,     k3 = 2*3 s3= 5+2*1+2*2+2*3 и тд

sn=so+2(1+2+3+..n)  =161, где 1+2+3+… сумма арифм. Прогрессии. = (1 + n)/2 * n

sn=5+2*(1+n)*n/2=161 n2+n+5-161=0 , отсюда n=12, т.е на 12 цикле у нас будет s12=161 , тогда найдем предыдущую s11=5+2(1+11)11/2=137 или sn-sn-1=2n Sn-1= 161-2n=161-22=137 , 137<d<162, минимальное первое число

138

Программно

Результат от 138 до 161- минимум 138

Ответ 138


Дано :

no=33 so=4 nk=153

s<=1725 s=s+d  n=n+8

dmax, dmin-?

Решение

Определим закономерность для s, где k – количество циклов/итераций

Sk=so+kd=4+kd, nk=no+8*k, тк в последнем цикле nk=153 - найдем k = (153-33)/8=15

Итак 15-й последний цикл s14<1725 – да

S15=4+15*d становится больше 1725(следующий 16-й цикл не должен выполнится), значит 4+15d>1725, d>114.7, т.е мин целое d=115

Для макисмального зайдем в 14 цикл, где получим s14 , которое потом уходит последний раз на сравнение в 15 цикл

Итак 14 цикл s14=4+14d причем <=1725( условие выполняется последний раз) , тогда  d<=122.9, ближайшее целое 122

Ответ: 115, 122 


Решение

Определим закономерность для s, где k – количество циклов/итераций

Sk=so+k*8=0+k*8, nk=no+k*d=k*d,

для последнего цикла s k>=111 - найдем 8*k> = 111 k>=13.8, тогда ближаший  k=14.

Итак 14-й последний цикл s14<111 – да

S14=0+14*8 =112 становится больше 111(следующий 15-й цикл не должен выполнится), и n14=0+14*d = 28 , отсюда d=2

 

Ответ 2.

      def f(d): # подпрограмма , передаем туда d, из бесконечного цикла, см ниже

 s, n =0, 0

 while s<111:

s=s+8

n=n+d

 return (n) # нам надо вернуть n , чтобы потом сравнить его с 28

      d=0

      while True: #бесконечный цикл, здесь мы перебираем  d от 0 с шагом +1 до бесконечности

if f(d)==28:

          print (d)  # передаем в подпрограмму текущую d ,выполняем с этим d подпрограмму и           

          #  сравниваем вернувшееся значение n c 28

d=d+1 

Вывело 2

или вариант

d=0

while True:  

s, n = 0, 0

 while s<111:

s=s+8

n=n+d

if n==28: print(d )      

d=d+1                    Вывело 2

 

   

1) При каком наименьшем введенном числе d после выполнения программы будет напечатано 67?

var n, s, d: integer;

Begin

readln(d);

n := 2;

s := 0;

while s <= 365 do begin

s := s + d;

n := n + 5

end;

Write(n)

End.

Решение программно

Выведет 29,30, наим = 29

Ответ 29.

2) При каком наибольшем введенном числе d после выполнения программы будет напечатано 89?

var n, s, d: integer;

Begin

readln(d);

n := 5;

s := 83;

while s <= 1200 do begin

s := s + d;

n := n + 6

end;

Write(n)

End.

Ответ:85

3) При каком наименьшем введенном числе d после выполнения программы будет напечатано 63?

var n, s, d: integer;

Begin

readln(d);

n := 3;

s := 57;

while s <= 1200 do begin

s := s + d;

n := n + 4

end;

Write(n)

End.

Ответ 77

4) При каком наибольшем введенном числе d после выполнения программы будет напечатано 150?

var n, s, d: integer;

Begin

readln(d);

n := 3;

s := 38;

while s <= 1200 do begin

s := s + d;

n := n + 7

end;

Write(n)

End.

Ответ 58

5) При каком наименьшем введенном числе d после выполнения программы будет напечатано 121?

var n, s, d: integer;

Begin

readln(d);

n := 1;

s := 46;

while s <= 2700 do begin

s := s + d;

n := n + 4

end;

Write(n)

End.

Ответ 89

6) При каком наибольшем введенном числе d после выполнения программы будет напечатано 46?

var n, s, d: integer;

Begin

readln(d);

n := 8;

s := 78;

while s <= 1200 do begin

s := s + d;

n := n + 2

end;

Write(n)

End.

Ответ 62

7) (О.В. Гасанова) Запишите через запятую наименьшее и наибольшее значение числа d, которое нужно ввести, чтобы после выполнения программы было напечатано 153?

var n, s, d: integer;

Begin

readln(d);

n := 33;

s := 4;

while s <= 1725 do begin

s := s + d;

n := n + 8

end;

Write(n)

End.

Ответ 115,122

8)  (О.В. Гасанова) Запишите через запятую наименьшее и наибольшее значение числа d, которое нужно ввести, чтобы после выполнения программы было напечатано 75?

var n, s, d: integer;

Begin

readln(d);

n := 24;

s := 12;

while s <= 3004 do begin

s := s + d;

n := n + 3

end;

Write(n)

End.

Ответ 177,187

9)  (О.В. Гасанова) Запишите через запятую наименьшее и наибольшее значение числа d, которое нужно ввести, чтобы после выполнения программы было напечатано 195?

var n, s, d: integer;

Begin

readln(d);

n := 0;

s := 24;

while s <= 1318 do begin

s := s + d;

n := n + 15

end;

Write(n)

End.

Ответ 100,107

10)  (О.В. Гасанова) Сколько различных значений числа d можно ввести, чтобы после выполнения программы было напечатано 171?

var n, s, d: integer;

Begin

readln(d);

n := 27;

s := 12;

while s <= 2019 do begin

s := s + d;

n := n + 16

end;

Write(n)

End.

11)  (О.В. Гасанова) Сколько различных значений числа d можно ввести, чтобы после выполнения программы было напечатано 246?

var n, s, d: integer;

Begin

readln(d);

n := 8;

s := 6;

while s <= 1800 do begin

s := s + d;

n := n + 7

end;

Write(n)

End.

12)  (О.В. Гасанова) Сколько различных значений числа d можно ввести, чтобы после выполнения программы было напечатано 196?

var n, s, d: integer;

Begin

readln(d);

n := 7;

s := 35;

while s <= 2570 do begin

s := s + d;

n := n + 9

end;

Write(n)

End.

13)  (О.В. Гасанова) Сколько различных значений числа d можно ввести, чтобы после выполнения программы было напечатано 69?

var n, s, d: integer;

Begin

readln(d);

n := 14;

s := 29;

while s <= 2000 do begin

s := s + d;

n := n + 5

end;

Write(n)

End.

14)  (О.В. Гасанова) Запишите через запятую наименьшее и наибольшее значение числа d, которое нужно ввести, чтобы после выполнения программы было напечатано 53?

var n, s, d: integer;

Begin

readln(d);

n := 23;

s := 18;

while s <= 1977 do begin

s := s + d;

n := n + 6

end;

Write(n)

End.

15)  (О.В. Гасанова) Запишите через запятую наименьшее и наибольшее значение числа d, которое нужно ввести, чтобы после выполнения программы было напечатано 264?

var n, s, d: integer;

Begin

readln(d);

n := 16;

s := 10;

while s <= 3120 do begin

s := s + d;

n := n + 8

end;

Write(n)

End .

 

 

2.Задание 22       2.1

2.2.

2.3.

2.4.

1. 1 Ответ 21

1.2. Ответ 70

1.3. Ответ 280

1.4.Ответ 138

 

2.1. Ответ 959   

2.2 Ответ 60

2.3. Ответ 49       

2.4. Ответ 614

 

 


Дата добавления: 2020-12-12; просмотров: 317; Мы поможем в написании вашей работы!

Поделиться с друзьями:




Мы поможем в написании ваших работ!