Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Разработка алгоритма





 
 
 
Начало
i = 0, N-1
j = 0, M-1  
a(i,j), d(i,j), s(i,j)
Вывод меню
Ввод id
id
Конец
masiv(a)
masiv(d)
masiv(s)
Для решения поставленной задачи необходимо создать блок­­­-схему, показывающую основные действия полученной в итоге программы. Работа главной функции int main() и представлена на блок-схеме ниже:

 

Так же в программе используются пользовательские функции Vivod(int a[N][M]) и koeff(int a[N][M]). Функция Vivod(int a[N][M]) дает возможность выводить данные массивы в виде таблицы. Функция koeff(int a[N][M]) позволяет вычислять коэффициенты ритмичности для каждого вида продукции в конкретном месяце. С каким месяцем будут происходить операции, что зависит от введенной цифры – id. Для удобства пользователя организуется меню. Далее представлена блок-схема функции Vivod(a[N][M]), на которой показан порядок производимых операций.

+
  a[i][j] (длина строки 6)  
a[i][j] (длина строки 7)
Vivod (a[N][M])
Вывод шапки табл.
i=0, N-1
«Продукт №»
j=0, M-1
j<>1 and j<>3
Выход

 


 

Была создана функция koeff(a[N][M]) для вычисления коэффициента ритмичности. В данной функции при помощи оператора for реализована возможность рассчитать искомые значения для каждого продукта, оперируя данными двумерного массива N x M. Блок-схема данной функции представлена далее:

 

 

+
+
b=0 c=0
koeff (a[N][M])
i=0, N-1
j=0, M-1
j mod 2 <>1
a[i][j]> a[i][j-1]
b=b+[i][j]
c=c+a[i][j-1]
c=c+a[i][j]
K[i]=c/b i=i+1
K
i=i-1
Выход

 

 


Предыдущие функции Vivod(a[N][M]) и koeff(a[N][M]) используются в функции masiv(a[N][M]), которая представлена ниже:

masiv (a[N][M])
Vivod (a[N][M])
koeff (a[N][M])
Выход

 


3.3 Решение задачи с использованием языка программирования С++

Для решения данной задачи воспользуемся высокоуровневым языком программирования С++.

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

- #include <iostream.h стандартная библиотека С++, в которой реализована возможность потокового ввода и вывода данных. (cout – для вывода, cin– для ввода).

- #include <stdio.h> стандартная библиотека С++, в которой реализована возможность форматного ввода и вывода данных. (printf – для вывода, scanf– для ввода).

- #include <windows.h>- библиотека, при помощи которой возможно выводить русский текст на экран, но при этом необходимо использовать функцию CharToOem.

Также в программе использовалась такие функции как #define N 12 и #define M 8, что необходимо для организации массива данных размерностью 12 на 8.

В программе используются такие массивы данных как: a[N][M], d[N][M] и s[N][M]. Они используются для обозначения массива за 1, 2 и 3 месяца соответственно.

Главой функцией любой программы на С++ является int main(), с которой и начинается начало запуска самой программы.

Для упрощения задачи, в данной работе были использованы циклы 2х вариантов:

- for (i=1; i<=N; i++) for (j=0;j<M;j++) – эта команда использовалась в программе, чтобы не повторялись действия.

- for (i=1; i<80; i++) – эта команда необходима для реализации возможности организовать занесение массива данных в таблицу.







Date: 2016-07-25; view: 294; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию