Переделать паскаль в питон
- n — исходное число,
- sum — сумма четных чисел.
var
n: longint;
sum: integer;
begin
readln(n);
sum := 0;
while n > 0 do begin
if n mod 10 mod 2 = 0 then
sum := sum + n mod 10;
n := n div 10;
end;
writeln(sum);
end.
Qwertiy♦
121k24 золотых знака121 серебряный знак291 бронзовый знак
задан 2 мар 2021 в 12:03
5
Вроде как-то так:
print(sum(x for x in map(int, input()) if not (x & 1)))
ответ дан 2 мар 2021 в 12:12
Qwertiy♦Qwertiy
121k24 золотых знака121 серебряный знак291 бронзовый знак
print("Введите n")
n = int(input())
sum = 0
while n > 0:
if n % 10 % 2 == 0:
sum += n % 10
n //= 10
print(sum)
ответ дан 2 мар 2021 в 12:23
Aimon Z.Aimon Z.
1,0457 серебряных знаков20 бронзовых знаков
1
Еще вариант:
a = "1234567890588"
b = sum(int(i) for i in a if ord(i) % 2 == 0)
print(a, b)
Вывод:
1234567890588 36
Или одной строкой:
print(sum(int(i) for i in input() if ord(i) % 2 == 0))
дополнительный вариант:
print(sum(int(i) for i in input() if i in "2468"))
ответ дан 2 мар 2021 в 12:34
TigerTV.ruTigerTV.ru
3,1851 золотой знак10 серебряных знаков21 бронзовый знак
The following article shows how given an integer list, we can produce the sum of all its odd and even digits.
Input : test_list = [345, 893, 1948, 34, 2346] Output : Odd digit sum : 36 Even digit sum : 40 Explanation : 3 + 5 + 9 + 3 + 1 + 9 + 3 + 3 = 36, odd summation.
Input : test_list = [345, 893] Output : Odd digit sum : 20 Even digit sum : 12 Explanation : 4 + 8 = 12, even summation.
Method 1 : Using loop, str() and int()
In this, we first convert each element to string and then iterate for each of its element, and add to respective summation by conversion to integer.
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
print
(
"The original list is : "
+
str
(test_list))
odd_sum
=
0
even_sum
=
0
for
sub
in
test_list:
for
ele
in
str
(sub):
if
int
(ele)
%
2
=
=
0
:
even_sum
+
=
int
(ele)
else
:
odd_sum
+
=
int
(ele)
print
(
"Odd digit sum : "
+
str
(odd_sum))
print
(
"Even digit sum : "
+
str
(even_sum))
Output
The original list is : [345, 893, 1948, 34, 2346] Odd digit sum : 36 Even digit sum : 40
Time Complexity: O(n*n) where n is the length of the input list test_list, and m is the maximum number of digits in any element of the list.
Auxiliary Space:The auxiliary space complexity of this program is O(1), because the program uses a constant amount of extra space to store the odd_sum and even_sum variables, regardless of the size of the input list.
Method 2: Using loop and sum()
In this, we perform task of getting summation using sum(), and loop is used to perform the task of iterating through each element.
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
print
(
"The original list is : "
+
str
(test_list))
odd_sum
=
0
even_sum
=
0
for
sub
in
test_list:
odd_sum
+
=
sum
([
int
(ele)
for
ele
in
str
(sub)
if
int
(ele)
%
2
=
=
1
])
even_sum
+
=
sum
([
int
(ele)
for
ele
in
str
(sub)
if
int
(ele)
%
2
=
=
0
])
print
(
"Odd digit sum : "
+
str
(odd_sum))
print
(
"Even digit sum : "
+
str
(even_sum))
Output
The original list is : [345, 893, 1948, 34, 2346] Odd digit sum : 36 Even digit sum : 40
Time complexity: O(N * M).
Auxiliary space: O(1).
Method 3: Using list comprehension
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
odd_sum
=
0
even_sum
=
0
odd_sum
+
=
sum
([
int
(ele)
for
sub
in
test_list
for
ele
in
str
(sub)
if
int
(ele)
%
2
=
=
1
])
even_sum
+
=
sum
([
int
(ele)
for
sub
in
test_list
for
ele
in
str
(sub)
if
int
(ele)
%
2
=
=
0
])
print
(
"Odd digit sum : "
+
str
(odd_sum))
print
(
"Even digit sum : "
+
str
(even_sum))
Output
Odd digit sum : 36 Even digit sum : 40
Time complexity: O(nm).
Auxiliary space: O(1).
Method 4: Using the enumerate function
Python3
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
odd_sum
=
0
even_sum
=
0
odd_sum
+
=
sum
([
int
(ele)
for
i, sub
in
enumerate
(test_list)
for
ele
in
str
(sub)
if
int
(ele)
%
2
=
=
1
])
even_sum
+
=
sum
([
int
(ele)
for
i, sub
in
enumerate
(test_list)
for
ele
in
str
(sub)
if
int
(ele)
%
2
=
=
0
])
print
(
"Odd digit sum : "
+
str
(odd_sum))
print
(
"Even digit sum : "
+
str
(even_sum))
Output
Odd digit sum : 36 Even digit sum : 40
The time complexity of the given program is O(n*k), where n is the number of elements in the list and k is the maximum number of digits in any element of the list.
The space complexity of the given program is O(1) because it uses a constant amount of extra space regardless of the size of the input.
Method 5: Using recursion
Python3
def
digit_sum(sub, even_sum, odd_sum):
if
not
sub:
return
(even_sum, odd_sum)
else
:
ele
=
sub.pop()
if
int
(ele)
%
2
=
=
0
:
even_sum
+
=
int
(ele)
else
:
odd_sum
+
=
int
(ele)
return
digit_sum(sub, even_sum, odd_sum)
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
print
(
"The original list is : "
+
str
(test_list))
even_sum
=
0
odd_sum
=
0
for
sub
in
test_list:
sub
=
list
(
str
(sub))
even_sum, odd_sum
=
digit_sum(sub, even_sum, odd_sum)
print
(
"Odd digit sum : "
+
str
(odd_sum))
print
(
"Even digit sum : "
+
str
(even_sum))
Output
The original list is : [345, 893, 1948, 34, 2346] Odd digit sum : 36 Even digit sum : 40
Time Complexity: O(n)
Auxiliary Space: O(n)
Approach: Iterative Digit Summing Approach
Steps:
- Initialize two variables, even_sum and odd_sum, to 0.
- Iterate over each number in the list using a while loop until the number becomes 0.
- Extract the last digit of the number using modulo operator and add it to even_sum if it is even, else add it to odd_sum.
- Remove the last digit from the number using integer division operator.
- Return both even_sum and odd_sum.
Python3
def
sum_of_even_odd_digits(test_list):
even_sum
=
0
odd_sum
=
0
for
num
in
test_list:
while
num !
=
0
:
digit
=
num
%
10
if
digit
%
2
=
=
0
:
even_sum
+
=
digit
else
:
odd_sum
+
=
digit
num
/
/
=
10
return
even_sum, odd_sum
test_list
=
[
345
,
893
,
1948
,
34
,
2346
]
even_sum, odd_sum
=
sum_of_even_odd_digits(test_list)
print
(
"Odd digit sum :"
, odd_sum)
print
(
"Even digit sum :"
, even_sum)
Output
Odd digit sum : 36 Even digit sum : 40
Time Complexity: O(n * d), where n is the number of elements in the list and d is the maximum number of digits in any number in the list.
Auxiliary Space: O(1)
Last Updated :
04 Apr, 2023
Like Article
Save Article
На Питоне давно ничего не писал. Но, как мне кажется, это довольно простой и понятный вариант.
В цикл попадает, например, число «345».
Берём «5», проверяем. Не совпало, идём дальше.
Делаем целочисленное деление числа «345» на 10.
Остаётся «34», которое дальше заходит в цикл.
Берём «4», проверяем и т.д.
Python | ||
|
GolovolomkaTV
+100
Решено
1 год назад
Информатика
Студенческий
PYTHON
вводится натуральное число найти сумму четных цифр входящих в его состав
Смотреть ответ
Ответ
0
(0 оценок)
0
magomedhanovasamira2
1 год назад
Светило науки — 13 ответов — 0 раз оказано помощи
Ответ:
n = list(map(int, input()))
summ = 0
for i in n:
if i % 2 == 0:
summ += i
print(summ)
(0 оценок)
Ответ
0
(0 оценок)
0
NightCATBusya
1 год назад
Светило науки — 65 ответов — 0 раз оказано помощи
a = input()
k = 0
for i in a:
if int(i) % 2 == 0:
k += int(i)
print(k)
(0 оценок)
Остались вопросы?
Задай вопрос
Найди нужный
Новые вопросы по предмету Математика
На python.сделать из реальной жизни пример словаря где значение по ключу будет являться коретежем и сделать логику на 10+ строк по работе с э …
помогите пожалуйста
Идея для проекта Python Подкиньте идей для программы, проекта на языке программирования Python. Нужно что-то не очень сложное, актуальное, не б …
сделать из реальной жизни пример словаря где значение по ключу будет являться кортежем и сделать логику на 10+ строк по работе с этим словарё …
помогите пожалуйста информатику программирование пайтон
https://vashotvet.com/task/14069461
Размещено 11 месяцев назад по предмету
Информатика
от GolovolomkaTV
-
Ответ на вопрос
Ответ на вопрос дан
magomedhanovasamira2Ответ:
n = list(map(int, input()))
summ = 0
for i in n:
if i % 2 == 0:
summ += i
print(summ)
-
Ответ на вопрос
Ответ на вопрос дан
NightCATBusyaa = input()
k = 0
for i in a:
if int(i) % 2 == 0:
k += int(i)
print(k)
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
Математика — 3 года назад
Сколько здесь прямоугольников
История — 3 года назад
Какое управление было в древнейшем риме? как звали первого и последнего из царей рима?
Литература — 3 года назад
Уроки французского ответе на вопрос : расскажите о герое по следующему примерному плану: 1.почему мальчик оказался в райцентре ? 2.как он чувствовал себя на новом месте? 3.почему он не убежал в деревню? 4.какие отношения сложились у него с товарищами? 5.почему он ввязался в игру за деньги? 6.как характеризуют его отношения с учительницей ? ответе на эти вопросы пожалуйста ! сочините сочинение пожалуйста
Русский язык — 3 года назад
Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса
1. укажите личное местоимение:
1) некто
2) вас
3) ни с кем
4) собой
2. укажите относительное местоимение:
1) кто-либо
2) некоторый
3) кто
4) нам
3. укажите вопросительное местоимение:
1) кем-нибудь
2) кем
3) себе
4) никакой
4. укажите определительное местоимение:
1) наш
2) который
3) некий
4) каждый
5. укажите возвратное местоимение:
1) свой
2) чей
3) сам
4) себя
6. найдите указательное местоимение:
1) твой
2) какой
3) тот
4) их
7. найдите притяжательное местоимение:
1) самый
2) моего
3) иной
4) ничей
8. укажите неопределённое местоимение:
1) весь
2) какой-нибудь
3) любой
4) этот
9. укажите вопросительное местоимение:
1) сколько
2) кое-что
3) она
4) нами
10. в каком варианте ответа выделенное слово является притяжательным местоимением?
1) увидел их
2) её нет дома
3) её тетрадь
4) их не спросили
Русский язык — 3 года назад
Переделай союзное предложение в предложение с бессоюзной связью.
1. океан с гулом ходил за стеной чёрными горами, и вьюга крепко свистала в отяжелевших снастях, а пароход весь дрожал.
2. множество темноватых тучек, с неясно обрисованными краями, расползались по бледно-голубому небу, а довольно крепкий ветер мчался сухой непрерывной струёй, не разгоняя зноя
3. поезд ушёл быстро, и его огни скоро исчезли, а через минуту уже не было слышно шума
Русский язык — 3 года назад
помогите прошу!перепиши предложения, расставляя недостающие знаки препинания. объясни, что соединяет союз и. если в предложении один союз и, то во втором выпадающем списке отметь «прочерк».пример:«я шёл пешком и,/поражённый прелестью природы/, часто останавливался».союз и соединяет однородные члены.ночь уже ложилась на горы (1) и туман сырой (2) и холодный начал бродить по ущельям.союз и соединяет:1) части сложного предложенияоднородные члены,2) однородные членычасти сложного предложения—.поэт — трубач зовущий войско в битву (1) и прежде всех идущий в битву сам (ю. янонис).союз и соединяет:1) части сложного предложенияоднородные члены,2)
Физика — 3 года назад
Вокруг прямого проводника с током (смотри рисунок) существует магнитное поле. определи направление линий этого магнитного поля в точках a и b.обрати внимание, что точки a и b находятся с разных сторон от проводника (точка a — снизу, а точка b — сверху). рисунок ниже выбери и отметь правильный ответ среди предложенных.1. в точке a — «от нас», в точке b — «к нам» 2. в точке a — «к нам», в точке b — «от нас» 3. в обеих точках «от нас»4. в обеих точках «к нам»контрольная работа по физике.прошу,не наугад важно
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Что ты хочешь узнать?
Задай вопрос
Все науки
Русский яз.
Литература
Математика
Алгебра
Геометрия
Английский яз.
Немецкий яз.
Українська мова
Українська література
Беларуская мова
Қазақ тiлi
Французский яз.
Кыргыз тили
Оʻzbek tili
Биология
Химия
Физика
История
Окружающий мир
Обществознание
ОБЖ
География
Информатика
Экономика
Музыка
Право
МХК
Психология
Астрономия
Физкультура и спорт
Другие предметы
Сайт znanija.org не имеет отношения к другим сайтам и не является официальным сайтом компании.
- Сайт
- Главная страница
- Напиши свой вопрос
- Кабинет
- Вход в личный кабинет
- Регистрация на сайте