Форум программистов, компьютерный форум CyberForum.ru

Нужна блок-схема - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Чтения из файла http://www.cyberforum.ru/cpp-beginners/thread266588.html
Подскажите пожалуйста, не могу понять как реализовать: Написать функцию, которая читает данные о ноутбуках из файла note.txt в структуру приведенного вида, из бинарного файла. Структура бинарного файла: первые два байта (целое) — число записей в файле; далее записи в формате структуры NOTEBOOK. Пример структуры: struct NOTEBOOK { char model; // наименование int price; // цена float...
C++ Метод простой итерации Вот такая задача! Используя метод простой итерации, решить с точностью ε = 10 такие нелинейные системы уравнений. Помогите реализовать в с++!!! http://www.cyberforum.ru/cpp-beginners/thread266587.html
C++ Шаблоны и т.д.(
Создать 2 шаблонные классы с конструктором инициализации и конструктором копирования. Создать третий класс, наследующий свойства из двух классов. Помогите пожалуста!!! Добавлено через 1 час 42 минуты =((!!!!
Указатели и массивы C++
Найти из непрерывных последовательностей отрицательных чисел ту, которая имеет наибольшее абсолютное значение среднего арифметического ее элементов. Размерность 200 , Диапозон значений -50-50.
C++ Разработать процедуры и функции для обеспечения доступа к элементам матрицы http://www.cyberforum.ru/cpp-beginners/thread266556.html
задание Разработать способ экономического хранения в памяти разреженных матриц. Разработать процедуры и функции для обеспечения доступа к элементам матрицы. в контрольном примере забезпечети чтения и запись всех элементов матрицы. Оценить время работы операции. условие Сохранить все нулевые элементы непарных столбцов
C++ класс круг С++ Разработать класс "круг ", который определяется своим радиусом r. Класс должен владеть методами доступа к радиусу; методами определения площади соответствующего круга S = пr2, длина окружности l = 2ПR и диаметр d = 2r. подробнее

Показать сообщение отдельно
tripleus
1 / 1 / 0
Регистрация: 22.12.2010
Сообщений: 29
29.03.2011, 21:04     Нужна блок-схема
Может кто-нибудь помочь с реализацией блок-схемы?
Код
#include "stdafx.h"
#include <locale>
#include <vector>
#include <iostream>
#include <iterator>
#include <algorithm>
#include <functional>
#include <numeric>
#include "stdio.h"
#include <conio.h>
using namespace std; 

int i,s1,s2,n1,n2;
 
double sum(double a) { return a+1; }

template <typename T, size_t Rows>
struct avg : public std::unary_function<const T (&)[Rows], double>
{
        T operator()(const T (&arr)[Rows]) const
        {
                return std::accumulate(arr, arr + Rows, T()) / Rows;
			
        }
};
 
 

template <typename T, size_t Cols, size_t Rows>  
void go(T (&m)[Cols][Rows])
{
	    double maxel;
std::vector<T> v(Cols);
 maxel=*std::max_element(v.begin(),
                std::transform(m, m +Cols , v.begin(), avg<T, Rows>()));
    std::cout << "\n Максимальный среднее арифметическое=" <<maxel ;

        
      std::transform(
                &m[s1][0], &m[s1][0] + Rows*n1, &m[s1][0],//Cols
                std::bind2nd(std::minus<T>(), maxel)
                );
	 

	  if (i==2) {
	  std::transform(
                &m[s2][0], &m[s2][0] + Cols*n2, &m[s2][0],
                std::bind2nd(std::minus<T>(), maxel)
                );
	  }
   }


template <typename T, size_t Rows>
struct X : public std::unary_function<const T (&)[Rows], void>
{
        X(std::ostream& os) : os_(os) {}
        
        void operator()(const T (&arr)[Rows]) const
        {
                typedef std::ostream_iterator<T> O;
                std::copy(arr, arr+Rows, O(os_, "\t"));
                os_ << std::endl;
        }
 
        std::ostream& os_;
};
 

template <typename T, size_t Cols, size_t Rows>
std::ostream& operator<< (std::ostream& os, const T (&m)[Cols][Rows])
{
        std::for_each(m, m+Cols, X<T, Rows>(os));
        return os;
}
 

int main()
{
	int ii=1;
        setlocale(LC_ALL, "");
 double me;
        double m[3][4];
                
		
		  std::cout << "Введит матрицу:"<<endl ;
		for(int i=0; i<3;i++){
	 for(int j=0; j<4;j++)
	 std::cin >> m[i][j];
		}
		
s1=0 ; s2=0 ; n1=3 ; n2=0 ;
      std::cout << "Введите номер строки:" ;
    std::cin >> i;
	if (i==1) {s1=1;  n1=3; }
	if (i==2) {s1=0;  n1=1; s2=2; n2=2;}
	if (i==3) {s1=0;  n1=2; }
		
		std::cout << "До:" << std::endl << m << std::endl;
        go(m);
 	std::cout<<"\n****************************************\n";
        std::cout << "После:" << std::endl << m;

		while (ii)
   {     
      if (getch()==27) ii=0;
   }
 
        return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru