![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Смысл работы в том, что есть алгебраическое уравнение, которое нужно n раз сгенерировать в xml файл и затем открыть в браузере.
То есть, когда запускаешь проект надо ввести какое количество необходимо сгенерировать и нажать кнопку "сгенерировать". В принципе программа работает, единственная ошибка в том, что какое бы число не написали выражение генерируется всего один раз. Помогите, пожалуйста, не могу понять как сделать, чтобы оно генерировалось заданное количество раз. Заранее спасибо! |
|
#2
|
|||
|
|||
|
Код в студию!
![]() |
|
#3
|
||||
|
||||
|
Код:
const
N = 10;
var
i: Integer;
begin
for i:=1 to N do
begin
//
end;
end; |
|
#4
|
|||
|
|||
|
PS11011010,
Код:
procedure TForm1.Button1Click(Sender: TObject);
var c,d:integer;
np,fail,i:integer;
n:byte;
begin
assignfile(f,'4.xml');
rewrite(f);
writeln(f,'<?xml version="1.0" encoding="windows-1251"?>');
writeln(f,'<?xml-stylesheet type="text/xsl" href="http://www.w3.org/Math/XSL/pmathml.xsl"?>');
writeln(f,'<html xmlns="http://www.w3.org/1999/xhtml">');
writeln(f,'<head>');
writeln(f,'<meta http-equiv="Content-Type" content="text/html" />');
writeln(f,'</head>');
writeln(f,'<body>');
if memo1.Text<>'' then
begin
val(memo1.Text,np,fail);
if (fail=0) and (np<>0) then n:=strtoint(memo1.Text)
else
begin
showmessage('Введите число от 1 до 255');
closefile(f);
exit;
end;
end
else
begin
showmessage('Пустое поле ввода');
closefile(f);
exit;
end;
Randomize;
For i := 1 To n Do
begin
repeat c:=random(11)-5 until (c<>0);
repeat d:=random(11)-5 until (d<>0);
end;
writeln(f,'<p>');
writeln(f,'<math xmlns="http://www.w3.org/1998/Math/MathML">');
writeln(f,'<mfrac>');
writeln(f,'<mrow>');
if d<0 then
begin
if d<>-1 then writeln(f,' <mn>'+inttostr(abs(d))+'</mn> ');
end
else
begin
if d<>1 then writeln(f,' <mn>'+inttostr(abs(d))+'</mn> ');
end;
writeln(f,'<mi>a</mi>');
writeln(f,'<mi>x</mi>');
writeln(f,'<mo>-</mo>');
if c<0 then
begin
if c<>-1 then writeln(f,' <mn>'+inttostr(abs(c))+'</mn> ');
end
else
begin
if c<>1 then writeln(f,' <mn>'+inttostr(abs(c))+'</mn> ');
end;
writeln(f,'<msup>');
writeln(f,'<mi>x</mi>');
writeln(f,'<mn>2</mn>');
writeln(f,'</msup>');
writeln(f,'</mrow>');
writeln(f,'<mrow>');
if d<0 then
begin
if d<>-1 then writeln(f,' <mn>'+inttostr(sqr(d))+'</mn> ');
end
else
begin
if d<>1 then writeln(f,' <mn>'+inttostr(sqr(d))+'</mn> ');
end;
writeln(f,'<msup>');
writeln(f,'<mi>a</mi>');
writeln(f,'<mn>2</mn>');
writeln(f,'</msup>');
writeln(f,'<mo>-</mo>');
if c<0 then
begin
if c<>-1 then writeln(f,' <mn>'+inttostr(sqr(c))+'</mn> ');
end
else
begin
if c<>1 then writeln(f,' <mn>'+inttostr(sqr(c))+'</mn> ');
end;
writeln(f,'<msup>');
writeln(f,'<mi>x</mi>');
writeln(f,'<mn>2</mn>');
writeln(f,'</msup>');
writeln(f,'</mrow>');
writeln(f,'</mfrac>');
writeln(f,'</math>');
writeln(f,'</p>');
writeln(f,'</body>');
writeln(f,'</html> ');
closefile(f);
end;
end.Последний раз редактировалось Admin, 01.04.2012 в 20:23. |
|
#5
|
|||
|
|||
|
NumLock,
в принципе у меня что-то подобное написано,но почему-то не работает.... |
|
#6
|
||||
|
||||
|
Ирина Владимировна, у Вас цикл крутит:
Код:
For i := 1 To n Do
begin
repeat c:=random(11)-5 until (c<>0);
repeat d:=random(11)-5 until (d<>0);
end; |
|
#7
|
|||
|
|||
|
NumLock,
Огромное спасибо за помощь!!! |