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

Векторы, никак не могу понять - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ не могу сделать сортировку http://www.cyberforum.ru/cpp-beginners/thread220705.html
здравствуйте,помогите пожалуйста,уже хрен знает сколько мучаюсь и никак не могу осилить сортировку в такое задаче: В одномерном массиве состоящем из n вещественных элементов вычислить: 1)произведение положительных элементов 2)сумму элементов массива, расположенных до минимального элемента 3)Упорядочить по возрастанию отдельно элементы стоящие на четных,отдельно на нечетных местах ...
C++ удалить из строки удалить из строки все запятые,предшествующие первой точке http://www.cyberforum.ru/cpp-beginners/thread220700.html
Вывести на экран длину наибольшей последовательности цифр, идущих подряд C++
Имеется строка, содержащая буквы латинского алфавита и цифры. Вывести на экран длину наибольшей последовательности цифр, идущих подряд. Добавлено через 1 час 10 минут не уж то не кто не знает?(
Начинаюший C++
Здравствуйте!Хочу заняться программированием,но не знаю с чего начать,и какой для новичка лучше всего начинать учить ?? Слышал нужно математику хорошо знать... а если я в математике ваше не силён возможно научиться ? Всем спасибо!
C++ Табулирование ф-ции с последовательным уменьшением интервала и дроблением шага в С++ http://www.cyberforum.ru/cpp-beginners/thread220694.html
Очень нужна помощь!! Помогите написать программу по следующему заданию: Отыскать корень уравнения f(x)=0 на интервале(А,В) точностью Е. Метод решения: Табулирование ф-ции с последовательным уменьшением интервала и дроблением шага. Исходные данные:f(x)=x^5-x-5; A=1; B=2; E=10^-4. *корень уравнения Х. Заранее спасибо))
C++ Образовать новый массив, элементами которого будут элементы исходного, оканчивающиеся на цифру k Помогите пожалуйста сделать прогу в C++. Дан массив состоящий из n натуральных чисел. Образовать новый массив, элементами которого будут элементы исходного, оканчивающиеся на цифру k. подробнее

Показать сообщение отдельно
YourLastSong
1 / 1 / 0
Регистрация: 12.12.2010
Сообщений: 112
26.12.2010, 17:01     Векторы, никак не могу понять
Здравствуйте, господа.

Я бы, возможно, и не стал беспокоить вас по таким пустякам, но для меня это вовсе не является таковым.

У меня случилась довольно большая проблема, которая заключается не только в том, что за невозможность решить данную задачу мне придётся туго, а потому, что я сам никак не могу понять её решение, что, само мобой разумеется, меня невероятно сильно расстроило и продолжает расстраивать до сих пор, т.к. решение я так и не смог придумать.

Итак, у меня имеется след. задание:

http://rghost.ru/3762303

Необходимо сделать 11 задание, однако как решить хоть что-то из этого пока что известно только первое:

Код
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <iostream>
using namespace std;
struct VECTOR
{
    int n; 
    float *x;
    void nw()
    {
        x = new float[n];
    }
    // default  constructor:
    VECTOR()
    {
        n=0;
        x=0;
    }
    // constructor with 1 arg. :
    VECTOR(int fn)                                                      
    {
        n=fn; 
        nw();
    }
    // constructor with 2 arg. :


    VECTOR(int n, float *x);
    // copying  constructor:
    VECTOR(VECTOR &v);
    //destructor:
    ~VECTOR()
    {
        if(x)
            delete[]x;
    }

    //V=F {V.n=F.n;V.x[j]=F.x[j];return*this==V
    //(we can write V1=V2=V3 due to VECTOR&)}:
    VECTOR &operator = (VECTOR &F);
    //  V() {output V.x[0], V.x[1],... }:
    void operator()(FILE*f);
    // V[j] {return V.x[j]
    //(we can write V1[i]=V2[j]=V3[k] due to float&...)}:
    float &operator[] (int j)
    {
        return x[j];
    }
}; // end of VECTOR body


VECTOR::VECTOR(int fn,float *fx)
{
    n=fn; 
    nw(); 
    for(int j=0;j<n;++j)
        x[j]=fx[j];
}
VECTOR::VECTOR(VECTOR&F)
{
    n=F.n;
    nw();
    for(int j=0;j<n;++j)
        x[j]=F.x[j];
}
VECTOR &VECTOR /*v3*/::operator=(VECTOR &F /*v2*/)
{
    if(x)
        delete[]x; 
    n = F.n;
    nw();
    for(int j=0;j<n;++j)
        x[j]=F.x[j];
    return *this;
}
void VECTOR::operator()(FILE*f = stdout)
{
    for(int j=0;j<n;++j)
        fprintf(f,"% -7g",x[j]);
}
// end of VECTOR
// independent function:
VECTOR operator^   (VECTOR  &v1, float *v2)
{
    
    for(int j=0; j<v1.n ;j++)
        v1.x[j] = pow(v1.x[j],v2[j]); 
    return v1;
}

struct DV:VECTOR
{
    DV():VECTOR()
    {
    }
    DV(int fn):VECTOR(fn)
    {
    }
    DV(int n,float*x):VECTOR(n,x)
    {
    };
    DV(DV &v):VECTOR(v)
    {
    };
    DV &operator ! (); //добавлено
};// end of DV body
DV &DV::operator!() //добавлено
{
    for(int j=0;j<n;++j)
        x[j]=fabs(x[j]);
    return *this;
}

void main()
{
	int n;
	float *a;
	printf("n = ");
	scanf("%d", &n);
	a = new float[n];
	for (int i = 0; i < n; i++)
	{
		scanf("%g", &a[i]);
	}
	DV v(n, a); //добавлено
	!v; //добавлено
	for (int i = 0; i < n; i++)
	{
		cout << v.x[i] << " ";
	}
	getch();
}
Я знаю, что просить решить что-либо на данном форуме неприлично, но этого бы не произошло, если бы я хоть что-то понимал в данной задаче.

Если у вас есть возможность и желание мне хоть как-то помочь, буду очень признателен.

Заранее благодарю за возможные ответы.

Добавлено через 26 минут
Если есть хоть какие-то подсказки, как это можно сделать, также буду очень признателен.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru