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

Вы можете сделать следующее:

Устанавливать и запускать диспетчер настроек ComizConfig. Выберите Ubuntu Unity Plugin. Установите для параметра Hide Launcher значение «Автоподтверждение». Установите для параметра Reveal Mode значение «Влево» на «Нет».

Это должно сделать трюк. Возможно, вам понадобится выполнить setsid unity для внесения изменений.

1
задан 30 January 2016 в 16:48

1 ответ

Введение:

Следующее приложение создает случайные целочисленные выражения, которые будут оцениваться пользователем. Диапазон произвольно генерируемых выражений зависит от настроек пользователя в основном всплывающем окне. После нажатия кнопки «Lets Begin» сеанс начнется бесконечно, пока пользователь не нажмет кнопку «Отмена».

Введение :

#!/usr/bin/env python

# Author: Serg Kolo
# Date: Jan 30,2016
# Purpose: A graphical utility for practicing
#          random arithmetic operations
# Written for: http://askubuntu.com/q/725287/295286

#    Copyright: Serg Kolo , 2016
#    This program is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.
#
#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.

import sys
import time
import random
from PyQt4 import QtGui


class mathApp(QtGui.QWidget):
   def __init__(self):
       super(mathApp,self).__init__()
       self.mainMenu()

   def mainMenu(self):
      self.setGeometry(300, 300, 400, 200)

      self.btn = QtGui.QPushButton("Let's begin",self)
      self.btn.move(20,150)
      self.btn.clicked.connect(self.askQuestions)

      self.lbl1 = QtGui.QLabel(self)
      self.lbl1.move(20,25)
      self.lbl1.setText("Numbers From")


      self.lbl2 = QtGui.QLabel(self)
      self.lbl2.move(20,55)
      self.lbl2.setText("Numbers To")

      self.lbl2 = QtGui.QLabel(self)
      self.lbl2.move(20,85)
      self.lbl2.setText("Repeat (seconds)")

      self.le1 = QtGui.QLineEdit(self)
      self.le1.move(150,20)

      self.le2 = QtGui.QLineEdit(self)
      self.le2.move(150,50)

      self.le3 = QtGui.QLineEdit(self)
      self.le3.move(150,80)

      self.lbl3 = QtGui.QLabel(self)
      self.lbl3.move(20,105)

      self.setWindowTitle('Random Integer Arithmetic')

      self.show()

   def askQuestions(self):
       rangeStart = int(self.le1.text())
       rangeEnd = int(self.le2.text())
       sleepTime = int(self.le3.text())
       done=False
       while not done:
          self.show()
          expression = self.generateOperation(rangeStart,rangeEnd)
          correctAnswer = eval(expression)

          prompt = QtGui.QInputDialog() 
          text,ok = prompt.getText(self,"Don't think too hard",expression) 
          if ok:
             if int(text) == correctAnswer:                
                self.showAnswer("CORRECT,YOU ROCK !")
             else :
                self.showAnswer("Nope");
          else:
              done=True

          if done==True:
              self.close()
          time.sleep(sleepTime)


   def generateOperation(self,start,end):
      a = random.randint(start,end)
      b = random.randint(start,end)
      oplist = ['+','-','/','*']
      op = oplist[random.randint(0,3)]
      expr = str(a) + op + str(b) + ''
      return expr

   def showAnswer(self,result):
       popup = QtGui.QMessageBox()
       popup.setText(result)
       popup.exec_()


def main():
   root = QtGui.QApplication(sys.argv)
   app = mathApp()
   sys.exit(root.exec_())

if __name__ == '__main__':
   main()
3
ответ дан 23 May 2018 в 14:02
  • 1
    Дорогой @Serg, я также хочу поблагодарить вас за расширенную версию графического интерфейса. Один вопрос, у меня просто было упражнение 15/14 = 1. Я не уверен, насколько полезно такое упражнение. Как вы думаете? – orschiro 31 January 2016 в 09:50
  • 2
    @orschiro это integer arithmetic. Это означает, что результат - это только целая часть, без остатка. Если хотите, я мог бы попытаться реализовать арифметику decimal. Кроме того, пожалуйста, дайте мне знать, какие другие варианты вы хотели бы мне реализовать и добавить. В настоящее время я пытаюсь применить метод agile development, и общение с клиентом является ключевым в таком методе. Пожалуйста, дайте мне знать. – Sergiy Kolodyazhnyy 31 January 2016 в 10:01
  • 3
    приятно слышать! Я хотел бы предоставить вам больше отзывов, например. лучшая интеграция в Ubuntu Desktop (запуск сценария больше в фоновом режиме, т. е. сведение к минимуму после ввода пользователем). Как я могу лучше предоставить вам дополнительную информацию? – orschiro 31 January 2016 в 14:36

Другие вопросы по тегам:

Похожие вопросы: