Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 22, 2017 12:20:28

Goyt
Зарегистрирован: 2017-10-21
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

JOHN_16
а может клиент/серверный подход здесь будет лучше? Наверняка в комп. классе есть ПК преподавателя или тп.
Будет удобнее чтобы Ученик запустил тест на любом ПК, и сразу по окончании выходил результат с распечаткой

Офлайн

#2 Окт. 22, 2017 12:44:32

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

Goyt
по окончании выходил результат с распечаткой
Зачем вы бумагу переводите и наши леса губите? В электронном виде результат надо фиксировать. Или вы под распечаткой файл понимаете?



Офлайн

#3 Окт. 22, 2017 12:48:53

Goyt
Зарегистрирован: 2017-10-21
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

doza_and
Я не против электронного варианта, но администрация требует отдельный журнал с результатами учеников

Офлайн

#4 Окт. 22, 2017 12:49:06

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10031
Репутация: +  857  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

Goyt
Хотелось бы чтобы программа спокойно запускалась под винду без дополнительных установок библиотек(в школе везде винда).
Сейчас обычно делают web-сервис, где можно вводить данные через браузер и получать результат. У сдающих тесты должен быть только браузер, а доступа к базе тестов они не имеют, потому что база лежит на сервере, предоставляющем web-сервис (в глобальной или локальной сети).

Goyt
так как я немного знаком с python думал использовать его
Если что-то выглядит просто снаружи, это ещё не значит, что оно просто устроено внутри. Обычно так: снаружи одно поле какое-нибудь, а внутри куча кода, который обрабатывает это одно поле. С нулевыми знаниями это всё не напишешь. Окно-то сделать легко, сложно написать код для его обработки. А без кода окно не будет ничего делать, так же как и поле или кнопка.



Отредактировано py.user.next (Окт. 22, 2017 12:49:52)

Офлайн

#5 Окт. 22, 2017 12:52:01

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2849
Репутация: +  186  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

> Я изучил программу, я работаю из под Линукс и не понимаю что мешает другому человеку скачать редактор и открыть тесты(я имею ввиду, программа не имеет защиты типа логин пароль)

А ты её точно изучил?

Проблема разграничения прав доступа на создание теста решена использованием пароля для режима редактирования….Пароль режима редактирования изменяется из пункта “Сервис->Пароль режима”. По-умолчанию: “Password”



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#6 Окт. 22, 2017 14:42:04

Goyt
Зарегистрирован: 2017-10-21
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

Rodegast
> Я изучил программу, я работаю из под Линукс и не понимаю что мешает другому человеку скачать редактор и открыть тесты(я имею ввиду, программа не имеет защиты типа логин пароль)А ты её точно изучил?
Я нажимаю установить пароль а в ответ тишина от программы, она даже пароль не просит при входе

Отредактировано Goyt (Окт. 22, 2017 14:42:45)

Офлайн

#7 Окт. 22, 2017 14:45:21

Goyt
Зарегистрирован: 2017-10-21
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

py.user.next
Я уверен что могу написать консольный вариант, но делать тесты на десктопе займёт время на изучение. Мб стоит ещё рассмотреть варианты на delphi или c# например? Я где то видел исходники другое дело что разработка должна идти под win верно?

Офлайн

#8 Окт. 22, 2017 16:23:20

vic57
Зарегистрирован: 2015-07-07
Сообщения: 913
Репутация: +  127  -
Профиль  

Как написать программу проверки-знаний?

Goyt
Остались исходники?) Чтобы допилить под себя. Вариант с pyqt хороший, но придется курить маны
ОС CP/M вас устраивает? ето был 1989 год ЕМНИП
рыбу я вам дам, доработаете
 ##
from tkinter import Tk, BOTH, Listbox, StringVar, END,Label,Frame,Button,W
class Example(Frame):
    def __init__(self, parent):
        Frame.__init__(self, parent,bg='#ccc')   
        self.parent = parent
        self.var = StringVar()
        self.fnt='Times 18'
        self.data = Data()
        self.initUI()
        
    def initUI(self):
        self.parent.title("Example")          
        self.pack(fill=BOTH, expand=True)
        self.lblQue = Label(self,font=self.fnt)
        self.lblQue.pack(fill=BOTH)
        self.lb = Listbox(self,bg='#ededed',font=self.fnt)
        self.lb.bind("<<ListboxSelect>>", self.onSelect)    
        self.lb.pack(fill=BOTH,expand=True)
        self.lblAns = Label(self, text='', bg='#777',
                      fg='yellow',font='times 22',anchor=W)        
        self.lblAns.pack(fill=BOTH)
        frame = Frame(self,bg='#ccc')
        btnNext= Button(frame,text='Вопрос',command=self.onNext,font=self.fnt)
        btnNext.grid(row=0,column=1,padx=10)
        btnQuit= Button(frame,text='Выход',command=self.parent.destroy,font=self.fnt)
        btnQuit.grid(row=0,column=2,padx=10)
        frame.pack(fill=None)
        
    def onSelect(self,val=None):
        try:
            idx = self.lb.curselection()
            value = self.lb.get(idx)   
            self.lblAns['text']= 'Вы выбрали: '+ value
        except: pass
    def onNext(self):
        que,ans = self.data.get()
        self.lblQue['text'] = que
        self.lblAns['text'] = ''
        self.lb.delete(0,self.lb.size())
        for i in ans: self.lb.insert(END,i)
    
    
class Data(object):
    def __init__(self):
        self.que = ('Чем шплинтуется вал?','Чему равно ускорение свободного падения')
        self.ans =(('Гайка','Винт', 'Болт с левой резьбой', 'Шплинт', 'Шайба','Гровер'),
                   ('7.62','3.62','2.87','4.12','9.8','5.56'))
        self.index = 0
    def get(self):
        ret =  self.que[self.index],self.ans[self.index]
        self.index += 1
        self.index %= len(self.que)
        return ret
    
if __name__ == '__main__':
    root = Tk()
    ex = Example(root)
    root.geometry("640x480+100+100")
    root.mainloop()  

Отредактировано vic57 (Окт. 22, 2017 16:24:08)

Офлайн

#9 Окт. 22, 2017 16:25:07

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2849
Репутация: +  186  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

> Я нажимаю установить пароль а в ответ тишина от программы, она даже пароль не просит при входе

Поставь версию 1.5.2 в ней пароль работает.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#10 Окт. 22, 2017 17:58:55

Goyt
Зарегистрирован: 2017-10-21
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Как написать программу проверки-знаний?

Rodegast
> Я нажимаю установить пароль а в ответ тишина от программы, она даже пароль не просит при входеПоставь версию 1.5.2 в ней пароль работает.
Спасибо попробую

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version