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

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

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

> Универсальная программа тестирования., Помогите!В чём ошибка?
Violet
сообщение 7.04.2006 17:53
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Женский
Реальное имя: Виолетта

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


Люди!Я написала программу универсального тестирования,но она почему то не работает!Условий было только два:Тест,последовательность вопросов и варианты ответов должны находиться в текстовом файле.Имя этого файла программа должна получать из командной строки её запуска.
Вот программа:
program test;
Uses crt;
Label bye;
Var gi:string[40];
f:text;
VsegoVopr:integer;
PravOtv:integer;
nOtv:integer;
prav:integer;
Otv:integer;
st:string;
p:integer;
i:integer;
begin
if ParamCount=0 then
begin
clrscr;
writeln ('Не задан файл вопросов теста!');
writeln ('Командная строка : test c:/Work/text.txt');
goto bye;
end;
gi:=ParamStr(1);
Assign(f,c:/Work/text.txt');
{$I-}
Reset(f);
{$I+}
if IOResult <> 0 then
begin
writeln ('Не найден файл теста!',gi);
goto bye;
end;
writeln ('‘Ґ©з б ‚ ¬ Ўг¤Ґв ЇаҐ¤«®¦Ґ­ вҐбв.');
writeln ('Љ Є ¦¤®¬г ў®Їа®бг ¤ Ґвбп ­ҐбЄ®«мЄ® ў аЁ ­в®ў','®вўҐв .');
writeln ('‚л ¤®«¦­л ўўҐбвЁ ­®¬Ґа Їа ўЁ«м­®Ј® ®вўҐв ','Ё ­ ¦ вм <Enter>');
writeln;
writeln ('”¤ зЁ!„«п ­ з « вҐбвЁа®ў ­Ёп ­ ¦¬ЁвҐ <Enter>');
?Clrscr;
TextBackGround(Blue);
VsegoVopr:=0;
Prav:=0;
while not EOF(f) do
begin
VsegoVopr:=VsegoVopr+1;
readln(f,st);
TextColor(White);
writeln(st);
readln(f,nOtv,Prav);
TextColor(LightGray);
for i:=1 to nOtv do
begin
readln (f,st);
writeln (i,'. ',st);
end;
writeln;
write('‚ и ўлЎ®а ->');
readln(Otv);
if Otv=Prav then PravOtv:=PravOtv+1;
writeln;
end;

Тегами пользуемся...

Сообщение отредактировано: volvo - 5.11.2006 19:09
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 7.04.2006 18:18
Сообщение #2


Гость






Violet, программу полностью привести нельзя было? Тут только кусок программы...
 К началу страницы 
+ Ответить 
Violet
сообщение 8.04.2006 14:17
Сообщение #3





Группа: Пользователи
Сообщений: 4
Пол: Женский
Реальное имя: Виолетта

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


Цитата(volvo @ 7.04.2006 18:18) *

Violet, программу полностью привести нельзя было? Тут только кусок программы...

Извините!
Код
Program test;
Uses crt;
Label bye;
Var gi:string[40];
    f:text;
    VsegoVopr:integer;
    PravOtv:integer;
    nOtv:integer;
    prav:integer;
    Otv:integer;
    st:string;
    p:integer;
    i:integer;
begin
   if ParamCount=0 then
begin
   clrscr;
   writeln ('ЌҐ § ¤ ­ д ©« ў®Їа®б®ў вҐбв !');
   writeln ('Љ®¬ ­¤­ п бва®Є : test c:\Work\text.txt');
   goto bye;
end;
gi:=ParamStr(1);
Assign(f,'c:\Work\text.txt');
{$I-}
Reset(f);
{$I+}
   if IOResult <> 0 then
begin
   writeln ('ЌҐ ­ ©¤Ґ­ д ©« вҐбв !');
   goto bye;
end;
writeln ('‘Ґ©з б ‚ ¬ Ўг¤Ґв ЇаҐ¤«®¦Ґ­ вҐбв.');
writeln ('Љ Є ¦¤®¬г ў®Їа®бг ¤ Ґвбп ­ҐбЄ®«мЄ® ў аЁ ­в®ў','®вўҐв .');
writeln ('‚л ¤®«¦­л ўўҐбвЁ ­®¬Ґа Їа ўЁ«м­®Ј® ®вўҐв ','Ё ­ ¦ вм <Enter>');
writeln;
writeln ('“¤ зЁ!„«п ­ з «  вҐбвЁа®ў ­Ёп ­ ¦¬ЁвҐ <Enter>');
Clrscr;
TextBackGround(Blue);
VsegoVopr:=0;
Prav:=0;
while not EOF(f) do
begin
  VsegoVopr:=VsegoVopr+1;
  readln(f,st);
  TextColor(White);
  writeln(st);
  readln(f,nOtv,Prav);
  TextColor(LightGray);
for i:=1 to nOtv do
begin
  readln (f,st);
  writeln (i,'. ',st);
end;
writeln;
write('‚ и ўлЎ®а ->');
readln(Otv);
if Otv=Prav then PravOtv:=PravOtv+1;
writeln;
end;
p:=Round((PravOtv/VsegoVopr)*100);
write('‚ и  ®жҐ­Є  ');
case p of
  100:writeln('Ћв«Ёз­®!');
  80..99:writeln('•®а®и®.');
  60..79:writeln('“¤®ў«Ґвў®аЁвҐ«м­®.');
  else writeln('Џ«®е®!');
end;
bye:
  write('„«п § ўҐа襭Ёп а Ў®вл ­ ¦¬ЁвҐ <Enter>');
  readln;
end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



- Текстовая версия 18.07.2025 23:54
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"