Главная страница
Навигация по странице:

  • Вложенные циклы

  • Поиск простых чисел – как улучшить

  • Задачи

  • Программирование. Программирование на языке Python (Полякова К.Ю.). Общие сведения о языке Python История


    Скачать 5.72 Mb.
    НазваниеОбщие сведения о языке Python История
    АнкорПрограммирование
    Дата27.02.2023
    Размер5.72 Mb.
    Формат файлаppt
    Имя файлаПрограммирование на языке Python (Полякова К.Ю.).ppt
    ТипДокументы
    #956875
    страница7 из 18
    1   2   3   4   5   6   7   8   9   10   ...   18

    Вложенные циклы


    Задача. Вывести все простые числа в диапазоне от 2 до 1000.


    сделать для n от 2 до 1000
    если число n простое то
    вывод n


    число n простое


    нет делителей [2.. n-1]: проверка в цикле!


    Что значит «простое число»?


    ?


    for n in range(2, 1001):
    if число n простое:
    print( n )

    Вложенные циклы


    for n in range(2, 1001):
    count = 0
    if count == 0:
    print( n )


    for k in range(2,n):
    if n % k == 0:
    count += 1


    вложенный цикл

    Вложенные циклы


    for i in range(1,4):
    for k in range(1,4):
    print( i, k )


    Как меняются переменные?


    ?


    1 1
    1 2
    1 3
    2 1
    2 2
    2 3
    3 1
    3 2
    3 3


    Переменная внутреннего цикла изменяется быстрее!


    !

    Вложенные циклы


    for i in range(1,5):
    for k in range(1,i+1):
    print( i, k )


    Как меняются переменные?


    ?


    1 1
    2 1
    2 2
    3 1
    3 2
    3 3
    4 1
    4 2
    4 3
    4 4


    Переменная внутреннего цикла изменяется быстрее!


    !

    Поиск простых чисел – как улучшить?


    count = 0
    k = 2
    while :
    if n % k == 0:
    count += 1
    k += 1


    while k <= math.sqrt(n):



    Что плохо?


    ?


    while k*k <= n:
    if n % k == 0: break
    k += 1
    if k*k > n:
    print ( n )


    k*k <= n


    Как ещё улучшить?


    ?


    выйти из цикла


    если вышли по условию

    Задачи


    «A»: Напишите программу, которая получает натуральные числа A и B (A Пример:
    Введите границы диапазона:
    10 20
    11 13 17 19
    «B»: В магазине продается мастика в ящиках по 15 кг, 17 кг, 21 кг. Как купить ровно 185 кг мастики, не вскрывая ящики? Сколькими способами можно это сделать?

    Задачи


    «C»: Ввести натуральное число N и вывести все натуральные числа, не превосходящие N и делящиеся на каждую из своих цифр.
    Пример:
    Введите N:
    15
    1 2 3 4 5 6 7 8 9 11 12 15


    Символьные строки




    Символьные строки





    Начальное значение:


    Вывод на экран:


    print ( s )


    s = "Привет!"


    Длина строки:


    n = len ( s )


    print ( s[5] )


    0


    1


    2


    3


    4


    5


    6


    П


    р


    и


    в


    е


    т


    !


    s[0]


    s[1]


    s[2]


    s[3]


    s[4]


    s[5]


    s[6]


    Строка – это последовательность символов!


    !


    print ( s[-2] )


    s[len(s)-2]

    1   2   3   4   5   6   7   8   9   10   ...   18


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