IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Тестирование, Прога-тест, в конце баллы
сообщение
Сообщение #1


Гость






Подскажите, кто-нибудь видел подобное(всмысле код)?

Тестирование.
Испытуемому предлагаются вопросы, на которые он должен ответить. 4 варианта ответа – выбрать подходящий. В конце суммируются оценки и выводится общий бал.
Вам предстоит создать программу, которая позволяет автоматизировать процесс тестирования. Область тестирования должна быть определена Вами (любая, которая интересна с Вашей точки зрения). Требования к программе В результате анализа различных тестов были сформулированы следующие требования к программе:

1.Программа должна обеспечить работу с тестом произвольной длины, т.е. не должно быть ограничений на
количество вопросов в тесте.
2.Каждому вопросу может соответствовать до четырех возможных вариантов ответа со своей балльной оценкой.
3.Результат тестирования должен быть отнесен к одному из четырех уровней. Например, "отлично", "хорошо",
"удовлетворительно" или "плохо".
4.Тест представляет собой текстовый файл.
5.Программа должна быть инвариантна к различным тестам, т.е. изменения в тесте не должны вести за собой
требования изменения программы,
6.Программа не должна обеспечивать возврат к предыдущему вопросу. Если вопрос предложен, то на него должен
быть получен ответ.


**********************************************************

Запуск проги может быть из строки test.exe text_fail
где text_fail - текстовый файл с тестами.
Каждый вопрос сотоит из теста вопроса и текста вариантов ответа.
и т.д.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Есть такое. С ТурбоВижн написанное. Обеспечивает всё, кроме п. 4 (file of records). Выложить?
Вариантов ответов 3-7. Множественный выбор ответов. Ввод правильного ответа.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской

Репутация: -  0  +


Нет, не надо, thnks. К сож. нужно на Турбо-Паскале...


--------------------
__________________________
Мой диплом ПГС
http://nashidiplomy.googlepages.com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


На турбо паскале + турбо вижн
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


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

впрос1
ответ1
балл за ответ1 (скажем это правильный ответ, тут 25 баллов, а остальные 0)
ответ2
балл за ответ2
ответ3
балл за ответ 3
ответ4
балл за ответ4

вопрос2
... и так далее ...

хотя удобнее будет вот так

вопрос1
ответ1 балл
ответ2 балл
...


или даже так :

вопрос1
ответ1
ответ2
ответ3
ответ4
балл1
балл2
балл3
балл4

...

Сообщение отредактировано: klem4 -


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Вот набросал на скорую руку, суть я думаю поймешь :

uses crt;
var
f : text;
s : string;
ch : char;
i,j,sum,e,t : integer;

begin

clrscr;

assign(f,'c:\questions.txt');

reset(f);

sum := 0; i := 0;

while (not(eof(f))) do begin
clrscr;
inc(i);
writeln('Vopros N ',i);
readln(f,s);
writeln(s);
writeln('Varianti otvetov');
for j := 1 to 4 do begin
write(j,' ');
readln(f,s);
writeln(s);
end;
writeln;
repeat
ch := readkey;
until ch in ['1'..'4'];

for j := 1 to 4 do begin
readln(f,s);
if j = ord(ch)-48 then begin
val(s,t,e);
sum := sum + t;
end;
end;
end;

writeln('sum = ',sum);
close(f);
readln;

end.



Содержание файла :

Цитата
Skolko vipit piva ?
dva batla
tri batla
5 batlov
niodnogo
3
7
9
0
oleg opozdaet ?
da, na 5 minut
da, na 20 minut
net
ya sam opozdau muahaha!
1
2
10
15


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской

Репутация: -  0  +


Да, klem4, у меня проблема в реализации..
В т.ч. на reset(f) останавливается прога и говорит не знаю такого файла - questions.txt переписал в текущ и в корень


--------------------
__________________________
Мой диплом ПГС
http://nashidiplomy.googlepages.com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


questions.txt - 9 символов в имени файла. Возможно, не берет из-за этого.
Попробуй переименовать в question.txt
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской

Репутация: -  0  +


Угу. Вечерком попробую.


--------------------
__________________________
Мой диплом ПГС
http://nashidiplomy.googlepages.com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской

Репутация: -  0  +


Осталось совсем чуть-чуть.
Как напишу выложу тест по определению силы воли в профессиональной деятельности )))
Так, вопрос.
Три оценки по прохождению теста, взависимости от значения переменной sum.
Как их с помощью цикла (или нет) выдавать. Т.е. если сумма 10, то тройка, если сумма 15, то 4-, если больше, чем 15, то 5 ?
Вот пока все, о чем я додумался.
    writeln('Nabrano ballov - ',sum);
if sum<=12 then
writeln('Vasha otcenka = 0 sad.gif Vy prosto delayete to, chto Vam interesno');
else
if (sum>13) and (sum<21) then
writeln('Vasha otcenka = 4- smile.gif Po dobroy vole lishnego na sebya ne vozmete ;)')
else
writeln('Vasha otcenka = 5 smile.gif Podumayte o gibkosti, snishoditelnosti i dobrote');
close(f);
readln;


--------------------
__________________________
Мой диплом ПГС
http://nashidiplomy.googlepages.com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской

Репутация: -  0  +


Тест силы воли в профессиональной деятельности.


Прикрепленные файлы
Прикрепленный файл  TEST.PAS ( 1.13 килобайт ) Кол-во скачиваний: 261


--------------------
__________________________
Мой диплом ПГС
http://nashidiplomy.googlepages.com
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 6.05.2024 8:40
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name