Как найти автоморфные числа в python

Число называется автоморфным в Python, если последние цифры квадрата этого числа дают то же самое число.

Ниже приведены примеры автоморфных чисел:

1. Ввод: 25

Выходные данные – Да, это автоморфное число.

Причина – Квадрат 25 дает 625, поскольку последние цифры 25, это автоморфное число.

2. Ввод: 14

Выходные данные – Нет, это не автоморфное число.

Причина – Квадрат 14 дает 196, поскольку последние цифры 96, это не автоморфное число.

3. Ввод: 76

Выходные данные – Да, это автоморфное число.

Причина – Квадрат 76 дает 6776, поскольку последние цифры 76, это автоморфное число.

Поскольку концепция теперь нам ясна, давайте посмотрим, как мы можем использовать логику, чтобы проверить, являются ли числа автоморфными в Python или нет. Мы знаем, что оператор модуля может использоваться для выполнения функций с цифрами числа.

Ниже показано, как это можно сделать в Python.

Пример –

 
num = int(input("Enter a number you want to check: n")) 
 
#calculating the number of digits 
num_of_digits = len(str(num)) 
 
#computing the square of a number 
square = num**2 
 
#obtaining the last digits  
last_digits = square%pow(10,num_of_digits) 
 
#comparing the digits of number with input 
if last_digits == num: 
  print("Yes, {} is an automorphic number".format(num)) 
else: 
  print("No, {} is not an automorphic number".format(num)) 

Выход:

Enter a number you want to check:  
76 
Yes, 76 is an automorphic number 

Итак, давайте взглянем на пошаговый подход:

  1. Первым делом нужно взять число у пользователя и вычислить его квадрат.
  2. Мы можем рассчитать количество цифр с помощью функции len.
  3. Следующее, что нужно сделать, это вычислить квадрат числа.
  4. Теперь мы воспользуемся степенной функцией и оператором модуля, чтобы получить последние цифры.
  5. Наконец, мы сравним последнюю цифру с входным числом.
  6. При выполнении программы будет отображен желаемый результат.

Давайте посмотрим, что произойдет, когда мы передадим числа, которые мы обсуждали в примере.

Поскольку 25 – автоморфное число, оно отображает требуемое сообщение.

Выход 2:

Enter a number you want to check:  
25 
Yes, 25 is an automorphic number 

Поскольку 14 не является автоморфным числом, оно отображает необходимое сообщение.

Выход 3:

Enter a number you want to check:  
14 
No, 14 is not an automorphic number 

Использование цикла while

Следующий подход к тому же выглядит следующим образом:

Пример –

 
print("Enter the number you want to check:") 
num=int(input()) 
square=num*num   
flag=0  
while(num>0):  
    if(num%10!=square%10): 
        print("No, it is not an automorphic number.") 
        flag=1 
        break                      
      
    num=num//10                       
    square=square//10  
 
if(flag==0): 
    print("Yes, it is an automorphic number.") 

Выход:

Enter the number you want to check: 
 
25 
Yes, it is an automorphic number. 

Давайте разберемся, какие шаги мы выполнили в этой программе:

  1. Первый шаг остается прежним – взять число у пользователя и вычислить его квадрат.
  2. Мы объявили цикл while, который будет выполняться до тех пор, пока число не станет равным нулю.
  3. Теперь мы сравним, равна ли единица числа числа разряду единицы числа, полученному после вычисления квадрата.
  4. Если указанное выше условие выполнено, мы перейдем к делению числа с остатком и числа в квадрате.
  5. При выполнении программы понятно, является ли число автоморфным числом или нет.

Итак, в этой статье мы узнали, что такое автоморфное число и как мы можем проверить, является ли данное число автоморфным или нет, используя Python.

Изучаю Python вместе с вами, читаю, собираю и записываю информацию опытных программистов.

0 / 0 / 0

Регистрация: 25.02.2018

Сообщений: 20

1

25.02.2018, 12:33. Показов 51051. Ответов 9


Студворк — интернет-сервис помощи студентам

Напишите пожалуйста программу с объяснением .
Натуральное число называется автоморфным, если оно равно последним цифрам своего квадрата. Например, 25^2 = 625. Напишите программу, которая получает натуральное число N и выводит на экран все автоморфные числа, не превосходящие N.

Пример:

Введите N:

1000

1*1=1

5*5=25

6*6=36

25*25=625

76*76=5776



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

25.02.2018, 12:33

9

Casper-SC

Эксперт .NET

4431 / 2091 / 404

Регистрация: 27.03.2010

Сообщений: 5,657

Записей в блоге: 1

25.02.2018, 17:34

2

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
number = 1000  # int(input())
 
 
def get_numbers_count(number):
    """
    Получить количество цифр в числе.
    :param number: Число, кол-во цифр в котором нужно подсчитать
    :return: Например, для числа 1000 вернёт 4, для числа 777 вернёт 3 и т.д.
    """
    count = 0
    while number:
        count += 1
        number = number // 10
    return count
 
 
def get_automorphic_numbers(max_number):
    """
    Найти все автоморфные числа в диапазоне от 1 до заданного в параметрах max_number
    :param max_number: Максимальное число, являющееся ограничением диапазона поиска всех автоморфных чисел
    :return: Возращает генератор, которые позволяет перечислить все автоморфные
    числа не записывая их все сразу в память
    """
    for x in range(1, max_number + 1):
        square = x * x
        length_of_x = get_numbers_count(x)
 
        num_divider = 10 ** length_of_x
        num = square % num_divider
 
        if num == x:
            yield num
 
 
for x in get_automorphic_numbers(number):
    print(x, "*", x, "=", x * x)

Вывод:

1 * 1 = 1
5 * 5 = 25
6 * 6 = 36
25 * 25 = 625
76 * 76 = 5776
376 * 376 = 141376
625 * 625 = 390625



1



Vigi

628 / 468 / 179

Регистрация: 28.05.2012

Сообщений: 1,399

26.02.2018, 07:15

3

Через строки:

Python
1
2
3
4
5
6
7
8
9
def a_number(i):
    tmp = int(i) ** 2
    return True if str(tmp)[-len(i):] == i else False
 
 
n = input('N=')
for i in range(1, int(n) + 1):
    if a_number(str(i)):
        print(f'{i}*{i}={i * i}')



1



Casper-SC

Эксперт .NET

4431 / 2091 / 404

Регистрация: 27.03.2010

Сообщений: 5,657

Записей в блоге: 1

26.02.2018, 23:57

4

Смотрю тут краткость в почёте. Окей:

Python
1
2
number = 1000  # int(input())
[print(f'{x} * {x} = {x * x}') for x in filter((lambda n: str(n * n).endswith(str(n))), range(1, number + 1))]

Ну, или уж совсем, чтобы прямо в одну строчку, как положено и с вводом пользователя:

Python
1
[print(f'{x} * {x} = {x * x}') for x in filter((lambda n: str(n * n).endswith(str(n))), range(1, int(input()) + 1))]

Добавлено через 20 минут
Мир перевернулся. Короткий способ со строкой ещё и работает быстрее, прогнал его в профайлере в цикле 10000 раз по два раза каждый вариант (первый раз, второй раз: 8697, 9846) без вызова в обоих случаях print:

Первый (длинный) способ:
Own time (ms) 8697, 9846
Time (ms) 31930, 32410

Второй (короткий) способ:
Own time (ms) 8679, 8891
Time (ms) 26141, 26725



0



Shamil1

Модератор

2978 / 2131 / 451

Регистрация: 26.03.2015

Сообщений: 8,298

27.02.2018, 01:38

5

Casper-SC,
Можете ещё такой способ замерить?

Python
1
2
3
4
5
6
7
8
def f3(n):
    p = 10
    for x in range(1, n+1):
        if x >= p:
            p *= 10
        a = 2*x - 1
        if (a*a - 1) % (4*p) == 0:
            print(f"{x}*{x} = {x*x}")



1



Casper-SC

Эксперт .NET

4431 / 2091 / 404

Регистрация: 27.03.2010

Сообщений: 5,657

Записей в блоге: 1

27.02.2018, 02:17

6

Замерял так:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
n = 1000
def f3(n):
    p = 10
    for x in range(1, n+1):
        if x >= p:
            p *= 10
        a = 2*x - 1
        if (a*a - 1) % (4*p) == 0:
            x
            # print(f"{x}*{x} = {x*x}")
 
 
for m in range(10000):
    f3(n)

Own time (ms) 3341
Time (ms) 6679

Неплохо



0



1289 / 906 / 479

Регистрация: 05.12.2013

Сообщений: 3,067

27.02.2018, 08:51

7

А что тормозит? yield



1



Модератор

2978 / 2131 / 451

Регистрация: 26.03.2015

Сообщений: 8,298

27.02.2018, 09:56

8

Цитата
Сообщение от Casper-SC
Посмотреть сообщение

Замерял так

Для бóльших n разница должна быть больше.
В моём варианте 1 деление. А для перевода числа в строку требуется по 1 делению на каждую цифру.



0



Shamil1

Модератор

2978 / 2131 / 451

Регистрация: 26.03.2015

Сообщений: 8,298

27.02.2018, 12:11

9

Более быстрый вариант:

Python
1
2
3
4
5
6
7
8
9
10
def f6(n):
    res = [0]
    p = 1
    while True:
        k = len(res)
        for x in (i*p + res[j] for i in range(1,10) for j in range(0,k)):
                if x > n: return res
                if x*(x - 1) % (10*p) == 0:
                    res.append(x)
        p *= 10

Код

[0, 1, 5, 6, 25, 76, 376, 625, 9376, 90625, 109376, 890625, 2890625, 7109376, 12890625, 87109376, 212890625, 787109376, 1787109376, 8212890625, 18212890625, 81787109376, 918212890625]

з.ы. Предыдущий “быстрый” вариант был не совсем корректен, хоть и выдавал правильный ответ. Поэтому я его удалил и заменил на этот.
Для n = 1000000000000 решение выдаёт мгновенно.



0



korol_zwerei

0 / 0 / 0

Регистрация: 30.01.2022

Сообщений: 6

30.01.2022, 23:28

10

Python
1
2
3
4
5
6
7
8
9
keyboard = input("значение:")
note = ""
for action in range (1,int(keyboard)+1):
    result = str(action**2)
    for event in range(len(result)-len(str(action)),len(result)):
        note += result[event]
        if note==str(action):
            print("найдено:",str(action))
        note = ""



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

30.01.2022, 23:28

10

Check Whether or Not the Number is an Automorphic Number in Python

Given an integer input for a number, the objective is to check whether or not the number is Automorphic or not. Therefore we’ll write a program to Check Whether or Not the Number is an Automorphic Number in Python Language.

Example
Input : 5
Output : It's an Automorphic Number.

automorphic number or not in python

Check Whether or Not the Number is an Automorphic Number in Python Language

Given an integer input as the number the objective is to check whether or not the number is an Automorphic number. To do we’ll first square the number and check if the number has been repeated in the same order of digits at the end of it’s square. For a Number to be Automorphic, it must pass the below mentioned condition

Automorphic Number
A number whose square ends with the same number is known as an Automorphic number.
Let’s try and understand it even better using an example ,

Example
Input : number = 5
Output : It's an Automorphic number.
Explanation : Number = 5
Square of number = 25
as the square of the number ends with the number itself, It's an Automorphic number.

Therefore, for a number to be Automorphic it number have a square that ends with the number itself.

Automorphic NumberIn Python

Therefore, to Check Whether or Not a Number is an Automorphic Number, we write a Python Code using the following methods –

  • Method 1: Using Modulo Operators
  • Method 2: Short cut
  • Method 3: Using endswith() method

We’ll discuss the above-mentioned methods in detail in the upcoming sections.

Method 1: Using Modulo Operators

Working

In this method we’ll use the modulo operator to extract the last number of digits based on the length of the number input. We’ll reverse the number to match with the original numeric order of the digits.

Given an integer input as the number, we perform the following operations,

  • Find the square of the given integer input.
  • Check is the square % 10 ** len( str( number ) ) matches the original number itself.

Let’s implement the above Logic in Python Language.

Python Code

Run

number = 376
square = pow(number, 2)
mod = pow(10, len(str(number)))

# 141376 % 1000
if square % mod == number:
    print("It's an Automorphic Number")
else:
    print("It's not an Automorphic Number")

Output

it's an Automorphic Number

Method 2 : One Line Method (using Slicing)

Run

# One line method for automorphic number in python
n = 376
# n^2 = 141376 141376[-3::] = 376
print("YES" if int(str(n**2)[-len(str(n))::]) == n else "No")

Output

YES

Method 3 : Using Endswith() Method

The endswith() method returns True if the string ends with the specified value, otherwise False.

Run

num = 376
a = str(num)

num1 = num ** 2
b = str(num1)

if b.endswith(a):
    print("It's an Automorphic Number")
else:
    print("It's not an Automorphic Number")

Output

It's an Automorphic Number

Prime Course Trailer

Related Banners

Get PrepInsta Prime & get Access to all 200+ courses offered by PrepInsta in One Subscription

  • Positive or Negative number: C | C++ |  Java | Python
  • Even or Odd number: C | C++ | Java | Python
  • Sum of First N Natural numbers:  C | C++ | Java | Python
  • Sum of N natural numbers:  C | C++ | Java | Python
  • Sum of numbers in a given range: C | C++ | Java  | Python
  • Greatest of two numbers: C | C++ | Java | Python
  • Greatest of the Three numbers: C | C++ | Java | Python
  • Leap year or not: C | C++ | Java | Python
  • Prime number: C | C++ | Java | Python
  • Prime number within a given range: C | C++ | Java | Python
  • Sum of digits of a number: C | C++ | Java | Python
  • Reverse of a number : C | C++ | Java | Python
  • Palindrome number: C | C++ | Java | Python
  • Armstrong number : C | C++ | Java | Python
  • Armstrong number in a given range : C | C++ | Java | Python
  • Fibonacci Series upto nth term : C | C++ | Java | Python
  • Find the Nth Term of the Fibonacci Series : C | C++ | Java | Python
  • Factorial of a number : C | C++ | Java | Python
  • Power of a number : C | C++ | Java | Python
  • Factor of a number : C | C++ | Java | Python
  • Strong number : C | C++ | Java | Python
  • Perfect number : C | C++ | Java | Python
  • Automorphic number : C | C++ | Java | Python
  • Harshad number : C | C++ | Java | Python
  • Abundant number : C| C++ | Java | Python
  • Friendly pair : C | C++ |   Java | Python

Many interview panels have asked this question to me in the interview to find the if a given number is an automorphic number or not.

enter image description here

I have added the above code which I got to my knowledge. Please add if another simple logic to solve this problem.

OneCricketeer's user avatar

OneCricketeer

175k18 gold badges129 silver badges238 bronze badges

asked Dec 6, 2021 at 15:43

Humble_PrOgRaMeR's user avatar

Humble_PrOgRaMeRHumble_PrOgRaMeR

6894 gold badges14 silver badges34 bronze badges

2

try this :

num = int(input('enter a number'))
if str(num) == str(num**2)[-len(str(num)):] :
    print (num , 'is Automorphic ')
else :
    print (num , 'is not Automorphic ')

answered Dec 6, 2021 at 15:57

Dhia Ben Aicha's user avatar

8

На уроке рассматривается алгоритм работы с различными видами циклов на языке Питон (Python): цикл с предусловием While и цикл со счетчиком For. Объясняется возможность генерации в Python случайных чисел

Содержание:

  • Цикл WHILE
    • Комментарии в Python
    • Операторы break и continue
    • Случайное число
  • Цикл FOR
    • Циклы с условием (короткие запросы)

Цикл while — цикл с предусловием. Как правило данный цикл применяется, когда не известно сколько должно быть итераций цикла. Пример использования:

i = 5
while i < 15:
   print(i)
   i = i + 2  # вывод 5 7 9 11 13

Еще пример:

i = 0
while i < 100:
    i += 1
 
print(i) # 100

Комментарии в Python

Однострочный комментарий начинается с #.
Блочный комментарий можно использовать так (строго говоря, блочного комментария нет в Питоне):

#Однострочные Питон комментарии 
 
#  Это
#      блочный или многострочный
#          комментарий
'''
тоже блочный 
         комментарий
'''

Операторы break и continue

цикл while на питоне

Оператор break — выход из цикла
Оператор continue — выход из текущей итерации цикла

Задание: Определить, что выведет программа:

a=0
while a!=10:
    a=a+1
    if a==5:
        continue
    print (a)
    if a==7:
        break
print ("всё!")

Случайное число

В Python случайное число задается с помощью двух функций:

  • random() – случайное вещественное из полуинтервала [0,1) ;
  • randint(a,b) – случайное целое из отрезка [a,b].

Но для использования функция необходимо предварительно подключить библиотеку:

# подключение библиотеки:
from random import randint
# получение целого случайного числа в диапазоне от 1 до 10
x = randint(1,11)
 
# получение вещественного случайного числа в полуинтервале от 5 до 11
from random import random
x = 6*random() + 5

Пример: Написать программу для игры: Загадывается число (использовать функцию random). Пользователю предлагается угадать число. Если пользователь не угадывает, то ему предлагается угадать число снова и выдается подсказка, что число больше или меньше введенного. Так бесконечно, пока пользователь не введет слово exit. Бесконечный цикл организовать через while True: .

✍ Решение:

    import random
     
    number = random.randint(0, 100)
     
    while True:
        answer = input('Угадай число: ')
        if answer == "" or answer == "exit":
            print("Выход из программы")
            break
     
        if not answer.isdigit():
            print("Введи правильное число")
            continue
     
        answer = int(answer)
     
        if answer == number:
            print('Верно!')
            break
     
        elif answer > number:
            print('Загаданное число больше')
        else:
            print('Загаданное число меньше')

Использование else в комбинации с break

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

Пример: В цикле запрашивать числа до тех пор, пока не введен ноль. Проверять, есть ли среди введенных чисел, число n.

Пример вывода:

введите искомое число
>>5
1
2
3
4
5
Встретилось число 5
введите искомое число
>>5
1
2
3
0
Число не встретилось

✍ Решение:

    n=int(input('введите искомое число'))
    a = int(input())
    while a != 0:
        if a == n:
            print('Встретилось число', n)
            break
        a = int(input())
    else:
        print('Число не встретилось')

Задание Python 2_1: Последовательно вводятся ненулевые числа. Определить сумму положительных и сумму отрицательных чисел. Закончить ввод чисел при вводе 0. Для перевода из строки в целое число, использовать функцию int().

  
Пример вывода:

Введите числа:
-5  7  8  -2  0
сумма положительных: 15, сумма отрицательных: -7

Задание Python 2_2: При помощи цикла распечатать ряд Фибоначчи: 1 1 2 3 5 8 13 21.

Задание Python 2_3: Запрашиваются 10 чисел (целые значения от 0 до 1000). Опишите алгоритм, позволяющий найти и вывести минимальное значение среди введенных чисел, которые имеют чётное значение и не делятся на три.

  
Пример вывода:

Введите числа:
5  7  8  22  9  12  15  0   2   3
результат:  2

Задание Python 2_4: В цикле запрашиваются числа, пока не введен 0. Есть ли среди чисел четное число? Использовать блок else в комбинации с инструкцией break.

  
Пример вывода:

Введите числа:
1 3 5 0
результат:  четных нет
Введите числа:
1 3 5 6
результат:  четное число 6

Цикл FOR

В Python цикл for имеет такой синтаксис:
оператор цикла For на Питоне
Пример:

for i in range(3):
    print(i)
# 0
# 1
# 2

Пример с двумя параметрами:

for i in range(5, 8):
    print(i)
# 5
# 6
# 7

Пример:
Вывести степени двойки с 1-й по 10-ю.

✍ Решение:
 

for x in range(1,11): 
  print ( 2**x )
 
# 2 4 8 16 ... 1024

Меняем шаг цикла

Шаг счетчика цикла можно менять:

for x in range(1,11,2): 
  print ( 2**x )

Отрицательный шаг:

for i in range(10, 7, -1):
    print(i)
# 10
# 9
# 8

При работе со строкой

for i in 'hello world':
     if i == 'o':
         continue
     print(i, end='')
 
# hell  wrld

Пример использования break:

for i in 'hello world':
     if i == 'l':
         break
     print(i, end='')
 
# he

При работе со cписками

greetings = ["Good day", "hi","hello"]
for i in range(len(greetings)):
    print(i,greetings[i])
# 0 Good day
# 1 hi
# 2 hello

Пример работы с break и else (даны 10 чисел; определить, есть ли среди них введенное число):

n = int(input('введите число, которое нужно найти'))
for i in range(10):
    numb = int(input())
    if numb == n:
        print('Встретилось число', n)
        break    
else:
    print('число не встретилось')

Циклы с условием (короткие запросы)

Рассмотрим две реализации одних и тех же заданий.

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

Пример вывода:

список: [1, 4, 6, 2, 10, 15, 20]

[2, 8, 12, 4, 20, 30, 40]

✍ Решение:

    Обычное решение:

    1
    2
    3
    4
    5
    
    numbers = [1, 4, 6, 2, 10, 15, 20]
     
    for i in numbers:
        print(i*2)
    # 2 8 12 4 20 30 40

    С помощью запроса:

    1
    2
    3
    
    numbers = [1, 4, 6, 2, 10, 15, 20]
    print([i*2 for i in numbers])
    # [2, 8, 12, 4, 20, 30, 40]

Пример: Даны два списка: 1. варианты блюд для завтрака и 2. здоровая пища. Необходимо выбрать те блюда для завтрака, которые находятся в списке здоровой пищи.

Пример вывода:

варианты блюд для завтрака: яйцо, брокколи, бутерброд, чипсы, торт
здоровая пища: яйцо, каша, омлет, брокколи

Хороший завтрак: яйцо, брокколи

✍ Решение:

    Обычное решение
    1
    2
    3
    4
    5
    6
    7
    
    healthy = ["яйцо", "каша","омлет","брокколи"]
    breakfast = ["яйцо","брокколи","бутерброд","чипсы","торт"]
    for i in breakfast:
        if i in healthy:
            print(i)
    # яйцо
    # брокколи
    Короткий запрос
    1
    2
    3
    4
    
    healthy = ["яйцо", "каша","омлет","брокколи"]
    breakfast = ["яйцо","брокколи","бутерброд","чипсы","торт"]
    print([i for i in breakfast if i in healthy])
    # ['яйцо', 'брокколи']

    Или с созданием нового списка:

    Обычное решение
    1
    2
    3
    4
    5
    6
    7
    8
    
    healthy = ["яйцо", "каша","омлет","брокколи"]
    breakfast = ["яйцо","брокколи","бутерброд","чипсы","торт"]
    healthy_breakfast=[]
    for i in breakfast:
        if i in healthy:
            healthy_breakfast.append(i)
    print(healthy_breakfast)
    # ['яйцо', 'брокколи']
    Короткий запрос
    1
    2
    3
    4
    5
    6
    
    healthy = ["яйцо", "каша","омлет","брокколи"]
    breakfast = ["яйцо","брокколи","бутерброд","чипсы","торт"]
    healthy_breakfast=[]
    healthy_breakfast[:] = [i for i in breakfast if i in healthy]
    print(healthy_breakfast)
    # ['яйцо', 'брокколи']

Задание: Определить, что выведет программа:

a=0
n=10
for i in range(1,n+1,2):
    a=a+1
    if a==5:
        continue
    print (a)
    if a==7:
        break
print ("всё!")

Задание Python 2_5: Составить программу для вычисления среднего арифметического N произвольных вводимых чисел.

Пример вывода:

Введите количество чисел:
6 
Введите числа:
-5  4  12  9  7  2
результат:  4,83

Задание Python 2_6: Исправить предыдущее задание (2_5) для работы со случайными числами.

Задание Python 2_7:
Найдите все трёхзначные и четырёхзначные числа Армстронга.

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

Задание Python 2_8:
Напишите программу, которая запрашивает натуральное число N и выводит на экран все автоморфные числа, не превосходящие N.

Автоморфным называется натуральное число, если оно равно последним цифрам своего квадрата. Например, 252 = 625.

Задание Python 2_9:
Напишите программу, которая из заданного списка с целочисленными значениями выбирает только те значения, которые есть во втором списке. Решить двумя способами: обычное решение и с помощью запроса.

Примерный вывод:

первый =  [1, 4, 6, 2, 10, 15, 20]  
второй =  [30, 1, 15, 20, 25]
результат = [1, 15, 20]

Цикл for in при работе с множеством значений

Цикл удобно применять при работе с кортежами, списками, строками и диапазонами.

Кортеж — тип данных

Пример: Вывести на экран цвета радуги с их порядковыми номерами:

1-й цвет радуги - это красный
...

✍ Решение:
 

i = 1
for color in 'красный', 'оранжевый', 'желтый', 'зеленый', 'голубой', 'синий', 'фиолетовый':
    print(i,'-й цвет радуги - это ', color)
    i += 1

  
Другой вариант работы со счетчиком цикла:

for i in 1,2,3,'one','two','three':
                print(i)

При первых трех итерациях цикла переменная i будет принимать значение типа int, при последующих трех — типа str.

Еще примеры:

name = "Ivan"
 
for letter in name:
    print(letter)
# I
# v
# a
# n

Задание Python 2_10: Распечатывать дни недели с их порядковыми номерами. Кроме того, рядом выводить выходной ли это день или рабочий. Использовать кортеж.

1-й день недели - понедельник, рабочий день
...

Добавить комментарий