Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Турбо Паскаль. Программирование на Pascal
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]
Модераторы: paradise, KMA
  

VF



Administrator

KMA, ты про внешняя ссылка удалена ?

Требуется создать оболочку тест и желательно на Делфе. Т. е. мы имеем какой-то файл, в котором находятся вопросы, а пользователь должен на них отвечать, в конце программа должна вывести результат, показать ответы правильные и выбранные пользователем. + сохранять информу о пользователях.
Если есть какие-инбудь идеи, типа как оформить файл, чтобы его можно было хоть как-нибудь да закодировать от ненужных глаз, или типа как вообще проработать структуру записи и чтения вопросов (требуется из общего количества вопросов задать только определенное количесво. Т. е. в базе 60 вопросов, а из них надо задать только 20), то, пожалуйста не пренебрегайте своими знаниями, а поделитесь.


Такие программ для тестов уже делано-переделано много тысяч . Самый разумный вариант - клиент-сервер. На клиент поступает только текст вопроса, а возвращается выбранный ответ. Проверку вопросов и статистику ведет сервер.
  • При изменении тестов не нужно менять клиентов.
  • Не нужно придумывать никакого хитрого кодирования (которое все равно было бы не надежно, т.к. в доступной пользователю программе содержалось бы все, необходимое для раскодирования).
  • Если клиентом будет веб-браузер, то получится простое и хорошо переносимое решение.

Всего сообщений: 3110 | Присоединился: май 2002 | Отправлено: 25 фев. 2006 17:47 | IP
KMA



Долгожитель

Нет, дело то в том, что это надо делать для студентов, при чем не залезая в и-нет, а просто проходить компьютерное тестирование, т. е. у тебя есть компьютер, ты за ним сидишь и отвечаешь на вопросы, после он тебе выдает сколько у тебя баллов. что-то вроде ЕГЭшных вариантов.
А если не секрет, то поделитесь, где можно почитать о таких клиент-сервер тестах, и если можно то поподробнее к самому программированию. Просто мне может и такую штучку смогу предложить.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 25 фев. 2006 22:40 | IP
VF



Administrator

Компьютеры в сети? Тогда достаточно локального веб-сервера, установленного на один из компьютеров. А читать нужно про web-формы (HTML) и серверные скрипты (Perl, PHP).

Всего сообщений: 3110 | Присоединился: май 2002 | Отправлено: 26 фев. 2006 7:24 | IP
azatik


Удален

Привет всем у меня наконец-то кончилась вычислительная практика, но у меня осталась одна задача:
Даны несколько слов (например, три) из русских букв. Вывести на экран: все звонкие и глухие согласные, которые входят в любые два слова.
У меня есть 2 кода на неё, но 1-ый не всегда пашет, а 2-ой зацикливает, приходится посылать его на ctrl + Pause Break, Помогите Плииз!!!

(Сообщение отредактировал azatik 2 марта 2006 23:21)

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 2 марта 2006 20:05 | IP
miss_graffiti


Долгожитель

давай коды - поищем ошибки.

Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 2 марта 2006 22:36 | IP
KMA



Долгожитель

Слушай, а как это в любые два слова, т. е. они должны содержаться сразу в двух словах???
А если у меня их 150, то это значит, что я должен буду пробежаться по всем  глухим в разных словах, и просмотреть где буква встречается как минимум в двух словах...  
Ну блин, и дают же задачи...  

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 3 марта 2006 0:57 | IP
azatik


Удален

Вот первый:
program Lab_15;
uses crt;
var
s,o:string;
g:array {{1..100] of char;
a:array{{1.. 100] of string;
m,m1,mn,m2,m3:set of char;
h:char;
k,p,q,n,i:integer;
begin
clrscr;
m:={{'b'..'d','f'..'h','j'..'n','p'..'t','v'..'x','z'];
writeln('vvedite stroku');
readln(s);
for k:=1 to length(s) do
begin
if s{{k]=' ' then
begin
p:=p+1;
end;
end;
p:=p+1;
for k:=1 to p do
begin
o:=copy(s,1,pos(' ',s)-1);
delete(s,1,pos(' ',s));
a{{k]:=o;
end;
a{{p]:=copy(s,1,length(s));
o:=' ';
for k:=1 to p do
begin
for q:= 1 to length(a{{k]) do
begin
if (a{{k]{{q] in m){and(not(a{{k]{{q]in m1))and(not(a{{k-1]{{q]in m1))} then
begin
m1:=m1+{{a{{k]{{q}};
o:=o+a{{k]{{q];
end;
end;
end;
for i:=1 to length(o) do
g{{i]:=o{{i];
for i:= 1 to length(o) do
if g{{i] >g{{i+1] then
begin
h:= g{{i];
g{{i]:=g{{i+1];
g{{i+1]:=h;
end;
for i:= 1 to length(o) do
begin
if g{{i]= g{{i+1] then
writeln(g{{i]);
end;
textcolor(2);
writeln;
readkey;
end.
А вот второй:
program lab_15;
uses crt;
var
s:string;
a:array{{1..100] of string;
n,i,j,k:integer;
begin
clrscr;
writeln('Vvedite stroku');
readln(s);
k:=1;
n:=length(s);
for i:=1 to n do
if s{{i] <> ' 'then
a{{k]:=a{{k]+s{{i] else
k:=k+1;
for i:=1 to k do
begin
for i:=1 to length(a{{i]) do
begin
s:=a{{i];
if s{{i]='b' then
s{{i]:=s{{i+1];
if s{{i]='c' then
s{{i]:=s{{i+2];
if s{{i]='d' then
s{{i]:=s{{i+3];
if s{{i]='f' then
s{{i]:=s{{i+4];
if s{{i]='g' then
s{{i]:=s{{i+5];
if s{{i]='h' then
s{{i]:=s{{i+6];
if s{{i]='j' then
s{{i]:=s{{i+7];
if s{{i]='k' then
s{{i]:=s{{i+8];
if s{{i]='l' then
s{{i]:=s{{i+9];
if s{{i]='m' then
s{{i]:=s{{i+10];
if s{{i]='n' then
s{{i]:=s{{i+11];
if s{{i]='p' then
s{{i]:=s{{i+12];
if s{{i]='r' then
s{{i]:=s{{i+13];
if s{{i]='s' then
s{{i]:=s{{i+14];
if s{{i]='t' then
s{{i]:=s{{i+15];
if s{{i]='v' then
s{{i]:=s{{i+16];
if s{{i]='w' then
s{{i]:=s{{i+17];
if s{{i]='x' then
s{{i]:=s{{i+18];
if s{{i]='z' then
s{{i]:=s{{i+19];
end;
writeln(s{{i]);
end;
readkey;
end.
Суть такая вводим три слова, (не обизательно русских) через пробел, если естть согласные встрещающиеся в 2-х словах, выводим, а те которые в 1-ом или в 3-х выводить не надо.

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 3 марта 2006 5:56 | IP
miss_graffiti


Долгожитель

я бы сделала по-другому.
тупо в лоб.
памяти будет жрать жуткое кол-во, но пофиг.
плохо только, что динамические массивы в паскале делать не умею

итак:
создаем массив из логических переменных размера кол-во согласных * кол-во слов (если заранее неизвестно, то максимальное... в строке 256 символов, то есть больше 128 слов не будет никогда).
дальше анализируем имеющуюся строку.
и каждую согласную буковку заносим в соответствующую ячейку. (то есть на пересечении номера согласной и номера слова. соответственно, по пробелам отслеживаем, когда кончилось слово).
а дальше смотрим.
если в столбце 2 истины, а все остальное - ложь, то букву выводим.

Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 3 марта 2006 19:37 | IP
KMA



Долгожитель

Пусть у нас есть неограниченное количество слов, тогда алгоритм мисс граффити пойдет в пух и прах.
Мой вариант таков, сравнивая два слова рядом стоящих, а это не так уж и сложно просто найти первую согласную в первом слове, проверить не встречается ли оно во втором, если да, то выводим, если нет смотрим дальше, пока не закончиться первое слово, потом сравниваем второе с третьим ну т. д.  
Красиво будет решить это рекурсией.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 4 марта 2006 0:19 | IP
miss_graffiti


Долгожитель

неограниченного кол-ва слов у нас не может быть, т.к.в паскале длина строки ограничена.

твой вариант...
если у тебя буква встречается в 1,2 и 7 слове, она выведется. (один или 3 раза - неважно).
а нам надо, чтобы вывелись только те, которые встречаются ровно в 2 словах.

Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 4 марта 2006 8:37 | IP

Эта тема закрыта, новые ответы не принимаются

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]

Форум работает на скрипте © Ikonboard.com