Автор: Пользователь скрыл имя, 26 Марта 2012 в 10:16, курсовая работа
Для развития компьютерной техники и совершенствования архитектурной организации компьютерных систем (КС) необходимо непрерывное обучение и самосовершенствование компьютерных специалистов и студентов. Существенная роль при обучении в области компьютерных наук выполняет применение современных методов изучения архитектурной организации и анализа системной производительности КС.
Введение…………………………………………………………………...……3
1. Экономико-математическая модель………………………………….4
1.1 Издержки производства, себестоимость, прибыль………………..4
1.2. Точка безубыточности, построение графика………………………6
1.3. Методы математического программирования…………………… 8
1.4. Аппроксимация……………………………………………………..10
2. Программа…………………………………………………………….12
2.1. Листинг программы………………………………………………..13
2.2. Таблица с результатами……………………………………………22
2.3. График безубыточности……………………………………………24
3. Анализ результатов и выводы……………………………………….25
Список используемой литературы…………………………………….26
Программа MS Excel, являясь лидером на рынке программ обработки электронных таблиц, определяет тенденции развития в этой области. Вплоть до версии 4.0 программа Excel представляла собой фактический стандарт с точки зрения функциональных возможностей и удобства работы.
Одним из важнейших функциональных расширений программы, предназначенным для профессионалов, является встроенная в Excel Среда программирования Visual Basic (VBA) для решения прикладных задач. Благодаря VBA фирме Microsoft удалось не только расширить возможности языка макрокоманд Excel 4.0, но и ввести новый уровень прикладного программирования, поскольку VBA позволяет создавать полноценные прикладные пакеты, которые по своим функциям выходят далеко за рамки обработки электронных таблиц.
2.1 Листинг программы
Sub Макрос1()
'задаем массив данных
Dim x(1 To 10) As Double 'х - объем производства, имеет 10 различных значений
Dim y(1 To 10) As Double 'y - суммарные издержки, имеет 10 различных значений
Dim Sx As Double 'Sx - сумма значений х
Dim Sy As Double 'Sy - сумма значенй y
Dim Sxy As Double 'Sxy - сумма произведения xy
Dim Sx2 As Double 'Sx2 - сумма x^2
Dim Sk As Double 'Sk - седнеквадратичное отклонение
Dim a As Double 'a - коэффициент
Dim b As Double 'b - коэффициент
Dim a1 As Double 'a1 - коэффициент
Dim b1 As Double 'b1 - коэффициент
Dim a2 As Double 'a2 - коэффициент
Dim b2 As Double 'b2 - коэффициент
'вводим данные
Range("A1").Select 'выбираем ячейку А1
ActiveCell.FormulaR1C1 = "Объем" 'вводим в ячейку А1 данные
Range("A3").Select
ActiveCell.FormulaR1C1 = "Переменные издержки"
Range("A5").Select
ActiveCell.FormulaR1C1 = "Постоянные издержки"
Range("A7").Select
ActiveCell.FormulaR1C1 = "Доход"
Range("A9").Select
ActiveCell.FormulaR1C1 = "Суммарные издержки"
'вводим значения объема производства
Range("A2").Select
ActiveCell.FormulaR1C1 = "0.5"
Range("B2").Select
ActiveCell.FormulaR1C1 = "1"
Range("C2").Select
ActiveCell.FormulaR1C1 = "1.5"
Range("D2").Select
ActiveCell.FormulaR1C1 = "2"
Range("E2").Select
ActiveCell.FormulaR1C1 = "2.5"
Range("F2").Select
ActiveCell.FormulaR1C1 = "3"
Range("G2").Select
ActiveCell.FormulaR1C1 = "3.5"
Range("H2").Select
ActiveCell.FormulaR1C1 = "4"
Range("I2").Select
ActiveCell.FormulaR1C1 = "4.5"
Range("J2").Select
ActiveCell.FormulaR1C1 = "5"
'вводим значения переменных издержек
Range("A4").Select
ActiveCell.FormulaR1C1 = "7"
Range("B4").Select
ActiveCell.FormulaR1C1 = "10"
Range("C4").Select
ActiveCell.FormulaR1C1 = "16"
Range("D4").Select
ActiveCell.FormulaR1C1 = "24"
Range("E4").Select
ActiveCell.FormulaR1C1 = "32"
Range("F4").Select
ActiveCell.FormulaR1C1 = "47"
Range("G4").Select
ActiveCell.FormulaR1C1 = "123"
Range("H4").Select
ActiveCell.FormulaR1C1 = "230"
Range("I4").Select
ActiveCell.FormulaR1C1 = "237"
Range("J4").Select
ActiveCell.FormulaR1C1 = "471"
'вводим значения постоянных издержек
Range("A6").Select
ActiveCell.FormulaR1C1 = "1005"
Range("B6").Select
ActiveCell.FormulaR1C1 = "1014"
Range("C6").Select
ActiveCell.FormulaR1C1 = "1016"
Range("D6").Select
ActiveCell.FormulaR1C1 = "1014"
Range("E6").Select
ActiveCell.FormulaR1C1 = "1004"
Range("F6").Select
ActiveCell.FormulaR1C1 = "1043"
Range("G6").Select
ActiveCell.FormulaR1C1 = "1037"
Range("H6").Select
ActiveCell.FormulaR1C1 = "1014"
Range("I6").Select
ActiveCell.FormulaR1C1 = "1036"
Range("J6").Select
ActiveCell.FormulaR1C1 = "1044"
Range("A8").Select
ActiveCell.FormulaR1C1 = "260"
Range("B8").Select
ActiveCell.FormulaR1C1 = "510"
Range("C8").Select
ActiveCell.FormulaR1C1 = "759"
Range("D8").Select
ActiveCell.FormulaR1C1 = "1008"
Range("E8").Select
ActiveCell.FormulaR1C1 = "1264"
Range("F8").Select
ActiveCell.FormulaR1C1 = "1496"
Range("G8").Select
ActiveCell.FormulaR1C1 = "1783"
Range("H8").Select
ActiveCell.FormulaR1C1 = "2005"
Range("I8").Select
ActiveCell.FormulaR1C1 = "2317"
Range("J8").Select
ActiveCell.FormulaR1C1 = "2515"
Range("A10").Select
ActiveCell.FormulaR1C1 = "=R[-4]C+R[-6]C"
Range("A10").Select
Selection.AutoFill Destination:=Range("A10:J10"), Type:=xlFillDetault
Range("L11").Select
Sk = 0
For i = 1 To 10
x(i) = Cells(2, 1 + i - 1)
y(i) = Cells(10, 1 + i - 1)
Next i
GoSub Lin
Range("A11").Select
ActiveCell.FormulaR1C1 = "Линейная аппроксимация суммарных издержек"
Range("A12").Select
ActiveCell.FormulaR1C1 = "a="
Range("B12").Select
ActiveCell.FormulaR1C1 = a
Range("C12").Select
ActiveCell.FormulaR1C1 = "b="
Range("D12").Select
ActiveCell.FormulaR1C1 = b
a1 = a
b1 = b
For i = 1 To 10
Cells(13, 1 + i - 1).Value = a * x(i) + b
Sk = Sk + (y(i) - a * x(i) - b) ^ 2
Sk = Sk ^ 1 / 2
Next i
Range("A14").Select
ActiveCell.FormulaR1C1 = "Среднеквадратичное отклонение"
Range("G14").Select
ActiveCell.FormulaR1C1 = Sqr(Sk / 10)
With Range("A14:G14").Font
.FontStyle = "Bold"
End With
Sk = 0
For i = 1 To 10
x(i) = Cells(2, 1 + i - 1)
y(i) = Cells(10, 1 + i - 1)
Next i
GoSub Step
Range("A15").Select
ActiveCell.FormulaR1C1 = "Степенная аппроксимация суммарных издержек"
Range("A16").Select
ActiveCell.FormulaR1C1 = "a="
Range("B16").Select
ActiveCell.FormulaR1C1 = a
Range("C16").Select
ActiveCell.FormulaR1C1 = "b="
Range("D16").Select
ActiveCell.FormulaR1C1 = b
For i = 1 To 10
Cells(17, 1 + i - 1).Value = a * (x(i) ^ b)
Sk = Sk + (a * (x(i) ^ b) - y(i)) ^ 2
Sk = Sk ^ 1 / 2
Next i
Range("A18").Select
ActiveCell.FormulaR1C1 = "Среднеквадратичное отклонение"
Range("G18").Select
ActiveCell.FormulaR1C1 = Sqr(Sk / 10)
With Range("A18:G18").Font
.FontStyle = "Bold"
End With
Sk = 0
For i = 1 To 10
x(i) = Cells(2, 1 + i - 1)
y(i) = Cells(10, 1 + i - 1)
Next i
GoSub Pokas
Range("A19").Select
ActiveCell.FormulaR1C1 = "Показательная аппроксимация суммарных издержек"
Range("A20").Select
ActiveCell.FormulaR1C1 = "a="
Range("B20").Select
ActiveCell.FormulaR1C1 = a
Range("C20").Select
ActiveCell.FormulaR1C1 = "b="
Range("D20").Select
ActiveCell.FormulaR1C1 = b
For i = 1 To 10
Cells(21, 1 + i - 1).Value = a * (b ^ x(i))
Sk = Sk + ((a * (b ^ x(i))) - y(i)) ^ 2
Sk = Sk ^ 1 / 2
Next i
Range("A22").Select
ActiveCell.FormulaR1C1 = "Среднеквадратичное отклонение"
Range("G22").Select
ActiveCell.FormulaR1C1 = Sqr(Sk / 10)
With Range("A22:G22").Font
.FontStyle = "Bold"
End With
Sk = 0
For i = 1 To 10
x(i) = Cells(2, 1 + i - 1)
y(i) = Cells(8, 1 + i - 1)
Next i
GoSub Lin
Range("A23").Select
ActiveCell.FormulaR1C1 = "Линейная аппроксимация дохода"
Range("A24").Select
ActiveCell.FormulaR1C1 = "a="
Range("B24").Select
ActiveCell.FormulaR1C1 = a
Range("C24").Select
ActiveCell.FormulaR1C1 = "b="
Range("D24").Select
ActiveCell.FormulaR1C1 = b
a2 = a
b2 = b
For i = 1 To 10
Cells(25, 1 + i - 1).Value = a * x(i) + b
Sk = Sk + (y(i) - a * x(i) - b) ^ 2
Sk = Sk ^ 1 / 2
Next i
Range("A26").Select
ActiveCell.FormulaR1C1 = "Среднеквадратичное отклонение"
Range("G26").Select
ActiveCell.FormulaR1C1 = Sqr(Sk / 10)
With Range("A26:G26").Font
.FontStyle = "Bold"
End With
Sk = 0
For i = 1 To 10
x(i) = Cells(2, 1 + i - 1)
y(i) = Cells(8, 1 + i - 1)
Next i
GoSub Step
Range("A27").Select
ActiveCell.FormulaR1C1 = "Степенная аппроксимация дохода"
Range("A28").Select
ActiveCell.FormulaR1C1 = "a="
Range("B28").Select
ActiveCell.FormulaR1C1 = a
Range("C28").Select
ActiveCell.FormulaR1C1 = "b="
Range("D28").Select
ActiveCell.FormulaR1C1 = b
For i = 1 To 10
Cells(29, 1 + i - 1).Value = a * x(i) ^ b
Sk = Sk + (y(i) - a * x(i) ^ b) ^ 2
Sk = Sk ^ 1 / 2
Next i
Range("A30").Select
ActiveCell.FormulaR1C1 = "Среднеквадратичное отклонение"
Range("G30").Select
ActiveCell.FormulaR1C1 = Sqr(Sk / 10)
With Range("A30:G30").Font
.FontStyle = "Bold"
End With
Sk = 0
For i = 1 To 10
x(i) = Cells(2, 1 + i - 1)
y(i) = Cells(8, 1 + i - 1)
Next i
GoSub Pokas
Range("A31").Select
ActiveCell.FormulaR1C1 = "Показательная аппроксимация дохода"
Range("A32").Select
ActiveCell.FormulaR1C1 = "a="
Range("B32").Select
ActiveCell.FormulaR1C1 = a
Range("C32").Select
ActiveCell.FormulaR1C1 = "b="
Range("D32").Select
ActiveCell.FormulaR1C1 = b
For i = 1 To 10
Cells(33, 1 + i - 1).Value = a * b ^ x(i)
Sk = Sk + (y(i) - a * b ^ x(i)) ^ 2
Sk = Sk ^ 1 / 2
Next i
Range("A34").Select
ActiveCell.FormulaR1C1 = "Среднеквадратичное отклонение"
Range("G34").Select
ActiveCell.FormulaR1C1 = Sqr(Sk / 10)
With Range("A34:G34").Font
.FontStyle = "Bold"
End With
a1 = Cells(12, 2)
b1 = Cells(12, 4)
a2 = Cells(24, 2)
b2 = Cells(24, 4)
Range("A35").Select
ActiveCell.FormulaR1C1 = "Точка безубыточности"
Range("A36").Select
ActiveCell.FormulaR1C1 = "y="
Range("B36").Select
ActiveCell.FormulaR1C1 = (a1 * b2 - a2 * b1) / (a1 - a2)
Range("C36").Select
ActiveCell.FormulaR1C1 = "x="
Range("D36").Select
ActiveCell.FormulaR1C1 = (b2 - b1) / (a1 - a2)
With Range("A35:D36").Font
.FontStyle = "Bold"
End With
Exit Sub
Lin:
Sx = 0
Sy = 0
Sxy = 0
Sx2 = 0
For i = 1 To 10
Sx = Sx + x(i)
Sy = Sy + y(i)
Sxy = Sxy + x(i) * y(i)
Sx2 = Sx2 + x(i) ^ 2
Next i
a = (10 * Sxy - Sx * Sy) / (10 * Sx2 - Sx ^ 2)
b = (Sy - a * Sx) / 10
Return
Step:
Sx = 0
Sy = 0
Sx2 = 0
Sxy = 0
For i = 1 To 10
Sx = Sx + Log(x(i))
Sx2 = Log(x(i) ^ 2) + Sx2
Sy = Sy + Log(y(i))
Sxy = Sxy + Log(x(i) * y(i))
Next i
b = (10 * Sxy - Sx * Sy) / (9 * Sx2)
a = (Sxy - b * Sx)
Return
Return
Pokas:
Sx = 0
Sy = 0
Sxy = 0
Sx2 = 0
For i = 1 To 10
Sx = Sx + x(i)
Sy = Sy + (Log(y(i)) / Log(10))
Sxy = Sxy + (Log(x(i) * y(i)) / Log(10))
Sx2 = Sx2 + x(i) ^ 2
Next i
b1 = (Sxy - Sy) / (Sx2 - Sx)
a1 = (Sy - b1 * Sx) / 10
b = 10 ^ b1
a = 10 ^ a1
Return
End Sub
'Sub график()
' график Макрос
Range("A4:K5").Select
ActiveSheet.Shapes.AddChart.Se
ActiveChart.SetSourceData Source:=Range("Лист1!$A$4:$K$
ActiveChart.ChartType = xlLineMarkers В активном объекте создаем оси и их значения
ActiveChart.SeriesCollection(
End Sub
1
2.2 Таблица с результатами
Объем |
|
|
|
|
|
|
|
|
|
0,5 | 1 | 1,5 | 2 | 2,5 | 3 | 3,5 | 4 | 4,5 | 5 |
Переменные издержки |
|
|
|
|
|
|
|
|
|
7 | 10 | 16 | 24 | 32 | 47 | 123 | 230 | 237 | 471 |
Постоянные издержки |
|
|
|
|
|
|
|
|
|
1005 | 1014 | 1016 | 1014 | 1004 | 1043 | 1037 | 1014 | 1036 | 1044 |
Доход |
|
|
|
|
|
|
|
|
|
260 | 510 | 759 | 1008 | 1264 | 1496 | 1783 | 2005 | 2317 | 2515 |
Суммарные издержки |
|
|
|
|
|
|
|
|
|
1012 | 1024 | 1032 | 1038 | 1036 | 1090 | 1160 | 1244 | 1273 | 1515 |
Линейная аппроксимация суммарных издержек |
|
|
|
|
|
|
|
|
|
a= | 93,93939 | b= | 884,0667 |
|
|
|
|
|
|
931,0364 | 978,0061 | 1024,976 | 1071,945 | 1118,915 | 1165,885 | 1212,854545 | 1259,824 | 1306,794 | 1353,764 |
Среднеквадратичное отклонение |
|
|
|
|
| 37,14443891 |
|
|
|
Степенная аппроксимация суммарных издержек |
|
|
|
|
|
|
|
|
|
a= | 66,82107 | b= | 1,428978 |
|
|
|
|
|
|
24,81694 | 66,82107 | 119,2735 | 179,9197 | 247,4919 | 321,1509 | 400,2899627 | 484,4444 | 573,2443 | 666,3865 |
Среднеквадратичное отклонение |
|
|
|
|
| 251,1195319 |
|
|
|
Показательная аппроксимация суммарных издержек |
|
|
|
|
|
|
|
|
|
a= | 817,1237 | b= | 1,126234 |
|
|
|
|
|
|
867,1657 | 920,2723 | 976,6313 | 1036,442 | 1099,915 | 1167,276 | 1238,761597 | 1314,625 | 1395,135 | 1480,576 |
Среднеквадратичное отклонение |
|
|
|
|
| 23,7421826 |
|
|
|
Линейная аппроксимация дохода |
|
|
|
|
|
|
|
|
|
a= | 505,8303 | b= | 0,666667 |
|
|
|
|
|
|
253,5818 | 506,497 | 759,4121 | 1012,327 | 1265,242 | 1518,158 | 1771,072727 | 2023,988 | 2276,903 | 2529,818 |
Среднеквадратичное отклонение |
|
|
|
|
| 7,624089417 |
|
|
|
Степенная аппроксимация дохода |
|
|
|
|
|
|
|
|
|
a= | 66,94311 | b= | 1,430665 |
|
|
|
|
|
|
24,83321 | 66,94311 | 119,5731 | 180,4592 | 248,3275 | 322,3343 | 401,8694639 | 486,4655 | 575,7503 | 669,4187 |
Среднеквадратичное отклонение |
|
|
|
|
| 541,7643633 |
|
|
|
Показательная аппроксимация дохода |
|
|
|
|
|
|
|
|
|
a= | 828,2986 | b= | 1,126234 |
|
|
|
|
|
|
879,0249 | 932,8578 | 989,9875 | 1050,616 | 1114,957 | 1183,239 | 1255,702734 | 1332,604 | 1414,215 | 1500,824 |
Среднеквадратичное отклонение |
|
|
|
|
| 282,1833203 |
|
|
|
Точка безубыточности |
|
|
|
|
|
|
|
|
|
y= | 1085,542 | x= | 2,144743 |
|
|
|
|
|
|
1
2.3 График безубыточности
3. АНАЛИЗ РЕЗУЛЬТАТОВ И ВЫВОДЫ.
Проведя анализ безубыточности проектируемого предприятия по статистическим данным по планируемым условно-постоянным и прямым затратам, совокупному доходу в зависимости от объема производства, я сделала следующий вывод проанализировав результаты, полученные показательной, линейной и степенной функциями, что линейная функция самая подходящая для нахождения точки безубыточности, так как имеет наименьшую погрешность при вычислении.
1
СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ
1. Игнатенко С.П, Беленченко В.М., Основы вычислительных методов: Учебно-методическое пособие по курсу: «Информатика» / Н: ЮРГТУ, 2002
2. В.И.Павленко, Т.Г.Плеханова, Т.П.Коновалова; Учебно-методическое пособие по курсу «Информатика» Шахтинский ин-т (филиал) ЮРГТУ (НПИ). – Новочеркасск: ЮРГТУ, 2007
3. Гниденко И.Г, Соколовская С.А. «Информатика», изд. «Вектор»,2006
4. Зайдель. Х , Теммен.Р «Основы учения об экономике» М.: Дело ЛТД. 1994
5. Робинсон. Дж. «Экономическая теория» М. 1986
1
1