Приложение 2.
clear
Save Screen to ekran
set wrap on
set talk off
set cursor off
set message to 23 center
do GLAV
************************
proc GLAV
DO WHILE .T.
clear screen
set color to n/w
@0,0,2,80 box"░░░░░░░░░░"
@3,0,25,80 box"╔═╗║╝═╚║░"
@1,4 clear to 1,17
set color to gr+/b,w+/rb
@1,4 prompt ' ВЫБОР ТЕСТОВ '
@1,68 prompt ' ВЫХОД '
menu to choice
do case
case choice=1
do PODMEN1
case choice=2
Restore Screen from ekran
exit
endcase
enddo
return
***************
proc PODMEN1
do while .t.
@4,1 to 10,45 double
@5,2 clear to 9,44
set color to n/n
@11,4 clear to 11,47
@5,46 clear to 11,47
set color to gr+/b,w+/rb
@5,2 say ' ВЫБОР ТЕСТА ПО ТЕМАМ: '
@7,5 prompt ' Тест по экономике '
@9,2 prompt ' ВЫХОД '
menu to w
if w = 0
exit
endif
do case
case w=1
Save Screen to SaveScr1
k=1
do FKvar1 with k
clear
set color to gr+/b,w+/rb
Restore Screen from SaveScr1
case w=2
exit
endcase
enddo
return
***********
proc ot
set color to rb+/b,w+/rb
@23,0 clear to 23,79
@23,15 say ' ОТВЕТ '+A+', ДЛЯ ПРОДОЛЖЕНИЯ НАЖМИТЕ '
inkey(0)
set color to n/w,w+/b
retu
***********
proc FKvar1
clear
pr=0
ch=0
FOR i=1 to 5
set color to n/w
@6,24 clear to 6,55
@0,0,21,80 box"░░░░░░░░░░"
@9,12,19,67 box"╔═╗║╝═╚║"
@10,13 clear to 18,66
set color to bg/w,w+/rb
@0,0 say ' ТЕМА: " Тест по теме: Банки " '
set color to gr+/b
@1,45,4,72 box"╔═╗║╝═╚║"
@1,48 say ' Хочешь получить "5"? '
@2,46 say " Hа пять вопросов дай "
@3,46 say " правильных пять ответов. "
set color to gr+/b
@22,0 to 22,79 double
@23,0 clear to 23,79
@24,0 to 24,79 double
set color to n/w,w+/b
ss='-Прервать тест ВЫБЕРИТЕ ПРАВИЛЬНЫЙ ВАРИАНТ ОТВЕТА И НАЖМИТЕ '
DO CASE
case i=1
@6,8 say 'ВОПРОС 1: Эмиссионный банк отличается от коммерческих банков тем,'
@7,28 say ' что обладает правом:'
@11,13 prompt ' - покупать и продавать ценные бумаги ' message ss
@13,13 prompt ' - выпускать в обращение денежные единицы ' message ss
@15,13 prompt ' - предоставлять ссуды ' message ss
@17,13 prompt ' - принимать вклады от физических и юридических лиц ' message ss
case i=2
@6,18 say ' ВОПРОС 2: Владелец сбережений нуждается в: '
@11,26 prompt ' - деньгах ' message ss
@13,26 prompt ' - доходе на деньги ' message ss
@15,26 prompt ' - доходе на сбережения ' message ss
@17,26 prompt ' - услугах предпринимателя' message ss
case i=3
@6,8 say ' ВОПРОС 3: Что не является банковской услугой коммерческих банков '
@11,13 prompt ' - сбор сбережений граждан ' message ss
@13,13 prompt ' - предоставление кредитов ' message ss
@15,13 prompt ' - выпуск наличных денег ' message ss
@17,13 prompt ' - помощь в организации платежей за товары и услуги ' message ss
case i=4
@6,12 say ' ВОПРОС 4: Для получения банком прибыли необходимо, чтобы: '
@11,18 prompt ' - % по кредитам был больше % по вкладам ' message ss
@13,18 prompt ' - % по вкладам был больше % по кредитам ' message ss
@15,18 prompt ' - у него было много клиентов ' message ss
@17,18 prompt ' - он не занимался валютными операциями ' message ss
case i=5
@6,24 say ' ВОПРОС 5: Прибыль банка - это '
@11,15 prompt ' - процент по вкладам ' message ss
@13,15 prompt ' - процент по кредитам ' message ss
@15,15 prompt ' - разница между ставками % по кредитам и вкладам ' message ss
@17,15 prompt ' - разница всех доходов и расходов ' message ss
ENDCASE
do MMM
NEXT
if ch=0
retu
endif
@0,0,21,80 box"░░░░░░░░░░"
@8,15,10,60 box"╔═╗║╝═╚║"
@9,16 clear to 9,59
@9,16 say " ВАШ ОТВЕТ ОЦЕНЕН НА "+STR(PR)
WAIT''
retu
*******************
proc MMM
menu to ch
if ch=0
@0,0,21,80 box"░░░░░░░░░░"
@8,15,10,60 box"╔═╗║╝═╚║"
@9,16 clear to 9,59
OTV="N"
@9,16 say "ВЫ НАЧНЕТЕ ЗАНОВО (Y/N)" get OTV
read
if otv="Y".or.otv="y".or.otv="н".or.otv="Н"
do nach
i=1
pr=0
else
i=5
retu
endif
endif
do case
case w=1
do case
case (ch=1.and.i=4) .or. (ch=2.and.i=1) .or.;
(ch=3.and.(i=2.or.i=3)) .or. (ch=4.and.i=5)
pr=pr+1
A='ПРАВИЛЬНЫЙ'
do ot with a
othe
A='НЕПРАВИЛЬНЫЙ'
do ot with a
endcase
endcase
Restore Screen from ekran
Retu
Учитель информатики Кин Г.А. |