Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Центр помощи
  • » Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа. [RSS Feed]

#1 Окт. 7, 2013 21:37:10

morgan6206
Зарегистрирован: 2013-10-07
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа.

Нужно написать программу с использованием цикла while, repeat и for. Начал писать для while:

a=raw_input('Введите число:')
b=0
while a > 0 :
    b= b * 10 + a % 10; 
    a/=10; 
print('Ваш результат:'%f) %b

Выдает ошибку:
Traceback (most recent call last):
File “C…”, line 4, in <module>
b= b * 10 + a % 10;
TypeError: not all arguments converted during string formatting

В чем проблема и как исправить?

Отредактировано morgan6206 (Окт. 7, 2013 21:37:46)

Офлайн

#2 Окт. 7, 2013 21:43:55

Euler
Зарегистрирован: 2013-07-30
Сообщения: 43
Репутация: +  1  -
Профиль   Отправить e-mail  

Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа.

Тут a - это строка, а не число.

Офлайн

#3 Окт. 7, 2013 23:37:56

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа.

morgan6206
вам правильно сказали что “а” это строка. Что бы исправить ситуацию можно либо перевести строку в число int(a), либо использовать не raw_input, а input, но в этом случае нужно будет вводить только число, иначе вылезет ошибка.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#4 Окт. 8, 2013 00:58:56

morgan6206
Зарегистрирован: 2013-10-07
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа.

Euler
Можешь помочь сделать программу с циклом “for”

Офлайн

#5 Окт. 8, 2013 01:21:55

Euler
Зарегистрирован: 2013-07-30
Сообщения: 43
Репутация: +  1  -
Профиль   Отправить e-mail  

Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа.

У меня python 3, но смысл должен быть ясен:

s = input()
#первый вариант
result = 0
for digit in s:
	result += int(digit)
print(result)
#второй вариант
num = int(s)
result = 0
for digit in range(len(s)):
	result += num%10
	num //= 10
print(result)

Отредактировано Euler (Окт. 8, 2013 01:24:57)

Офлайн

#6 Окт. 14, 2013 19:18:02

morgan6206
Зарегистрирован: 2013-10-07
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа.

Всем спасибо!

Офлайн

  • Начало
  • » Центр помощи
  • » Определить число, получаемое выписыванием в обратном порядке цифр заданного натурального числа.[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version