16330

Программирование алгоритмов разветвляющейся структуры

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 2 Программирование алгоритмов разветвляющейся структуры Цель: приобретение навыков программирования алгоритмов разветвляющейся структуры с помощью пользовательской подпрограммыпроцедуры где на определенном этапе производится выбор очеред...

Русский

2013-06-20

293 KB

16 чел.

Лабораторная работа № 2

Программирование алгоритмов разветвляющейся структуры

Цель: приобретение навыков программирования алгоритмов разветвляющейся структуры с помощью пользовательской подпрограммы-процедуры, где на определенном этапе производится выбор очередного выполняемого оператора в результате анализа некоторых условий.

Индивидуальные варианты лабораторной работы № 2 представлены в таблицах 3, 4 (2 часа)

Перед  выполнением  лабораторной работы № 2  разберите

примеры 3, 4, 5

Пример 3

Постановка задачи. Создать в стандартном модуле пользовательскую процедуру вычисления уравнения вида ax2 + bx + c = 0.

Технология выполнения задания:

1. Исходные данные:

a, b, c  R

Результат: х1, х2  R.

2. Набрать в стандартном модуле проекта следующую пользовательскую процедуру:

Для этого выполним:

  1.  Excel - Сервис – Макрос – Редактор Visual Basic; загрузить Excel и редактор VBA
  2.  View – Project Explorer; открыть окно проекта
  3.  Сделать активным Лист1;
  4.  Insert –Procedure – Sub – Private – имя yravnenie; вставить процедуру (Sub) на Лист1
  5.  Набрать в открывшемся модуле процедуру:

Private Sub yravnenie ()

a = InputBox("a=", a)

b = InputBox("b=", b)

c = InputBox("c=", c)

d = b ^ 2 - 4 * a * c

If d >= 0 Then

x1 = (-b + Sqr(d)) / (2 * a)

x2 = (-b - Sqr(d)) / (2 * a)

MsgBox (x1)

MsgBox (x2)

Else

MsgBox ("Решений нет")

End If

End Sub

3. Запустить модуль F5. Вычислить корни квадратного уравнения при произвольных исходных данных.


Пример 4
 

Постановка задачи. Создать в стандартном модуле пользовательскую функцию нахождения максимального среди трех заданных чисел y1 = a+2*b; y2 = a*b+c; y3 = c2 + 1.

Технология выполнения задания:

1. Исходные данные:

a, b, c  R

Результат: Max  R.

2. Набрать в стандартном модуле проекта следующую пользовательскую функцию:

Для этого выполним:

  1.  Excel - Сервис – Макрос – Редактор Visual Basic; загрузить Excel и редактор VBA
  2.  View – Project Explorer; открыть окно проекта
  3.  Insert – Module; вставить модуль (Module1);
  4.  Набрать в открывшемся модуле функцию:

Function y(a,b,c)

y1 = a+2*b

y2 = a*b+c

y3 = c^2+1

If y1 > y2 Then

If y1 > y3 Then y = y1 Else y = y3

Else

If y2 > y3 Then y = y2 Else y = y3

End If

End Function

3. Перейти в окно Excel. Вычислить корни квадратного уравнения при произвольных исходных данных. Для этого выбрать Вставка – Функция -Определенные пользователем - у

Пример 5

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

Правила расчета комиссионных

Объем продаж за неделю, р.

Комиссионные, %

От 0 до 9999

8

От 10000 до 19999

10

От 20000 до 39999

12

Более 40000

14


Технология выполнения задания:

1. Исходные данные:

Продажи  Z.

Результат: Комиссионные  R.

2. Построить для расчета комиссионных в стандартном модуле пользовательскую функцию: см. пример 4, только вставьте новый модуль (Module2)

Function Комиссионные (Продажи)

If Продажи <= 9999 Then

   Комиссионные = Продажи * 0.08

ElseIf Продажи <= 19999 Then

   Комиссионные = Продажи * 0.1

ElseIf Продажи <= 39999 Then

   Комиссионные = Продажи * 0.12

Else

   Комиссионные = Продажи * 0.14

End If

End Function

3. Вычислить.

Таблица 3

№ В

Варианты индивидуальных заданий

Разработать процедуру пользователя,  вычисляющую значение функции

1

a=2.85, b=1.56, x=0.63

2

=12.5, =0.03, x=5.256

3

a=8.7, b=-5.2, x=8.1

4

x=1.204, a=0.8

5

6

a=3.08, x=-0.004

7

8

a=16.01, b=18.1, x=5.93

9

=7.02, =16.02, x=1.085

10

x=2.4, a=2.65, b=4.24, c=1.83

11

a=0.36, b=1.18, x=1.16

12

x=0.12, a=0.111, b=0.348

13

14

15

16

17

18

19

x=-0.37

20


Таблица
4

№ В

Варианты индивидуальных заданий

Разработать экономическую функцию пользователя

1

Вычислить надбавку к зарплате сотрудника предприятия в зависимости от стажа его работы. Значения рассчитать по формулам:

Стаж работы = (Текущая дата – Дата поступления на работу)/365. Результат округлить до целого. Значение зарплаты подобрать самостоятельно.

Надбавка =

2

Вычислить годовой подоходный налог с физических лиц.

Принята следующая налоговая сетка:

Доход

%

налога

от:

до:

0

10000

12%

10001

30000

18%

30001

60000

25%

60001

и выше

35%

 

3

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

Объем продаж за неделю, р.

Комиссионные, %

От 0 до 29 999

3

От 30 000 до 59 999

4,5

От 60 000 до 119 999

6,8

Свыше 120 000

7,4

 

4

Вычислить сдельную зарплату работника, а также сумму налога и сумму на руки. Значения рассчитать по формулам:

<зарплата> = <обработано деталей> * <стоимость работы> - <деталей брака>*<стоимость детали>.

Налог исчисляется в зависимости от зарплаты: если она выше 5000 р. – налог составляет 20%, если нет – 13%.

Стоимость работы:

80

Стоимость детали:

200

5

Вычислить эффект мультипликатора (M) по формуле

M=Q/D,

где   Q - объем производства;

  D - национальный доход.

В зависимости от результата вывести на экран следующие сообщения:

для получения высоких результатов необходимо повысить объёмы производства (M=1);

необходимо снизить объём национального дохода (M<1);

вы добились успехов: эффект мультипликатора работает (M>1).

6

Вычислить зарплату с учетом увеличивающегося подоходного налога и числа детей.

Значения рассчитать по формулам:

<сумма обложения>=<доход>-<детей>*<миним.зарплата>

<налог>=<процент налога>*<сумма обложения>.

<сумма на руки> = <сумма обложения> – <налог>

Процентная ставка налога

Доход, р.

% налога

от 0 до 1 999

0

от 2000 до 3 999

12

от 4000 до 5 999

15

от 6000 до 9 999

20

свыше 10 000

30

7

Составить программу, позволяющую произвести расчет зарплаты медсестры кардиологического отделения с окладом 1 категории по единой тарифной сетке, при условии, что если количество отработанных часов (t) равно 160, то

z=1345.5*160-(s+k-75900)*12%-1%-1%-5.4%, иначе

z=1345.5*t-(s+k-75900)*12%-1%,

где   z - зарплата;

        s - оклад;

        к - уральский коэффициент.

8

Банковский процент зависит от величины вклада следующим образом:

Процент

10%

12%

14%

17%

20%

Вклад

до 10000

от 10000 до 20000

от 20000 до 30000

от 30000 до 40000

свыше 40000

9

С помощью мультипликатора Кейнса рассчитать величину инвестиций в данный период.

k=1/(1-mc), если mc=1, то k=1/ms

I=K/MS,

где

I - инвестиции;

ms - склонность к сбережениям:

ms = (s2-s1)/(y2-y1), (s2-s1) - изменение величины сбережений;

y2-y1 - изменение величины дохода;

k - мультипликатор Кейнса: k =1/ms =1/(1-mc);

mc - склонность к потреблению: mc =(c2-c1)/(y2-y1);

(c2-c1) - изменение расходов на потребление.

10

Рассчитать годовой экономический эффект G,

G = [(S1+E*K1)-(S2+E*K2)]*O,

если цена реализации единицы продукции в новом варианте - P2 равна цене реализации единицы продукции в базисном варианте - P1, иначе

G = [(S1+E*K1)-(S2+E*K2)+(P2-P1)]*O,

где S1, S2 - себестоимость единицы продукции по базисному и новому варианту;

K1, K2 - удельные капитальные вложения в базисном и новом варианте;

E - нормативный коэффициент эффективности капитальных вложений;

O - объём применений результатов научных исследований.

11

Определить цену продажи 10000 единиц продукции, если известны затраты на их производство; причем, если себестоимость 1 единицы < 600 рублей, то надбавка составит 300 рублей, если себестоимость 1 единицы продукции будет >= 600 рублей, то продавать будут на 400 рублей дороже.

Формула:

себестоимость 1 единицы = общая сумма затрат/кол-во единиц,

где S - себестоимость 1 единицы;

     Z - затраты;

   Zp - цена продажи 1 единицы.

12

Некоторым категориям жильцов положена скидка при оплате квартплаты: инвалидам – 70%, участникам войны – 50%, многодетным – 25%. Номинальная квартплата известна. Вычислить квартплату.

13

На фирме производство характеризуется следующими показателями а = 167, р = 12, б = 1654, с1 = 165, т = 154, ц = 176 натуральных единиц. Однако произошло сокращение производства. Если к1 меньше 1, тогда прибыль рассчитать по формуле:

р = ц-((а+с1+т)/(б*к1)),

в противном случае правительством повышаются нормы амортизованных списаний, следовательно прибыль рассчитывается по формуле:

р = ц-((а*р+с1+т*k1)/(k1*б)).

14

Выполнить расчеты по страхованию дома от пожара на садовом участке. Страховой взнос равен 3% от стоимости кирпичного дома. Если дом деревянный, страховка составляет 5% при наличии в непосредственной близости (на расстоянии до 20 м) водоема. Если ближайший водоем находится на расстоянии до 400 м – страховка деревянного дома увеличивается до 7%, если до 2000 м – до 10%, если более – до 15%.

15

На фирме производство характеризуется следующими показателями:

С - цена единицы продукции, С=100000;

А - амортизационные отчисления, А=200;

з.пост - постоянные затраты, з.пост = 50;

з.пер - переменные затраты, з.пер = 100;

В - выпуск продукции, В = 100.

Рассчитать прибыль производства П, если при коэффициенте сокращения производства k=0.7

П = С-(А+з.пост+з.пер*k)/k*В, иначе

П = С-(k*А+з.пост+0.7*з.пер)/0.7*В

16

Определить минимальную стоимость билета для пассажира, следующего на заданное расстояние, стоимость билета с учетом выбранного вида вагона и поезда. Перемещение на скором поезде увеличивает стоимость билета на 20%, размещение в плацкартном вагоне – на 25%, а в купейном – на 35%. Далее следует установить окончательную стоимость билета. Его стоимость может быть снижена, если пассажир следует на дальнее расстояние. При длине маршрута от 500 до 1500 км скидка составляет 5% от полной стоимости билета, при расстоянии до 5000 км – 7%, если расстояние больше – 10%.

17

Найти значение кредита в рублях, который может выдать банк заемщику. Для ежемесячного дохода от $100 кредит может составить 1000% от заработка, для дохода от $500 – 3000%, для дохода от $1000 – 6000% и от $3000 – 7000%.

18

Расчет с постоянными клиентами-покупателями, которым товар отпускается в кредит. Вычислить величину кредита, которая зависит от его длительности. При сроке свыше 5-и дней – это 2% от исходной стоимости, свыше 10-и – 4%, свыше 15-и и еще по 1% за каждый день после 15-го. При задержке в оплате свыше 20-го дня должно появляться слово «Звонить».

19

Расчет страхования имущества от кражи, пожара и протечки. Клиент может застраховаться на любую Страховую сумму, для чего делает Страховой взнос в размере 10% от страховой суммы, если имущество страхуется от пожара, 8% - если от протечки, 7% - от кражи. Страховка от кражи снижается на 1% при наличии стальной двери и еще на 2%, если в подъезде имеется вахтер.

20

Расчет страхования жизни. Клиент может застраховаться на любую Страховую сумму, для чего делает Взнос в размере, зависящем от возраста застрахованного (до года – 10% от страховой суммы, от года до пяти – 8%, от пяти до 20 лет – 5%, от 20 до 45 лет -3%, от 45 до 50 лет – 5%, от 50 до 65 лет – 8%. Лица старше 65 лет вносят 10% и еще по одному проценту за каждый год после 65-ти лет.


 

А также другие работы, которые могут Вас заинтересовать

69288. Життєвий цикл шаблону документа 47 KB
  Як можна здогадатися, CSingleDocTemplate — достатньо легковагий (lightweight) клас (під цим автор має на увазі, що об’єкт даного класу займає в пам’яті дуже мало місця). Крім того, розробник може не піклуватися про пошук і зберігання класів шаблону документа, навіть якщо їх ціла дюжина.
69289. Базові відомості про дискові пристрої 46.5 KB
  Мінімальна кількість доріжок на поверхні пластини в сучасних дисках 700 максимальна більше 20 000. Кожну доріжку під час низькорівневого форматування розбивають на сектори sectors обсяг даних сектора для більшості архітектур становить 512 байт він обов’язково має дорівнювати степеню...
69290. Завдання підсистеми введення-виведення 41.5 KB
  У даному розділі розглядатимуться можливості ОС щодо керування пристроями введення-виведення, а саме: загальна організація підсистеми введення-виведення, різні способи виконання зазначених операцій, деякі особливості роботи цієї підсистеми ядра, засоби організації інтерфейсу...
69291. Завдання підсистеми введення-виведення ядра 77 KB
  Планування введення-виведення звичайно реалізоване як середньотермінове планування. Як відомо, з кожним пристроєм пов’язують чергу очікування, під час виконання блокувального виклику (такого як read() або fcntl()) потік поміщають у чергу для відповідного пристрою...
69292. Організація термінального введення-виведення 52 KB
  Є спеціальні символи керуючі коди і послідовності символів які не відображаються а керують виведенням на екран термінала. Передаючи такі послідовності термінала можна переміщати курсор у довільну позицію екрана керувати яскравістю відображення символів для деяких...
69293. Командний інтерфейс користувача 33 KB
  Командний інтерпретатор запускають щоразу, коли користувач реєструється у системі із термінала, при цьому стандартним вхідним і вихідним пристроєм для інтерпретатора і запущених за його допомогою програм є цей термінал.
69294. Загальні принципи мережної підтримки 35 KB
  Під мережею розуміють набір комп’ютерів або апаратних пристроїв вузлів nodes пов’язані між собою каналами зв’язку які можуть передавати інформацію один одному. Рівні мережної архітектури і мережні сервіси Функції забезпечення зв’язку між вузлами є досить складними.
69295. Загальні принципи завантаження ОС 44.5 KB
  Тут зробимо короткий огляд загальних принципів організації завантаження операційних систем. Основну увагу буде приділено апаратній ініціалізації комп’ютера і принципам реалізації завантажувача ОС.
69296. Багатопроцесорні та розподілені системи 54.5 KB
  У багатопроцесорних системах набір процесорів перебуває в одному корпусі та використовує спільну пам’ять а також периферійні пристрої. Типи багатопроцесорних систем Залежно від особливостей апаратної реалізації багатопроцесорні системи бувають такі: з однорідним доступом до пам’яті...