Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 12.11.2022
Сообщений: 7

Приложение, осуществляющее расчёт стоимости покупок

08.03.2023, 17:59. Показов 3234. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Очень нужна помощь! Застряла на середине программы . Не понимаю как мне рассчитать стоимость выбранных товаров из Listbox.
Само задание звучит так: разработайте приложение, осуществляющее расчет стоимости покупок. Приложение должно предоставить покупателю возможность выбора одного или нескольких товаров из списка и провести расчет стоимости выбранных товаров. Также должна быть предусмотрена скидка 3%, от общей стоимости покупки для покупателей, имеющих карту.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import tkinter
from tkinter import *
root = tkinter.Tk()
root.geometry("236x400")
root.title("Карандаш")
 
label = tkinter.Label(root, text="Список товаров")
label.grid(row=0, column=0)
 
def list():
    fh= open('list.txt', encoding = "utf-8")
    Is_text = fh.readlines()
    fh.close()
 
    Is_prod = [st.rstrip() for st in Is_text]
    Ix_Menu.delete(0, tkinter.END)
    for prod in Is_prod:
        Ix_Menu.insert(tkinter.END, prod)
 
tkinter.Button(root, text="Загрузить", command = list).grid(row=1, column=0)
 
Ix_Menu = tkinter.Listbox(root, width=30, height=10, selectmode=MULTIPLE)
Ix_Menu.grid(row=2, column=0)
 
yscroll = tkinter.Scrollbar(command=Ix_Menu.yview, orient=tkinter.VERTICAL)
yscroll.grid(row=2, column=1,rowspan=14, sticky=tkinter.N+tkinter.S)
Ix_Menu.configure(yscrollcommand = yscroll.set)
 
# цены на каждый товар 
fh= open('list.txt', encoding = "utf-8")
a = str(fh.read(41))
b=str(fh.read(40))
c=str(fh.read(38))
d=str(fh.read(35))
e=str(fh.read(37))
f=str(fh.read(29))
g=str(fh.read(38))
h=str(fh.read(39))
i=str(fh.read(35))
j=str(fh.read(38))
k=str(fh.read(35))
l=str(fh.read(39))
 
pen = (b[37:40])
workb= (c[35:38])
penc = (d[32:35])
penshar = (e[34:37])
eraser = (f[26:29])
notebk = (g[34:38])
pen_bx = (h[35:39])
correc = (i[32:35])
ruler = (j[35:38])
highlt = (k[32:35])
tape = (l[35:39])
 
 #def account():
        #не знаю, посчитать сумму цен выбранных товаров
button1 = tkinter.Button(root, text="Рассчитать", command = account1).grid(row=4, column=0)
 
def discount():
    #def account():
        #не знаю, посчитать сумму цен выбранных товаров
    button3 = tkinter.Button(root, text="Рассчитать", command = account).grid(row=5, column=0)
 
button2 = tkinter.Button(root, text="Есть скидочная карта", command = discount).grid(row=3, column=0)
 
root.mainloop()
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.03.2023, 17:59
Ответы с готовыми решениями:

Разработать консольное приложение, осуществляющее расчёт значения функции в заданной точке
Разработать консольное приложение, осуществляющее расчёт значения функции в заданной точке. Аргумент функции задаётся с консоли, результат...

Разработать приложение, которое позволяет произвести расчет стоимости пластикового окна
разработать приложение которое позволяет произвести расчет стоимости пластикового окна c# Данные: ширина,высота,фурнитура для вывода...

Вычисление стоимости покупок
Произвести подсчёт следующей покупки: 3 тетради в клетку по 10 копеек, 5 тетрадей в линейку по 2 рубля, 2 линейки по рубль 50 копеек....

4
 Аватар для TimutGin
515 / 339 / 146
Регистрация: 16.02.2021
Сообщений: 626
08.03.2023, 20:59
Немогли бы пример содержания list.txt написать?
0
0 / 0 / 0
Регистрация: 12.11.2022
Сообщений: 7
08.03.2023, 21:20  [ТС]
Товар Цена
Ручка 21
Тетрадь 48
Карандаш 15
Точилка 35
Стирательная резинка 43
Блокнот 156
Пенал 204
Корректор 57
Линейка 62
Выделитель 78
Скотч 154
0
 Аватар для TimutGin
515 / 339 / 146
Регистрация: 16.02.2021
Сообщений: 626
08.03.2023, 23:48
Проблема только со стирательной резинкой,остальное впринципе считает

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import tkinter
from tkinter import *
root = tkinter.Tk()
root.geometry("236x400")
root.title("Карандаш")
 
label = tkinter.Label(root, text="Список товаров")
label.grid(row=0, column=0)
label2 = tkinter.Label(root, text="")
label2.grid(row=5, column=0)
 
 
def list():
    fh= open('list.txt', encoding = "utf-8")
    Is_text = fh.readlines()
    fh.close()
    Is_prod = [st.rstrip() for st in Is_text]
    Ix_Menu.delete(0, tkinter.END)
    for prod in Is_prod:
        Ix_Menu.insert(tkinter.END, prod)
 
tkinter.Button(root, text="Загрузить", command = list).grid(row=1, column=0)
Ix_Menu = tkinter.Listbox(root, width=30, height=10, selectmode=MULTIPLE)
Ix_Menu.grid(row=2, column=0)
 
yscroll = tkinter.Scrollbar(command=Ix_Menu.yview, orient=tkinter.VERTICAL)
yscroll.grid(row=2, column=1,rowspan=14, sticky=tkinter.N+tkinter.S)
Ix_Menu.configure(yscrollcommand = yscroll.set)
 
def account(Skid):
    summ = 0
    if Skid == 1:
        for i in Ix_Menu.curselection():
            elem = Ix_Menu.get(i).split()
            summ += int(elem[1])
        label2["text"] = f"Со скидкой: {summ*(1-3/100)}"
            
    else:
        for i in Ix_Menu.curselection():
            elem = Ix_Menu.get(i).split()
            summ += int(elem[1])
        label2["text"] = f"Без скидки: {summ}"
    
def discount():
    account(1)
def nodiscount():
    account(2)
    
button1 = tkinter.Button(root, text="Рассчитать", command = nodiscount).grid(row=3, column=0) 
button2 = tkinter.Button(root, text="Есть скидочная карта", command = discount).grid(row=4, column=0)
 
root.mainloop()
0
 Аватар для TimutGin
515 / 339 / 146
Регистрация: 16.02.2021
Сообщений: 626
09.03.2023, 09:26
Python
1
summ += int(elem[-1])
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.03.2023, 09:26
Помогаю со студенческими работами здесь

Создать приложение, осуществляющее доход по вкладу.
Создать приложение, осуществляющее доход по вкладу. Программа должна обеспечить расчёт простых и сложных процентов. Простые проценты...

Определение динамики стоимости покупок
Добрый день, помогите пожалуйста с SQL запросом Запрос должен формировать таблицу с полями «Покупатель», «Год», «Расхождение с...

Составить консольное приложение, осуществляющее сортировку вставками
Программа должна считывать данные из файла и сортировать по возрастанию числа, результаты сортировки должна выводить в файл. При этом...

Программа для расчета стоимости покупок
Разработайте приложение, которое позволяет рассчитать общую стоимость товаров, купленных в супермаркете. Пользователь должен вводить...

Вычисление общей стоимости всех покупок
Вы посетили магазин и купили 10 видов товара. В таблицу T вы записали количество купленного товара каждого вида. В таблицу C записали цены...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru