akaVeta
информатика.....методика.....программирование
методист МКУ ИМЦ г. Комсомольска - на - Амуре - Кондратьева Вета
Вложенные циклы
Задача 1. Наименьший делитель
На вход программе подается число n. Напишите программу, которая выводит его наименьший отличный от 1 делитель.
n = int(input())
for i in range(2, n + 1):
if n % i == 0:
break
print(i)
Задача 2. Следуй правилам
На вход программе подается натуральное число n. Напишите программу, которая выводит числа от 11 до n включительно за исключением:
чисел от 55 до 99 включительно;
чисел от 1717 до 3737 включительно;
чисел от 7878 до 8787 включительно.
a=int(input())
for i in range (1, a+1):
if i in range (5,10) or i in range (17,38) or i in range (78,88):
continue
print (i)
Задача 3. Таблица-1
Дано натуральное число n Напишите программу, которая печатает таблицу размером n×3n×3, состоящую из данного числа (числа отделены одним пробелом).
a=int(input())
for i in range (1):
for j in range (a):
print(a,a,a)
Задача 4. Таблица-2
Дано натуральное число n Напишите программу, которая печатает таблицу размером n×5n×5, где в i-ой строке указано число i (числа отделены одним пробелом).
a=int(input())
for i in range(1,a+1):
for j in range (5):
print (i, end=' ')
print()
Задача 5. Таблица-3
Дано натуральное число n . Напишите программу, которая печатает таблицу сложения для всех чисел от 11 до n (включительно).
a=int(input())
for i in range(1,a+1):
for j in range (1,9+1):
print (i, "+", j, "=", i+j )
print()
Задача 6. Звездный треугольник
Дано нечетное натуральное число n. Напишите программу, которая печатает равнобедренный звездный треугольник с основанием, равным n :
n = int(input())
centr = n // 2 + 1
count = 0
for i in range(1, n + 1):
if i > centr:
count -= 1
else:
count += 1
for _ in range(count):
print('*', end='')
print()
Задача 7. Численный треугольник
Дано натуральное число n. Напишите программу, которая печатает численный треугольник
n = int(input())
for i in range(1, n + 1):
for j in range(i):
print(i, end='')
print()
Задача 8. Старинная задача
Имеется 100100 рублей. Сколько быков, коров и телят можно купить на все эти деньги, если плата за быка – 1010 рублей, за корову – 55 рублей, за теленка – 0.50.5 рубля и надо купить 100100 голов скота?
for b in range (1, 100//10+1):
for k in range(1, 100//5+1):
t = 100-b-k
if b*10+k*5+t*0.5 == 100:
print("быки:", b, "коровы:", k, "телята:", t);
Задача 9.Гипотеза Эйлера о сумме степеней
В 17691769 году Леонард Эйлер сформулировал обобщенную версию Великой теоремы Ферма, предполагая, что по крайней мере n энных степеней необходимо для получения суммы, которая сама является энной степенью для n>2n>2. Напишите программу для опровержения гипотезы Эйлера (продержавшейся до 19671967 года) и найдите четыре положительных целых числа, сумма 55-х степеней которых равна 55-й степени другого положительного целого числа.
p = [x ** 5 for x in range(151)]
pw = set(p)
for a in range(1, 151):
for b in range(a, 151):
for c in range(b, 151):
for d in range(c, 151):
s = p[a] + p[b] + p[c] + p[d]
if s in pw:
print(a, b, c, d, p.index(s))
print(a + b + c + d + p.index(s))
Задача 10.Численный треугольник 2
Дано натуральное число n. Напишите программу, которая печатает численный треугольник с высотой равной n.
a=int(input())
k=0
for i in range(1,a+1):
for j in range (i):
k+=1
print (k, end=' ')
print()
Задача11.Численный треугольник 3
Дано натуральное число n. Напишите программу, которая печатает численный треугольник с высотой равной n.
a=int(input())
k=0
for i in range(1,a+1):
for j in range (i):
print (j+1, end='')
for k in range (i-1,0,-1):
print (k, end='')
print()
Задача 12.Делители-1
На вход программе подается два натуральных числа a и b Напишите программу, которая находит натуральное число из отрезка [a;b] с максимальной суммой делителей и сумму его делителей. Если таких чисел несколько, то выведите наибольшее из них.
a , b = int(input()), int(input())
total_maximum = 0
digit = 0
for i in range(a, b + 1):
maximum = 0
for j in range(1, i + 1):
if i % j == 0:
maximum += j
if maximum >= total_maximum:
total_maximum = maximum
digit = j
Задача 13.Делители-2
На вход программе подается натуральное число n. Напишите программу, выводящую графическое изображение делимости чисел от 11 до n включительно. В каждой строке надо напечатать очередное число и столько символов «+», сколько делителей у этого числа.
n=int(input())
for i in range (1, n+1):
print (i,end='')
for j in range (1, i+1):
if i%j==0:
print ("+", end='')
print()
Задача 14.Цифровой корень
На вход программе подается натуральное число n. Напишите программу, которая находит цифровой корень данного числа. Цифровой корень числа n получается следующим образом: если сложить все цифры этого числа, затем все цифры найденной суммы и повторять этот процесс до тех пор, пока в результате не будет получено однозначное число (цифра), которое и называется цифровым корнем изначального числа.
n=int(input())
while n > 9:
s = 0
while (n > 0):
last_digit = n % 10
s += last_digit
n = n // 10
n = s
print(n)
Задача 15.Сумма факториалов
Дано натуральное число n. Напишите программу, которая выводит значение суммы 1!+2!+3!+…+!1!+2!+3!+…+n!.
n = int(input())
sum = 0
factorial = 1
for i in range(1, n+1):
for j in range(1, i+1):
factorial *= j
sum += factorial
factorial = 1
print(sum)
Задача 16.Простые числа
На вход программе подается два натуральных числа a и b. Напишите программу, которая находит все простые числа от a до b включительно.
a, b, = int(input()), int(input())
for i in range(a, b + 1):
if i == 1:
continue
for j in range(2, i):
if i % j == 0:
break
else:
print(i)
Задача 17.Звездная рамка
На вход программе подается натуральное число n. Напишите программу, которая печатает звездную рамку размерами n×19n×19.
n=int(input())
for i in range (1, n+1):
if i==1 or i ==n:
print ("*"*19)
else:
print ("*" + " " * 17 + "*")
Задача 18.Все вместе 2
Дано натуральное число. Напишите программу, которая вычисляет:
< >количество цифр 33 в нем;сколько раз в нем встречается последняя цифра;количество четных цифр;сумму его цифр, больших пяти;произведение цифр, больших семи (если цифр больших семи нет, то вывести 11, если такая цифра одна, то вывести ее);сколько раз в нем встречаются цифры 00 и 55 (всего суммарно).
num = int(input())
cifra3=0
posl_cifra=num%10
count_posl_cifra=0
count_chet_cifr=0
sum_cifr5=0
proiz_cifr7=1
count_0_5=0
while num!=0:
last_digit = num % 10
if last_digit==3:
cifra3+=1
if last_digit==posl_cifra:
count_posl_cifra+=1
if last_digit%2==0:
count_chet_cifr+=1
if last_digit>5:
sum_cifr5+=last_digit
if last_digit>7:
proiz_cifr7*=last_digit
if last_digit==0 or last_digit==5:
count_0_5+=1
num = num // 10
print(cifra3)
print(count_posl_cifra)
print(count_chet_cifr)
print(sum_cifr5)
print(proiz_cifr7)
print(count_0_5)