|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.05.2015, 08:09 | #1 |
Регистрация: 21.03.2015
Сообщений: 3
|
Необходимо доработать программу, представляющую из себя тест.(PascalABC.net)
если необходимы документы "vopr,potv, otv" могу скинуть отдельно.
Проблема в том, что кнопка "старт" не работает, при запуске выводиться ошибка ,что ее невозможно реализовать из-за цикла while Вторая проблема в том ,что выводимый на экран текст не входит в размеры графического окна. uses GraphABC,ABCObjects,ABCButtons; const n=4; //количество вариантов ответов var vopr,otv,potv: text; //файлы: вопросов, ответов и правильных ответов btn_start,btn_exit: ButtonABC; procedure Test; var s: string; i,c,o: byte; b,a: integer; begin b:=0; a:=0; assign(vopr,'vo.txt'); //связывает файловую переменную с именем файла assign(otv,'otv1.txt'); assign(potv,'potv1.txt'); reset(vopr); //открывает файл на чтение reset(otv); reset(potv); clearwindow; while not (eof(vopr)) do begin a:=a+1; clearwindow; readln(potv,o); readln(vopr,s); textout(10,20,s); for i:=1 to n do begin readln(otv,s); textout(10,60+(i*20),inttostr(i)+' ) '+s);//выводим каждый вопрос на отдельной странице end; readln(c); if c<>o then b:=b+0 else inc(b);//счетчик для ответов end; close(vopr); close(otv); close(potv); clearwindow; writeln('Тестирование закончено'); writeln('Ваш результат ',b,' из ',a); readln; end; procedure BtnStartClick(); begin Test(); end; procedure BtnExitClick(); begin CloseWindow(); end; begin SetWindowSize(800,500); SetWindowIsFixedSize(true); textout(10,50,'Инструкция: '); textout(10,70,'В тесте 50 вопросов'); textout(10,90,'Ответом на вопрос являеться номер одного из 4-х предложенных вариантов'); textout(10,110,'Для ответа необходимо ввести номер ответа в строку и нажать "enter"'); textout(10,150,'Желаем успехов!'); SetWindowSize(650,500); SetWindowIsFixedSize(true); SetWindowTitle('Тест'); PictureABC.Create(0,0,'grr.png'); btn_exit := new buttonABC(300, 300, 240, 50, 'Выход', clwhite); btn_exit.OnClick := BtnExitClick; btn_start := new ButtonABC(300, 200,240,50,'Старт',clWhite); btn_start.OnClick := BtnStartClick; end. Последний раз редактировалось Roblen; 28.05.2015 в 08:11. |
28.05.2015, 08:13 | #2 |
Регистрация: 21.03.2015
Сообщений: 3
|
Необходимо доработать программу, представляющую из себя тест.PascalABC.net
1)доработать кнопку "старт" на первой странице теста
2)сделать так, чтобы весь текст уместился в пределах графического окна 3)сделать к программе блок-схему uses GraphABC,ABCObjects,ABCButtons; const n=4; //количество вариантов ответов var vopr,otv,potv: text; //файлы: вопросов, ответов и правильных ответов btn_start,btn_exit: ButtonABC; procedure Test; var s: string; i,c,o: byte; b,a: integer; begin b:=0; a:=0; assign(vopr,'vo.txt'); //связывает файловую переменную с именем файла assign(otv,'otv1.txt'); assign(potv,'potv1.txt'); reset(vopr); //открывает файл на чтение reset(otv); reset(potv); clearwindow; while not (eof(vopr)) do begin a:=a+1; clearwindow; readln(potv,o); readln(vopr,s); textout(10,20,s); for i:=1 to n do begin readln(otv,s); textout(10,60+(i*20),inttostr(i)+' ) '+s);//выводим каждый вопрос на отдельной странице end; readln(c); if c<>o then b:=b+0 else inc(b);//счетчик для ответов end; close(vopr); close(otv); close(potv); clearwindow; writeln('Тестирование закончено'); writeln('Ваш результат ',b,' из ',a); readln; end; procedure BtnStartClick(); begin Test(); end; procedure BtnExitClick(); begin CloseWindow(); end; begin SetWindowSize(800,500); SetWindowIsFixedSize(true); textout(10,50,'Инструкция: '); textout(10,70,'В тесте 50 вопросов'); textout(10,90,'Ответом на вопрос являеться номер одного из 4-х предложенных вариантов'); textout(10,110,'Для ответа необходимо ввести номер ответа в строку и нажать "enter"'); textout(10,150,'Желаем успехов!'); SetWindowSize(650,500); SetWindowIsFixedSize(true); SetWindowTitle('Тест'); PictureABC.Create(0,0,'grr.png'); btn_exit := new buttonABC(300, 300, 240, 50, 'Выход', clwhite); btn_exit.OnClick := BtnExitClick; btn_start := new ButtonABC(300, 200,240,50,'Старт',clWhite); btn_start.OnClick := BtnStartClick; end. |
28.05.2015, 10:13 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,238
|
Решили обратиться за платной помощью?
А ваши темы в других разделах по этому же вопросу http://programmersforum.ru/showthread.php?t=277937 http://programmersforum.ru/showthread.php?t=278517 закрываем? |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Напишите программу решения уравнений методом бисекции с наперед заданной точностью / PascalABC.NET | now2 | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 14.03.2014 07:37 |
модуль GRAPH: Написать программу построения сегмента и заполнения его некоторым цветом (PascalABC.NET) | veronika55214 | Паскаль, Turbo Pascal, PascalABC.NET | 7 | 27.02.2014 16:38 |
Необходимо доработать программу (Написана на Visual Basic). За деньги. | evgenyan | Фриланс | 3 | 05.09.2013 17:14 |
PascalABC.NET - Написать программу для расчёта по двум формулам. | serge-first | Помощь студентам | 5 | 27.02.2013 20:38 |
Необходимо доработать программу "Паскаль" с типизированными файлами, чтобы результат выводило в текстовый документ а не на экран. | Женька Good | Помощь студентам | 0 | 09.12.2011 21:20 |