Главная страница

Решение задач Аннотация. Урок посвящен циклу for


Скачать 3.04 Mb.
НазваниеРешение задач Аннотация. Урок посвящен циклу for
Дата28.06.2022
Размер3.04 Mb.
Формат файлаdocx
Имя файла5. Python.docx
ТипРешение
#618203
страница22 из 23
1   ...   15   16   17   18   19   20   21   22   23

Примеры решения задач


Один интересный способ узнать о работе вложенных циклов состоит в их использовании для вывода на экран комбинаций символов. Давайте взглянем на один простой пример. Предположим, что мы хотим напечатать на экране звездочки в виде прямоугольной таблицы:

******

******

******

******

******

******

******

******

Таблица состоящая из звездочек состоит из 8 строк и 6 столбцов. Приведенный ниже фрагмент кода можно использовать для вывода одной строки звездочек:

for i in range(6):

print ( '*', end='')

Для того чтобы завершить весь вывод таблицы звездочек, нам нужно выполнить этот цикл восемь раз. Мы можем поместить этот цикл в еще один цикл, который делает восемь итераций, как показано ниже:

for i in range(8):

for j in range(6):

print('*', end='')

print()

Внешний цикл делает восемь итераций. Во время каждой итерации этого цикла внутренний цикл делает 6 итераций. (Обратите внимание, что в строке 4 после того, как все строки были напечатаны, мы вызываем функцию print(). Мы должны это сделать, чтобы в конце каждой строки продвинуть экранный курсор на следующую строку. Без этой инструкции все звездочки
будут напечатаны на экране в виде одной длинной строки.)

Давайте рассмотрим еще один пример. Предположим, что вы хотите напечатать звездочки в комбинации, которая похожа на приведенный ниже звездный треугольник:

*

**

***

****

*****

******

*******

********

Представим эту комбинацию звездочек, как сочетание строк и столбцов. В этой комбинации всего восемь строк. В первой строке один столбец. Во второй строке – два столбца. В третьей строке – три. И так продолжается до восьмой строки, в которой восемь столбцов.

for i in range(8):

for j in range(i + 1):

print('*', end='')

print()

ЗАДАЧИ

  1. Установите в каком порядке, указанный вложенный цикл выведет пары чисел (i, j)

for i in range(1, 4):

for j in range(3, 6):

print(i, j)

  • 2 3

  • 1 3

  • 1 4

  • 3 4

  • 1 5

  • 3 3

  • 2 4

  • 2 5

  • 3 5



  1. Что покажет приведенный ниже фрагмент кода?

for i in range(1, 4):

for j in range(3, 5):

print(i + j, end='')



  1. Что покажет приведенный ниже фрагмент кода?

counter = 0

for i in range(99, 102):

temp = i

while temp > 0:

counter += 1

temp //= 10

print(counter)


  1. 1   ...   15   16   17   18   19   20   21   22   23


написать администратору сайта