Форум программистов, компьютерный форум, киберфорум
Python: Научные вычисления
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 30
1

Калькулятор

03.10.2016, 02:46. Показов 3444. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я создал калькулятор на пайтоне, помогите с кодом, я не знаю что и как написать, чтобы при закрытии калькулятора в любой момент сохранялись последние действия и когда мы снова открывали его, то мы начинали вычисления с последнего действия.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2016, 02:46
Ответы с готовыми решениями:

Калькулятор
Люди, помогите пожалуйста. Вот мой код с кнопками и полем для ввода данных: from tkinter import...

калькулятор
Мой недокалькулятор: import sys from PyQt5 import QtWidgets from calc import Ui_MainWindow ...

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

Калькулятор
Требуется решить данную задачу, применив динамическое программирование: Имеется калькулятор,...

12
Эксперт Python
4632 / 2050 / 361
Регистрация: 17.03.2012
Сообщений: 10,134
Записей в блоге: 6
03.10.2016, 07:46 2
Сохранять в файл?

Не по теме:

Предложения заканчиваются точкой.

0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 30
03.10.2016, 10:01  [ТС] 3
да, в файл.
0
Эксперт Python
4632 / 2050 / 361
Регистрация: 17.03.2012
Сообщений: 10,134
Записей в блоге: 6
03.10.2016, 10:40 4
Наверное, в вашем случае лучше всего воспользоваться сериализацией через cPickle.
Если там сложные составные объекты. Если просто текст - то просто пишите в файл, проблем нет.
0
2740 / 2339 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
03.10.2016, 10:51 5
А в чем собственно проблема? Что не получается?
0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 30
03.10.2016, 16:01  [ТС] 6
У меня есть код калькулятора, который делает простые вычисление, и я не знаю как сделать чтобы при закрытии калькулятора последние вычисления сохранялись, и когда мы откроем калькулятор то будем начинать с них. Можете пожалуйста кинуть код. Вот код моего калькулятора
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
from tkinter import *
 
class Calcul():
    def __init__(self):
        self.total = 0
        self.current = ""
        self.new_num = True
        self.op_pending = False
        self.op = ""
        self.eq = False
 
 
    def num_press(self, num):
        self.eq = False
        temp = text_box.get()
        temp2 = str(num)
        if self.new_num:
            self.current = temp2
            self.new_num = False
        else:
            if temp2 == '.':
                if temp2 in temp:
                    return
            self.current = temp + temp2
        self.display(self.current)
 
    def calc_total(self):
        self.eq = True
        self.current = float(self.current)
        if self.op_pending == True:
            self.do_sum()
        else:
            self.total = float(text_box.get())
 
    def display(self, value):
        text_box.delete(0, END)
        text_box.insert(0, value)
 
    def do_sum(self):
        if self.op == "add":
            self.total += self.current
        if self.op == "minus":
            self.total -= self.current
        if self.op == "times":
            self.total *= self.current
        if self.op == "divide":
            self.total /= self.current
        self.new_num = True
        self.op_pending = False
        self.display(self.total)
 
    def operation(self, op):
        self.current = float(self.current)
        if self.op_pending:
            self.do_sum()
        elif not self.eq:
            self.total = self.current
        self.new_num = True
        self.op_pending = True
        self.op = op
        self.eq = False
 
    def cancel(self):
        self.eq = False
        self.current = "0"
        self.display(0)
        self.new_num = True
 
 
    def sign(self):
        self.eq = False
        self.current = -(float(text_box.get()))
        self.display(self.current)
 
 
 
 
 
 
sum1 = Calcul()
root = Tk()
calc = Frame(root)
calc.grid()
 
root.title("Calculator")
text_box = Entry(calc, justify=RIGHT,font="Arial 10")
text_box.grid(row = 0, column = 0, columnspan = 4, pady = 1)
text_box.insert(0, "0")
 
numbers = "789456123"
i = 0
bttn = []
for j in range(1,4):
    for k in range(3):
        bttn.append(Button(calc, text = numbers[i],font="Arial 20"))
        bttn[i].grid(row = j, column = k)
        bttn[i]["command"] = lambda x = numbers[i]: sum1.num_press(x)
        i += 1
 
bttn_0 = Button(calc, text = "0",font="Arial 20")
bttn_0["command"] = lambda: sum1.num_press(0)
bttn_0.grid(row = 4, column = 1)
 
bttn_div = Button(calc, text = chr(247),font="Arial 20")
bttn_div["command"] = lambda: sum1.operation("divide")
bttn_div.grid(row = 1, column = 3)
 
bttn_mult = Button(calc, text = "x",font="Arial 21")
bttn_mult["command"] = lambda: sum1.operation("times")
bttn_mult.grid(row = 2, column = 3)
 
minus = Button(calc, text = "-",font="Arial 22")
minus["command"] = lambda: sum1.operation("minus")
minus.grid(row = 4, column = 0)
 
point = Button(calc, text = ". ",font="Arial 20")
point["command"] = lambda: sum1.num_press(".")
point.grid(row = 4, column = 3)
 
add = Button(calc, text = "+",font="Arial 20")
add["command"] = lambda: sum1.operation("add")
add.grid(row = 3, column = 3)
 
neg= Button(calc, text = "+/-",font="Arial 14")
neg["command"] = sum1.sign
neg.grid(row = 5, column = 0)
 
clear = Button(calc, text = "C",font="Arial 19")
clear["command"] = sum1.cancel
clear.grid(row = 5, column = 2)
 
equals = Button(calc, text = "=",font="Arial 20")
equals["command"] = sum1.calc_total
equals.grid(row = 4, column = 2)
0
2740 / 2339 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
03.10.2016, 17:00 7
DivineShout, твой не отформатированный код никто даже смотреть не будет

И не получается это не объяснение, что конкретно не получается?
0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 30
04.10.2016, 00:40  [ТС] 8
я не знаю как сделать чтобы при закрытии калькулятора последние вычисления сохранялись, и когда мы откроем калькулятор то будем начинать с них. Вот чего я не знаю, я не понимаю как это сделать.
0
Эксперт Python
4632 / 2050 / 361
Регистрация: 17.03.2012
Сообщений: 10,134
Записей в блоге: 6
04.10.2016, 07:37 9
Цитата Сообщение от DivineShout Посмотреть сообщение
я не знаю как сделать чтобы при закрытии калькулятора последние вычисления сохранялись, и когда мы откроем калькулятор то будем начинать с них. Вот чего я не знаю, я не понимаю как это сделать.

Не по теме:

На колу мочала, начинай сначала.


Сохранять в файл?
0
0 / 0 / 0
Регистрация: 24.04.2016
Сообщений: 30
05.10.2016, 09:08  [ТС] 10
да.
0
Эксперт Python
4632 / 2050 / 361
Регистрация: 17.03.2012
Сообщений: 10,134
Записей в блоге: 6
05.10.2016, 10:39 11
DivineShout, значит, следующий твой вопрос должен быть - "как в Питоне сохранять в файл?".
И обращать его лучше в гугль, потому что вопрос очень простой и типовой.
0
12 / 12 / 10
Регистрация: 17.06.2016
Сообщений: 70
25.10.2016, 21:10 12
Последнее выражение допустим в файл сохраняй.
при открытии сразу-(пока не ввел данных пусть будут данние из файла.)
0
0 / 0 / 0
Регистрация: 05.10.2019
Сообщений: 1
16.11.2019, 16:45 13
как сделать всплыв окно?
0
16.11.2019, 16:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.11.2019, 16:45
Помогаю со студенческими работами здесь

Калькулятор
Как мне здесь корректно вызвать, к примеру, функцию сложения add class calc: def...

Калькулятор
Напишите программу, которая вычисляет выражение, состоящее из трех чисел и двух знаков...

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

Калькулятор
Ребят, почему-то не хочет работать. Скажите пж, где ошибка # Калькулятор # from colorama...

Калькулятор
Доброго времени суток!Подскажите, как реализовать, чтобы кнопка, которая выделена на скрине,...

Калькулятор на qt
Посмотрите код, как сделать что бы нажимая на кнопки действия(умножение, деление, сложение,...

Калькулятор
Доброго времени суток! Вот код калькулятора: from tkinter import * from tkinter import...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru