Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
1

Сгенерируйте математическое задание, используя в качестве шаблона упражнение из задачника Сканави

28.05.2015, 17:09. Показов 1395. Ответов 16
Метки нет (Все метки)

Сгенерируйте математическое задание, используя в качестве шаблона упражнение из задачника Сканави.

Добавлено через 9 минут
https://www.cyberforum.ru/cgi-bin/latex.cgi?{\left( \left( 1+x+{x}^{2}/2x+{x}^{2}\right)+2-\left( 1-x+{x}^{2}/2x-{x}^{2}\right)\right)}^{-1}*\left( 5-2{x}^{2}\right)

Добавлено через 4 часа 18 минут
Как вообще это делается?
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.05.2015, 17:09
Ответы с готовыми решениями:

Что можете посоветовать в качестве "задачника" по ассемблеру
Собственно, так получилось, что 28 числа нужно будет пересдавать программирование на Ассемблере...

Упражнение по программированию (Стивен Прата, глава 2, упражнение 3)
2 Глава, вопрос 3. Напишите программу на С++, которая использует три определяемых пользователем...

Математическое задание на VB
Я, наверное, типичный представитель рода блондинок, которые не могут разобраться ни в чем серьезном...

Математическое задание
задача такая: Найти min 6-значное число, которое уменьшается в 3 раза, после того, как последняя...

16
576 / 514 / 253
Регистрация: 26.09.2010
Сообщений: 2,595
28.05.2015, 18:05 2
Цитата Сообщение от Александра 04 Посмотреть сообщение
Как вообще это делается?
а что не понятно то? Как решить уравнение с неизвестным?
0
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
28.05.2015, 18:21  [ТС] 3
при чем тут решить.нужно сгенерировать, чтобы выводились много вариантов такого же задания но с другими цифрами

Добавлено через 1 минуту
PHP
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
<html>
<head>
</head>
<body>
<form  method=post>
<h1>Квадратные уравнения</h1>
<p><b>Введите количество вариантов</b></p>
   <p><input type="text" name="k" size=10 maxlength=100 ></p>
<input type="submit"  name="submit" value="Создать">
 </form>
</body>
</html>
 
<?php
if ($_POST['submit']==="Создать")
{
$fp=fopen("g.xml",'wt') or die ("Ошибка при открытии файла");
function Nod ($xx,$yy)
  {
   while ($xx<>$yy) 
   {if ($xx>$yy) $xx=$xx-$yy; else $yy=$yy-$xx;}
    return $xx;
  }
 $str="<?xml version='1.0' encoding='windows-1251'?>\n";
 $str=$str."<html xmlns='http://www.w3.org/1999/xhtml'>\n";
 $str=$str."<head>\n";
 $str=$str."<meta http-equiv='Content-Type' content='text/html' />\n"; 
 $str=$str."</head>\n";
 $str=$str."<body>\n";
 
fputs($fp,$str);
 
$kol=$_POST['k'];
 
mt_srand(time()+(double) microtime()*1000000);
for($l=1;$l<=$kol;$l++)
{ 
$str="";
$str=$str."<p>".$l.") \n";
do {$x1=mt_rand(-10, 10); } while ($x1==0);
do {$x2=mt_rand(-10, 10); } while ($x2==0);
$b=-($x1+$x2);
$c=$x1*$x2;
$str=$str."<math xmlns='http://www.w3.org/1998/Math/MathML'>\n";
 
$str=$str."<msup><mi>x</mi><mn>2</mn></msup>";
if ($b>0)
     {
    if ($b != 1)
        $str=$str."<mo>+</mo><mn>$b</mn>";
    else
        $str=$str."<mo>+</mo>";
    $str=$str."<mi>x</mi>";
      }
if ($b<0)
    {
    $str=$str."<mo>-</mo>";
    if ($b != -1) $str=$str.(-$b);
    $str=$str."<mi>x</mi>";
     }
 
if ($c>0)
     {
    $str=$str."<mo>+</mo><mn>$c</mn>";
     }
if ($c<0)
    {
    $str=$str."<mo>-</mo>".(-$c);
    }
 
$str=$str. "<mo>=</mo><mn>0</mn></math>\n";
$str=$str. "</p>";
fputs($fp,$str);
 
}
 
 
$str= "</body>\n";
$str=$str. "</html>\n";
fputs($fp,$str);
fclose($fp);
 
  print "<HTML><HEAD>\n";
  print "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=g.xml'>\n";
  print "</HEAD></HTML>\n";
}
?>
Добавлено через 54 секунды
Это для квадратного уравнения, а нужно вот для этого выражения такое же задание
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16828 / 6706 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.05.2015, 19:14 4
константы заменяете на нечто наподобие mt_rand($a, $b). $a, $b - числа от и до. Символы операций тоже можете рандомить.
Например
PHP
1
$op = ['+', '-', '*', '/'];
и вместо +, - и т.д. подставлять
PHP
1
$op[array_rand($op)]
ну и генерировать, пожалуй, лучше при помощи sprintf/printf
PHP
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
$op = ['+', '-', '*', '/'];
printf(
    "((%d %s x %s x&sup%d %s %dx %s x&sup%d) %s 
     (%d %s x %s x&sup%d %s %dx %s x&sup%d))&sup%d %s (%d %s %dx&sup%d)",
    mt_rand(-10, 10),
    $op[array_rand($op)],
    $op[array_rand($op)],
    mt_rand(2, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    mt_rand(2, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    $op[array_rand($op)],
    mt_rand(2, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    mt_rand(2, 3),
    mt_rand(-3, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    mt_rand(2, 3)
);
Добавлено через 3 минуты
Правда, пожалуй, лучше везде &sup%d заменить на <sup>%d</sup>, а то с числами <= 0 и с числами > 3 косячит
0
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
29.05.2015, 11:04  [ТС] 5
А можно полностью код, я что-то не очень поняла

Добавлено через 3 минуты
Еще нужно, Используя PHP и MathML только
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16828 / 6706 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
29.05.2015, 23:32 6
А что за код еще вам нужен для полноты восприятия?

Добавлено через 1 минуту
MathML не используется вовсе, все остальное стандартно
0
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
01.06.2015, 08:48  [ТС] 7
Не выполняется ничего
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16828 / 6706 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
01.06.2015, 10:50 8
Лучший ответ Сообщение было отмечено Александра 04 как решение

Решение

Что вы говорите.. Только вот ведь незадача, я проверяю, прежде чем выкладывать код. Если же нет возможности - то я об этом сразу пишу. И этот код я проверял.
PHP
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
kopoji@kopoji-K53SC:~$ cat /var/www/info.php
<?php 
echo PHP_EOL;
$op = ['+', '-', '*', '/'];
printf(
    "((%d %s x %s x&sup%d %s %dx %s x&sup%d) %s 
     (%d %s x %s x&sup%d %s %dx %s x&sup%d))&sup%d %s (%d %s %dx&sup%d)",
    mt_rand(-10, 10),
    $op[array_rand($op)],
    $op[array_rand($op)],
    mt_rand(2, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    mt_rand(2, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    $op[array_rand($op)],
    mt_rand(2, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    mt_rand(2, 3),
    mt_rand(-3, 3),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    $op[array_rand($op)],
    mt_rand(-10, 10),
    mt_rand(2, 3)
);
echo PHP_EOL;
kopoji@kopoji-K53SC:~$ php -f /var/www/info.php
 
((-1 * x - x&sup3 * -9x - x&sup3) + 
     (-2 / x * x&sup2 * 6x / x&sup2))&sup1 - (2 * -10x&sup2)
kopoji@kopoji-K53SC:~$
&sup в консоли не парсится, в браузере будет степень.
1
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
02.06.2015, 08:08  [ТС] 9
Parse error: syntax error, unexpected '[' in Z:\home\localhost\www\7.php on line 4

ОШИБКА!
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16828 / 6706 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
02.06.2015, 08:43 10
Какой ужас. Обновите версию php. Ну или используйте старый синтаксис для массивов. А какой он вы легко можете узнать, посмотрев документацию на официальном сайте.
0
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
02.06.2015, 09:39  [ТС] 11
А вам трудно

Добавлено через 6 минут
Цитата Сообщение от KOPOJI Посмотреть сообщение
kopoji@kopoji-K53SC:~$ php -f /var/www/info.php
((-1 * x - x&sup3 * -9x - x&sup3) +
* * *(-2 / x * x&sup2 * 6x / x&sup2))&sup1 - (2 * -10x&sup2)
kopoji@kopoji-K53SC:~$
Поясните это пожалуйста
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16828 / 6706 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
02.06.2015, 17:36 12
Цитата Сообщение от Александра 04 Посмотреть сообщение
А вам трудно
Нет. Просто неинтересно, когда тот, кому это надо (в отличии от меня), не хочет прилагать никаких усилий, а хочет все готовенькое. Особенно с учетом того, что исправления минимальны.
Цитата Сообщение от Александра 04 Посмотреть сообщение
Поясните это пожалуйста
Это запуск скрипта на выполнение из консоли и результат его работы.
0
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
02.06.2015, 18:31  [ТС] 13
Спасибо большое!!! А можно это выражение как-то в виде дроби сделать,деление чертой горизонтальной заменить.чтобы лучше это смотрелось
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16828 / 6706 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.06.2015, 08:13 14
Можно, например, с помощью косой черты - /
Замените соответствующую строчку на такую
PHP
1
$op = ['+', '-', '*', '&frasl;'];
Добавлено через 1 минуту
Хотя что от этого изменится - я что-то не подумал..
Нет, теоретически можно с использованием CSS и т.д. Но это будет чересчур сложно.
0
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
24.06.2015, 16:57  [ТС] 15
Сгенерируйте математическое задание, используя в качестве шаблона упражнение из задачника Сканави.

PHP/HTML
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
<html>
<head>
</head>
<body>
<form method=post>
<h1>Квадратные уравнения</h1>
<p><b>Введите количество вариантов</b></p>
<p><input type="text" name="k" size=10 maxlength=100 ></p>
<input type="submit" name="submit" value="Создать">
</form>
</body>
</html>
 
<?php
if ($_POST['submit']==="Создать")
{
$fp=fopen("g.xml",'wt') or die ("Ошибка при открытии файла");
function Nod ($xx,$yy)
{
while ($xx<>$yy) 
{if ($xx>$yy) $xx=$xx-$yy; else $yy=$yy-$xx;}
return $xx;
}
$str="<?xml version='1.0' encoding='windows-1251'?>\n";
$str=$str."<html xmlns='http://www.w3.org/1999/xhtml'>\n";
$str=$str."<head>\n";
$str=$str."<meta http-equiv='Content-Type' content='text/html' />\n"; 
$str=$str."</head>\n";
$str=$str."<body>\n";
 
fputs($fp,$str);
 
$kol=$_POST['k'];
 
mt_srand(time()+(double) microtime()*1000000);
for($l=1;$l<=$kol;$l++)
{ 
$str="";
$str=$str."<p>".$l.") \n";
do {$x1=mt_rand(-10, 10); } while ($x1==0);
do {$x2=mt_rand(-10, 10); } while ($x2==0);
$b=-($x1+$x2);
$c=$x1*$x2;
$str=$str."<math xmlns='http://www.w3.org/1998/Math/MathML'>\n";
 
$str=$str."<msup><mi>x</mi><mn>2</mn></msup>";
if ($b>0)
{
if ($b != 1)
$str=$str."<mo>+</mo><mn>$b</mn>";
else
$str=$str."<mo>+</mo>";
$str=$str."<mi>x</mi>";
}
if ($b<0)
{
$str=$str."<mo>-</mo>";
if ($b != -1) $str=$str.(-$b);
$str=$str."<mi>x</mi>";
}
 
if ($c>0)
{
$str=$str."<mo>+</mo><mn>$c</mn>";
}
if ($c<0)
{
$str=$str."<mo>-</mo>".(-$c);
}
 
$str=$str. "<mo>=</mo><mn>0</mn></math>\n";
$str=$str. "</p>";
fputs($fp,$str);
 
}
 
 
$str= "</body>\n";
$str=$str. "</html>\n";
fputs($fp,$str);
fclose($fp);
 
print "<HTML><HEAD>\n";
print "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=g.xml'>\n";
print "</HEAD></HTML>\n";
}
?>
Добавлено через 35 секунд
Сгенерируйте математическое задание, используя в качестве шаблона упражнение из задачника Сканави.
0
202 / 151 / 44
Регистрация: 24.11.2013
Сообщений: 1,106
24.06.2015, 17:17 16
Александра 04, где вопрос?
0
-29 / 1 / 0
Регистрация: 22.04.2015
Сообщений: 112
24.06.2015, 21:01  [ТС] 17
Сгенерируйте математическое задание, используя в качестве шаблона упражнение из задачника Сканави.
https://www.cyberforum.ru/cgi-bin/latex.cgi?\small \left( \left( 1+x+{x}^{2}\right)/\left( 2*x+{x}^{2}\right)+2-\left(1-x+{x}^{2}\right) /\left(2x-{x}^{2}\right)\right)^{-1}*\left( 5-2*{x}^{2}\right)
Используя рнр и mathml как в примере с квадратными уравнениями:

Цитата Сообщение от Александра 04 Посмотреть сообщение
HTML5
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
<html>
<head>
</head>
<body>
<form method=post>
<h1>Квадратные уравнения</h1>
<p><b>Введите количество вариантов</b></p>
<p><input type="text" name="k" size=10 maxlength=100 ></p>
<input type="submit" name="submit" value="Создать">
</form>
</body>
</html>
<?php
if ($_POST['submit']==="Создать")
{
$fp=fopen("g.xml",'wt') or die ("Ошибка при открытии файла");
function Nod ($xx,$yy)
{
while ($xx<>$yy) 
{if ($xx>$yy) $xx=$xx-$yy; else $yy=$yy-$xx;}
return $xx;
}
$str="<?xml version='1.0' encoding='windows-1251'?>\n";
$str=$str."<html xmlns='http://www.w3.org/1999/xhtml'>\n";
$str=$str."<head>\n";
$str=$str."<meta http-equiv='Content-Type' content='text/html' />\n"; 
$str=$str."</head>\n";
$str=$str."<body>\n";
fputs($fp,$str);
$kol=$_POST['k'];
mt_srand(time()+(double) microtime()*1000000);
for($l=1;$l<=$kol;$l++)
{ 
$str="";
$str=$str."<p>".$l.") \n";
do {$x1=mt_rand(-10, 10); } while ($x1==0);
do {$x2=mt_rand(-10, 10); } while ($x2==0);
$b=-($x1+$x2);
$c=$x1*$x2;
$str=$str."<math xmlns='http://www.w3.org/1998/Math/MathML'>\n";
$str=$str."<msup><mi>x</mi><mn>2</mn></msup>";
if ($b>0)
{
if ($b != 1)
$str=$str."<mo>+</mo><mn>$b</mn>";
else
$str=$str."<mo>+</mo>";
$str=$str."<mi>x</mi>";
}
if ($b<0)
{
$str=$str."<mo>-</mo>";
if ($b != -1) $str=$str.(-$b);
$str=$str."<mi>x</mi>";
}
if ($c>0)
{
$str=$str."<mo>+</mo><mn>$c</mn>";
}
if ($c<0)
{
$str=$str."<mo>-</mo>".(-$c);
}
$str=$str. "<mo>=</mo><mn>0</mn></math>\n";
$str=$str. "</p>";
fputs($fp,$str);
}
$str= "</body>\n";
$str=$str. "</html>\n";
fputs($fp,$str);
fclose($fp);
print "<HTML><HEAD>\n";
print "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=g.xml'>\n";
print "</HEAD></HTML>\n";
}
?>
И деление надо сделать горизонтальной чертой, я не знаю как тут это ввести.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.06.2015, 21:01

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Математическое задание в Borland C++
Граждане программисты помогите пожалуйста решить задачку! Вчера весь день просидел, а теперь и...

Обычное математическое задание
С прошлого года непомню С++ вспоминается гибло, чтобы не наделать ошибок помогите где ошибка и что...

Математическое задание в массиве
Private Sub CommandButton1_Click() Dim i&amp;, j&amp; With Range(&quot;A1:C6&quot;) Randomize Timer ...

Структура в качестве параметра шаблона
Добрый день, возник вопрос при выполнении КР по программированию: Можно ли передать структуру в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.