Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2009, 21:58   #1
Spiker01
Пользователь
 
Аватар для Spiker01
 
Регистрация: 13.06.2008
Сообщений: 22
Стрелка Программа Тестирования.

Здраствуйте , мне курсовую через неделю сдавать , помогите решить , заранее спасибо , плюсы и личное мнение ГАРАНТИРУЮ .
Задача .
Необходимо создать программу для тестирования студентов. Тест ,последовательность вопросов , варианты ответов должны находится в текстовом файле. Имя файла с вариантами ответов и вопросами программа должна получать из командной строки или собственного интерфейса , после запуска. Количество вопросов тестирование ограничено 100.Можно ввести следующее ограничение текст вопроса и варианта ответов не должен превышать 1 строчки . Программа должна выставлять оценку по правилу: Отлично – за 100-99 правильных ответов, хорошо если менее 80 правильных ответов. Удовлетворительно - если правильных ответов более 60. Плохо если правильных ответов менее 60 .Ниже приведена рекомендуемая структура файлов вопросов теста и программы
Mn - количество альтернативных ответов к i вопросу.
Tn- номер правильного ответа.
Пример вывода программы:
Сейчас вам будет предложен тест введите путь к файлу с тестовыми вопросами :
C:\testpascal\vopros.txt
Отвечайте на вопросы используя клавиши «1 ,2 ,3» соответствующие правильному ответу.
1.Какое расширение имеет файл созданный в блокноте?
1).bat
2).txt
3) .bbl
2.Вопрос 2
1)Ответ1
2)Ответ2
3)Ответ3
Ваша оценка – Отлично .
Spiker01 вне форума Ответить с цитированием
Старый 05.01.2009, 22:29   #2
pomoshnic
Форумчанин
 
Аватар для pomoshnic
 
Регистрация: 16.11.2008
Сообщений: 192
Стрелка

Извини но у меня нет времени. Вот что я написал, попробуй я не тестировал.
Код:
var f:text;
b,o,r,i:byte;
s:string;
begin
writeln('Сейчас вам будет предложен тест введите путь к файлу с тестовыми вопросами :');
readln(s);
assign(f,s);
{$i-}
reset (f);
{$i+}
if ioresult<>0 then
begin
writeln('Файл ',s,' не найден');
readln;
halt
end;
while not eof(f) do
begin
for i:=0 to 3 do
begin
if i<>0 then write(i,')');
readln(f,s);
writeln(s);
end;
readln(f,r);
readln(o);
if r=o then inc(b);
end;
pomoshnic вне форума Ответить с цитированием
Старый 05.01.2009, 22:47   #3
Tkirill
Форумчанин
 
Аватар для Tkirill
 
Регистрация: 22.12.2008
Сообщений: 104
По умолчанию Вот мой вариант :

uses crt;
var
fil,otvet,obr:text;
name,s,st:string;
kol,i:integer;
otv:1..3;
begin
clrscr;
write(' Имя файла -> ');
readln(name);
writeln;
clrscr;
assign(fil,name);
reset(fil);
assign(otvet,'c:\otvet.txt');
rewrite(otvet);
while not eof(fil) do
begin
for i:=1 to 4 do
begin
readln(fil,s);
writeln(s);
end;
writeln;
write(' Ваш ответ -> ');
readln(otv);
writeln(otvet,otv);
delay(60000);
clrscr;
end;
close(fil);
reset(otvet);
kol:=100;
assign(obr,'c:\obrazec.txt');
reset(obr);
while not eof(obr) do
begin
readln(otvet,s);
readln(obr,st);
if s<>st then kol:=kol-1;
end;
writeln(' Ваша оценка ');
case kol of
99..100:write(' отлично ');
80..98:write(' хорошо ');
60..79:write(' удоволетворительно ');
0..59:write(' плохо ');
end;
close(obr);
close(otvet);
readln;
end.


Сделаешь c:\obrazec.txt в него запишешь правильные ответы.
Пример:
1
3
2
1
2
и т.д.
@(o_0)@
Tkirill вне форума Ответить с цитированием
Старый 06.01.2009, 13:14   #4
Tkirill
Форумчанин
 
Аватар для Tkirill
 
Регистрация: 22.12.2008
Сообщений: 104
По умолчанию

Вот как надо сделать :
1) Сначала создаешь файл в блокноте с самими вопросами в таком формате:

Вопрос1
1)Ответ1
2)Ответ2
3)Ответ3
Вопрос2
1)Ответ1
2)Ответ2
3)Ответ3
...
Именно в таком формате, без пробелов между строками.
2) Потом делаешь еще один текстовый файл
c:\obrazec.txt
В него записываешь правильные ответы
в формате
ответ1
ответ2
ответ3
ответ4
и т.д.
(имеется в виду цифрами)
Именно в таком формате, без пробелов между строками.
Я проверял, работает нормально.

Вот такая задумка )))
@(o_0)@
Tkirill вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите. Программа для тестирования. SergeyVS Помощь студентам 3 20.05.2010 17:50
прога для тестирования veyder21 Общие вопросы .NET 5 28.12.2008 15:21
Библиотека тестирования модулей CPPUNIT Selebro Общие вопросы C/C++ 1 08.12.2008 00:26
Програма тестирования krolik Помощь студентам 2 21.11.2008 13:11
Програма тестирования студентов. lin Помощь студентам 6 20.04.2007 09:23