Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 5, 2011 06:55:59

AlexDos
От:
Зарегистрирован: 2011-10-05
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите решить задачку

Задачка-легкая (проблема в том, что не пойму как вводить несколько переменных которые после начала работы программы будут предоставлены пользователю на ввод) *Решение этой задачи объяснит мне многое.

Витя подключен к интернет по следующему тарифному плану. Ежемесячная абонентская плата составляет
А рублей, и в эту абонентскую плату включено В мегабайт трафика. Неизрасходованные мегабайты в конце
месяца «сгорают». Если трафик превышает В мегабайт, то каждый мегабайт трафика сверх предоплаченных
стоит С рублей.
Известно, что за прошлый месяц Витя израсходовал D мегабайт трафика. Определите, во сколько обошелся ему
доступ в интернет в прошлом месяце (считая в том числе и абонентскую плату)?
Входные данные. Вводятся четыре натуральных числа А, В, С, D. Все числа не превышают 100.
Выходные данные. Выведите одно число — сумму (в рублях), которую Витя должен заплатить за интернет



Офлайн

#2 Окт. 5, 2011 09:28:11

krot
От:
Зарегистрирован: 2011-07-03
Сообщения: 18
Репутация: +  1  -
Профиль   Отправить e-mail  

Помогите решить задачку

Примерно так

#! /usr/bin/env python
# -*- coding: utf-8 -*-

A = input('A = ')
B = input('B = ')
C = input('C = ')
D = input('D = ')

if D <= B:
print 'Сумма = %d' % A
else:
print 'Cумма = ', A + (D - B) * C
Этот вариант для Python 2.x



Отредактировано (Окт. 5, 2011 09:32:10)

Офлайн

#3 Окт. 5, 2011 13:07:12

AlexDos
От:
Зарегистрирован: 2011-10-05
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите решить задачку

там доп.условие что а,b,c,d <=100



Офлайн

#4 Окт. 5, 2011 13:37:41

krot
От:
Зарегистрирован: 2011-07-03
Сообщения: 18
Репутация: +  1  -
Профиль   Отправить e-mail  

Помогите решить задачку

#! /usr/bin/env python
# -*- coding: utf-8 -*-

while True:
A = input('A = ')
B = input('B = ')
C = input('C = ')
D = input('D = ')
if A <= 100 and B <= 100 and C <= 100 and D <= 100:
if D <= B:
print 'Сумма = %d' % A
break
else:
print 'Cумма = ', A + (D - B) * C
break
else:
print 'Введено неверное значение.'



Офлайн

#5 Окт. 6, 2011 02:58:56

Virtuos86
От:
Зарегистрирован: 2010-11-17
Сообщения: 33
Репутация: +  1  -
Профиль   Отправить e-mail  

Помогите решить задачку

Проверять лучше каждый ввод данных. А то кто-нибудь ошибется в A, а один фиг придется остальные три параметра вводить или хотя бы энтером клацать. Не юзерфрендли :).
А ещё лучше
A, B, C, D = input('A B C D: ')
А может и не лучше.



Офлайн

#6 Окт. 6, 2011 09:09:41

krot
От:
Зарегистрирован: 2011-07-03
Сообщения: 18
Репутация: +  1  -
Профиль   Отправить e-mail  

Помогите решить задачку

Virtuos86
Проверять лучше каждый ввод данных. А то кто-нибудь ошибется в A, а один фиг придется остальные три параметра вводить или хотя бы энтером клацать. Не юзерфрендли :).
Ну так можно ещё и обработку исключений сделать. :D
Вообще то, это всего лишь пример, а уж как решать задачку пусть ТС сам думает.

P.S. Да, и по поводу юзерфрендли
Virtuos86
А ещё лучше
A, B, C, D = input('A B C D: ')
уж совсем не юзерфрендли.
Правильнее было бы вообще расписывать каждый ввод данных
A = input('Абонентская плата составляет: ')
и т.д.



Отредактировано (Окт. 6, 2011 09:29:42)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version