X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Помогите с математикой)))
Licoric
Licoric
Topic Starter сообщение 7.3.2010, 0:21; Ответить: Licoric
Сообщение #1


Ваяю курсовик по экономике. Задания всем (4 группы по 30 человек) дали однообразное. Различается только циферками для расчета. Текст - одинаков. Вот решил сваять "считалку".

есть таблица (разбирали на паре):
http://vfat.ru/table.jpg

самый верх - 1-2-3-4-5-6-(сумма) - года.
qi: 6-5-...-2-1 - года по убывающей. В поле суммы - 21 (сумма всех лет 1+2...+6 = 21)
Hai считается по формуле:
Hai:
Hai1 = (6/21)*100 = 29 (клетка со звездочкой)
Hai2 = (5/21)*100 = 24 (округленно)
и так далее.

Aj, руб = 200 000 * (Hai/100) где Hai - строка выше, 100 - константа)
200 000 тоже изначально от руки вводится. Но это позже.
Ai = Aj/12
12 - константа (месяцы).


Изначально я запутался как все в один цикл запихнуть. Выводить можно не таблице, а пара пробелов и знак "|" (потом руками можно все собрать воедино). Это дано для таблицы в 6 лет (цифра 6). У меня - 12.
Соответственно 12 вводим на "предыдущей странице".

Застрял во на чем:
Не могу брать года и вычитать Hai (от 6 в случае таблицы и от указанного мной числа).
Ну и делить остальное соответственно. Застрял просто...
Собственно хелп...
ps http://vfat.ru/1/2.php
[php]<?php
include ("../header.php");
echo "<div id='content'>";
if (empty ($_GET['act']))
{
?>
<form name="" action="?act=1" method="post">
Предприятие приобрело объект основных средств стоимостью <input name="stoimost" type="text" value="175500"> руб.<br>
Срок его полезного использования составляет <input name="srok" type="text" value="12"> лет.<br>
Определите нормы и суммы амортизации данного объекта основных средств при разных способах его амортизации.<br>
<input type="submit" value="Подсчитать">
</form>
<?php



}
elseif (!empty ($_GET['act']))
{
$stoimost = (int)($_POST['stoimost']);
$srok = (int)($_POST['srok']);
$mes = (int)($srok*12);
$amort = (1/$mes)*100;

function fact($n){
if ($n==0) return 1;
else return $fact = $n + fact($n-1);
}
echo "Сумма всех лет: "; echo fact($srok)-1; echo "<br>";

for ($i = 1; $i <= $srok;)
{
echo "$i | ";
$i++;
}



}
echo "</div>";
include ("../footer.php");
?>[/php]
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 7.3.2010, 0:48; Ответить: Licoric
Сообщение #2


Не актуально.
Сделал циклами
ps но спасибо за участие тем, кто задумался над помощью.
http://vfat.ru/1/3.php
Все работает)))
*надо было на программера идти)))))) :rolleyes::rjunimagu:
[PHP]<?php
include ("../header.php");
echo "<div id='content'>";
if (empty ($_GET['act']))
{
?>
<form name="" action="?act=1" method="post">
Предприятие приобрело объект основных средств стоимостью <input name="stoimost" type="text" value="175500"> руб.<br>
Срок его полезного использования составляет <input name="srok" type="text" value="12"> лет.<br>
Определите нормы и суммы амортизации данного объекта основных средств при разных способах его амортизации.<br>
<input type="submit" value="Подсчитать">
</form>
<?php



}
elseif (!empty ($_GET['act']))
{
$stoimost = (int)($_POST['stoimost']);
$srok = (int)($_POST['srok']);
$mes = (int)($srok*12);
$amort = (1/$mes)*100;

function fact($n){
if ($n==0) return 1;
else return $fact = $n + fact($n-1);
}
echo "Сумма всех лет: "; echo fact($srok)-1; echo "<br>";
$all = fact($srok)-1;

for ($i = 1; $i <= $srok;)
{
echo "$i <b>|</b> ";
$i++;
}
echo "<br>";
$qi = $srok;
for ($i = 1; $i <= $srok;)
{
$i++;
$Hi = ($qi/(fact($srok)-1))*100;

$Hi = number_format($Hi, 2, '.', '');
echo "$Hi <b>|</b> ";
$qi = $qi-1;
}
echo "<br>";
$qi = $srok;
for ($i = 1; $i <= $srok;)
{
$i++;
$Hi = ($qi/(fact($srok)-1))*100;
$Aj = $stoimost * ($Hi/100);
$Hi = number_format($Hi, 2, '.', '');
// $Aj = number_format($Aj, 2, '.', '');
echo "$Aj <b>|</b> ";
$qi = $qi-1;
}

echo "<br>";
// высчитываем Ai
$qi = $srok;
for ($i = 1; $i <= $srok;)
{
$i++;
$Hi = ($qi/(fact($srok)-1))*100;
$Aj = $stoimost * ($Hi/100);
$Hi = number_format($Hi, 2, '.', '');
// $Aj = number_format($Aj, 2, '.', '');
$Ai = $Aj/12;
echo "$Ai <b>|</b> ";
$qi = $qi-1;
}

}
echo "</div>";
include ("../footer.php");
?>[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 7.3.2010, 17:49; Ответить: Licoric
Сообщение #3


Еще одна фишка.
Есть таблица:
http://vfat.ru/table2.jpg
Я ввожу на "предыдущей" странице количество лет использования оборудования. Допустим, 12. Из второго столба надо найти мой диапазон лет (10-15) и в 3-м столбе посмотреть коэффициент (1,8%). Далее этот коэффициент подставлять в формулу до получения на выходе значения 20К. (но это уже обычный цикл, обещаю сделать сам). Я не понимаю, как мне ввести в форме число и сделать выборку из второго столба.
Формулы будут такие (хотя их тут пишу больше для себя):
$norma_am - множитель из таблицы, 3-й столб.
1) $Ai = $stoimost * ($norma_am/100)

2) $C.ost = $stoimost - $Ai
3) $A = $C.ost * ($norma_am/100)

Далее $C.ost = $C.ost - $A
а $A = $C.ost * ($norma_am/100)

и так далее, пока $C.ost не станет равен или меньшь 20000.

Собственно вопрос в реализации таблицы. Как введя количество лет выбрать свой множитель. Не уж-то делать 10 переменных заводить?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 7.3.2010, 19:28; Ответить: Licoric
Сообщение #4


не актуально.
[php] if ($srok >1 && $srok <=2 ) $am = 14.3;
if ($srok >2 && $srok <=3 ) $am = 8.8;
if ($srok >3 && $srok <=5 ) $am = 5.6;
if ($srok >5 && $srok <=7 ) $am = 3.8;
if ($srok >7 && $srok <=10 ) $am = 2.7;
if ($srok >10 && $srok <=15 ) $am = 1.8;
if ($srok >15 && $srok <=20 ) $am = 1.3;
if ($srok >20 && $srok <=25 ) $am = 1;
if ($srok >25 && $srok <=30 ) $am = 0.8;
if ($srok >30 ) $am = 0.7;
echo "Коэф. амортизации $am<br>";[/php]
*чем проще задача, тем сложнее решить)))
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 7.3.2010, 21:05; Ответить: Licoric
Сообщение #5


И что-то цикл не стартует.
[php] $Ai = $stoimost * $am / 100;
for ($i = $stoimost; $i <= 20000;)
{
$Cost = $stoimost - $Ai;
echo "C остаточное: $Cost ";
$An = $Cost * ($am/100);
echo "A (балансовая стоимость) = $An<br>";
$stoimost = $stoimost - $An;
$i = $i-$An;
}[/php]
Если его адаптировать указать необходимые значения, то получится так:
[PHP] $Ai = $stoimost(175500) * $am(1,8) / 100;
for ($i = $stoimost(); $i <= 20000;)
{
$Cost = $stoimost(175500) - $Ai(см. выше);
echo "C остаточное: $Cost ";
...
$An = $Cost * ($am/100);
echo "A (балансовая стоимость) = $An<br>";
$stoimost = $stoimost - $An;
$i = $i-$An;
}[/PHP]
После точек понятно, что все значения, по идее, есть.
Но что-то не получается...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 7.3.2010, 22:07; Ответить: Licoric
Сообщение #6


?
Непосильная задача? :rolleyes:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
yaroslav_hb
yaroslav_hb
сообщение 7.3.2010, 23:56; Ответить: yaroslav_hb
Сообщение #7


Кажись так

[php]for ($i = $stoimost; $i <= 20000; $i++)[/php]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 8.3.2010, 0:10; Ответить: Licoric
Сообщение #8


Не катит. А разве ++ это не как +1 работает?
Мне надо каждый раз уменьшать на определенное число. В коде это выглядит как "$i = $i-$An; }"
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
yaroslav_hb
yaroslav_hb
сообщение 8.3.2010, 0:27; Ответить: yaroslav_hb
Сообщение #9


(Licoric @ 8.3.2010, 02:10) *
Не катит. А разве ++ это не как +1 работает?
Мне надо каждый раз уменьшать на определенное число. В коде это выглядит как "$i = $i-$An; }"

я точно не знаю но попробую вот

[PHP] $i--[/PHP] скорей всего
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Licoric
Licoric
Topic Starter сообщение 8.3.2010, 0:55; Ответить: Licoric
Сообщение #10


по логике это минус единица от $i
Но мне надо отнимать каждый раз разную сумму.
ps не прокатило.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Помогите вспомнить рекламного бота Телеграм для обмена рекламой
0 Mixatraider 692 21.2.2024, 23:42
автор: Mixatraider
Открытая тема (нет новых ответов) Помогите рещить проблему с монитором.
Почему низкое разрешение при подключении монитора через displayport?
0 Levels 1695 11.12.2020, 0:48
автор: Levels
Открытая тема (нет новых ответов) Помогите кто нибудь получить партнерку Росбанк!
7 heisenberg_mw 2315 7.8.2020, 9:28
автор: heisenberg_mw
Открытая тема (нет новых ответов) Помогите найти тему пожалуйста
7 virtas 12400 24.7.2020, 17:02
автор: -JamesSmips-
Открытая тема (нет новых ответов) Помогите с поиском доноров
3 tehno_music 3331 4.11.2019, 17:15
автор: goblin78


 



RSS Текстовая версия Сейчас: 28.3.2024, 18:56
Дизайн