Thon Условные



бет26/38
Дата23.02.2020
өлшемі2,05 Mb.
#58878
1   ...   22   23   24   25   26   27   28   29   ...   38
Байланысты:
8-3 python


Интеллект-карта

while условие:

...
05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин

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


циклы

циклы

циклы

циклы



for i in range(a,b):

...

for i in range(a,b,d):

...
Рис. 3.6.

Вопросы и задания

1. В каком случае программа, содержащая цикл с условием, может зациклиться?

2. В каких случаях цикл с условием не выполняется ни разу?

3. В каких случаях цикл по переменной не выполняется ни ра-зу?

4. Может ли цикл по переменной работать бесконечно?

5. Сравните цикл по переменной и цикл с условием. Какие преимущества и недостатки есть у каждого из них?



6. Верно ли, что любой цикл по переменной можно заменить циклом с условием? Верно ли обратное утверждение?

7. В каком случае можно заменить цикл с условием на цикл по переменной?

65 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин



Задачи

1. Значения переменных a и b равны a = 4 и b = 6. Определите, сколько раз выполнится цикл, и чему будут равны значения этих переменных после его завершения:

while a < b:
а)
б)
в)
г)
д)


a += 1 while a < b:

a += b while a > b:

a = a + 1; while a < b:

b = a - b; while a < b:

a = a - 1;

2. Найдите ошибку в программе:



k = 0

while k < 10:

print( "привет" )

Как её можно исправить?



3. Что будет выведено на экран в результате работы следующе-го цикла?

k = 1
а)
б)
в)
г)
д)


while k < 5:

print( k, end=" " ) k += 1

k = 4

while k < 10:

print( k*k, end=" " ) k += 1

k = 12

while k > 3:

print( 2*k-1, end=" " ) k -= 1

k = 5

while k < 10:
66 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин



print( k*k, end=" " ) k += 1

k = 15
д)


while k > 6:

print( k-1, end=" " ) k -= 1

4. Значение переменной a равно 1. Определите, сколько раз выполнится цикл и чему будет равно значение этой пере-менной после его завершения:

for i in range(3):
д)


a += 1

for i in range(3,0):

a += 1

for i in range(1,3,-1):

a += i

for i in range(3,0,-1):

a += i
д)

k = 1
д)


for i in range(1,6):

print( i, end="" ) k = 1

for i in range(1,6):

print( i+k, end="" ) k = 1

for i in range(1,6):

print( k*k, end="" ) k += 2

k = 8

for i in range(5,0,-1):

print( i, end="" ) k -= 2

k = 8

for i in range(5,0,-1):

print( 2*i-k, end="" )

67 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин

k -= 2

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

7. Напишите программу, которая получает с клавиатуры нату-ральное число и определяет, сколько раз в его десятичной записи встречается цифра 1.

8. Напишите программу, которая получает с клавиатуры нату-ральное число и находит наибольшую цифру в его десятич-ной записи.

9. *Напишите программу, которая получает с клавиатуры на-туральное число и определяет, есть ли в его десятичной за-писи две одинаковые цифры, стоящие рядом.

10. Напишите программу, которая получает с клавиатуры два натуральных числа и находит их НОД с помощью алгорит-ма Евклида. Программа должна подсчитать количество ша-гов цикла.

11. Напишите программу, которая получает с клавиатуры два натуральных числа и сравнивает количество шагов для вы-числения их НОД с помощью «обычного» и модифициро-ванного алгоритмов Евклида.

12. На вход программы поступает неизвестное количество чи-сел целых, ввод заканчивается нулём. Определить, сколько чисел получено.

13. На вход программы поступает неизвестное количество чи-сел целых, ввод заканчивается нулём. Определить, сколько получено чисел, которые делятся на 3.

14. На вход программы поступает неизвестное количество чи-сел целых, ввод заканчивается нулём. Определить, сколько получено двузначных чисел, которые заканчиваются на 3.



15. На вход программы поступает неизвестное количество чи-сел целых, ввод заканчивается нулём. Найти максимальное из введённых чётных чисел.

68 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин

16. Напишите программу, которая предлагает ввести пароль и не переходит к выполнению основной части, пока не введён правильный пароль. Основная часть вывод на экран «сек-ретных сведений».

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

18. Напишите программу, которая получает с клавиатуры два целых числа и вычисляет их произведение, используя толь-ко операции сложения. Учтите, что числа могут быть отри-цательными.

19. Напишите программу, которая получает с клавиатуры на-туральное число и вычисляет целую часть квадратного коря из него наибольшее число, квадрат которого не больше данного числа.

20. Ипполит задумал трёхзначное число, которое при делении на 15 даёт в остатке 11, а при делении на 11 даёт в остатке

9. Напишите программу, которая находит все такие числа.

21. С клавиатуры вводится натуральное число N. Программа должна найти факториал этого числа (обозначается как N!) – произведение всех натуральных чисел от 1 до N. Напри-мер,

5! = 1 · 2 · 3 · 4 · 5 = 120.

22. Натуральное число называется числом Армстронга, если сумма цифр числа, возведенных в N степень де N ко-личество цифр в числе) равна самому числу. Например, 153 = 13 + 53 + 33. Найдите все трёхзначные Армстронга.


23. Замените фрагменты программы из задания 3 на циклы по переменной, выполняющие те же действия.

24. Замените фрагменты программы из задания 5 на циклы с условием, выполняющие те же действия.

69 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин



25. Напишите программу, которая получает с клавиатуры на-туральное число N и находит сумму всех натуральных чи-сел от 1 до N. Используйте сначала цикл с условием, а по-том цикл по переменной.

26. Напишите программу, которая получает с клавиатуры на-туральное число N и выводит первые N чётных натураль-ных чисел.

27. Напишите программу, которая получает с клавиатуры на-туральные числа a и b, и выводит квадраты всех натураль-ных чисел на отрезке [a; b]. Например, если ввести 4 и 6, программа должна вывести

4*4=16 5*5=25 6*6=36

28. Напишите программу, которая получает с клавиатуры на-туральные числа a и b, и выводит сумму квадратов всех на-туральных чисел на отрезке [a; b].

29. Напишите программу, которая получает с клавиатуры на-туральное число N и выводит на экран N случайных целых чисел. Запустите её несколько раз, объясните результаты опыта.

30. *Напишите программу, которая строит последовательность из N случайных чисел на отрезке от 0 до 1 и определяет, сколько из них попадает в полуинтервалы [0;. 0,25), [0,25; 0,5), [0,5; 0,75) и [0,75; 1). Сравните результаты, полученные при N = 10, 100, 1000, 10000.

31. *Автоморфные числа. Натуральное число называется авто-морфным, если оно совпадает с последними цифрами своего квадрата. Например, 252 = 625. Напишите программу, кото-рая получает с клавиатуры натуральное число N и выводит на экран все автоморфные числа, не превосходящие N.

32. Напишите программу, которая считает количество чётных цифр введённого числа.

70 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин

33. *Напишите программу, которая определяет, верно ли, что введённое число состоит из одинаковых цифр (как, напри-мер, 222).

34. Используя сначала цикл с условием, а потом цикл по пе-ременной, напишите программу, которая выводит на экран чётные степени числа 2, от 210 до 22, в порядке убывания.

35. Напишите программу, которая получает с клавиатуры 10 чисел и вычисляет их сумму и произведение.

36. Напишите программу, которая получает с клавиатуры чис-ла до тех пор, пока не будет введено число 0. В конце рабо-ты программы на экран выводится произведение введенных чисел (не считая 0).

37. Напишите программу, которая получает с клавиатуры чис-ла до тех пор, пока не будет введено число 0. В конце рабо-ты программы на экран выводится минимальное и макси-мальное из введённых чисел (не считая 0).

38. Напишите программу, которая получает с клавиатуры чис-ла до тех пор, пока не будет введено число 0. В конце рабо-ты программы на экран выводится среднее арифметическое введенных чисел (не считая 0).

39. Напишите программу, которая получает с клавиатуры на-туральные числа A и N и вычисляет AN без использования операции возведения в степень.

40. Напишите программу, которая получает с клавиатуры на-туральное число N и определяет сумму всех его делителей, меньших самого числа. Например, для числа 8 эта сумма равна 1 + 2 + 4 = 7.

41. *Напишите программу, которая выводит на экран в столбик все цифры числа, начиная с первой.

42. *В магазине продается мастика в ящиках по 15 кг, 17 кг, 21 кг. Как купить ровно 185 кг мастики, не вскрывая ящи-ки? Сколькими способами можно это сделать?

71 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин

Темы сообщений:

«Два вида циклов: сравнение»

72 http://kpolyakov.spb.ru

05.04.2019 Информатика, 8 класс К.Ю. Поляков, Е.А. Еремин





Достарыңызбен бөлісу:
1   ...   22   23   24   25   26   27   28   29   ...   38




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет