2 задачи, не успеваю вернуться к уроку

dopedod

Новичок
Пользователь
Янв 10, 2023
1
0
1
Ребята, спасибо огромное всем кто откликнется, все супер! Посидел бы сам сделал но 2 дня в дороге туда сюда
1. Посчитать, сколько раз встречается определенная цифра в числах. Количество
введенных чисел и искомая цифра задаются с клавиатуры. Числа выбираются
рандомно.
2. С клавиатуры вводится 7 значное число. Если четных цифр в нем больше, чем
нечетных, то найти сумму всех его цифр, если нечетных больше, то найти
произведение 1 3 и 6 цифры.
 

s591962

Новичок
Пользователь
Окт 12, 2021
92
2
8
Ответ на второй вопрос:
Код:
mch = 0
mnch = 0
sum = 0
n = input('введите семизначное число')
if len(n) == 7:
    for i in n:
        if int(i) % 2 == 0:
            mch = mch +1
        else:
            mnch = mnch +1

    if mch > mnch:
        for i in n:
            sum = sum + int(i)
        print ('четных больше, сумма =', sum)
    else:
        work = int(n[0]) * int(n[2]) * int(n[5]) 
        print ('нечетных больше, произведение =',work)
    
else:
    print('число не равно 7')
 

s591962

Новичок
Пользователь
Окт 12, 2021
92
2
8
Ответ на первый вопрос
Код:
import random
chislo = 0

n = input('введите несколько чисел, разделяя их пробелами')
sp = n.split()# получаем список введеных чисел
d =random.randrange(len(sp)) #определяем число в котором ищем искомое число
m = int(input('введите искомое число'))
for ch in sp[d]:
    if m == int(ch):
        chislo = chislo + 1

print('встречается ', chislo, ' раз')
 

4olshoy_blen

Активный пользователь
Пользователь
Ноя 13, 2022
137
32
28
не хорошо использовать зарезервированные слова

ой как не красиво🧐, есть же более питоновский способ это сделать, не повторяя имя переменной
chislo += 1

print('встречается ', chislo, ' раз')
про f-строки мы тоже не слышали😀
print(f'встречается {chislo} раз')

Вторую можно сократить
Python:
n = input('Введите семизначное число: ')

if len(n) == 7:
    if sum(1 for i in n if int(i) & 1) > 3:
        prod_of_num = int(n[0]) * int(n[2]) * int(n[5])
        print(f'нечетных больше, произведение 1, 3 и 6 цифры = {prod_of_num}')
    else:
        sum_of_num = sum(int(i) for i in n)
        print(f'четных больше, сумма = {sum_of_num}')
else:
    print('Число не семизначное')
 
  • Мне нравится
Реакции: regnor

Форум IT Специалистов