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

Класс векторов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как ввести элементы одного массива в другой массив http://www.cyberforum.ru/cpp-beginners/thread1145873.html
Как ввести элементы одного массива в другой массив ? если можно код
C++ Односвязный список Здравствуйте уважаемые форумчане. Помогите пожалуйста с задачкой: В памяти хранится односвязный список. Вам дан указатель на первый элемент, определите, зациклен ли список? http://www.cyberforum.ru/cpp-beginners/thread1145869.html
C++ Оставить в строке фрагменты, симметричные центральному символу, длиной более 5 символов, остальные заменить на пробелы
Помогите, сделал 7 заданий из 10, остальные даже понятия не имею как делать, подскажите кому не сложно Задание: 1)Оставить в строке фрагменты, симметричные центральному символу, длиной более 5...
Увеличить размерность массива C++
Короче такая проблема, есть массив с данными, нужно увеличить его размерность, вроде написал всё правильно, но выскакивает ошибка Debag error и тд, вот код, подскажите что я делаю нетак #include...
C++ Генерирование файла на XML путем последовательного прибавления http://www.cyberforum.ru/cpp-beginners/thread1145863.html
Требуется создать игровой мир из сплошных плоскостей. Ввиду большого объема работы вручную, предположил что можно создать некий генератор, который исходя из заданной точки(заданной координатами на...
C++ Перевести текст программы на С++ с С# using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; ... подробнее

Показать сообщение отдельно
xxxyx
0 / 0 / 0
Регистрация: 18.12.2013
Сообщений: 8

Класс векторов - C++

11.04.2014, 23:47. Просмотров 340. Ответов 0
Метки (Все метки)

Ребята, помогите, не очень получается.
Есть класс 2D-векторов, в private их к-ты: x и y. Предусмотрен конструктор с двумя параметрами (декартовы координаты вектора x и у), метод show, для вывод к-т вектора на консоль и метод, который к вектору добавляет другой вектор, сохраняя результат в первом векторе.
Нужно написать программу случайного блуждания на плоскости. Для этого создаётся вектор, координаты которого будут координатами блуждающего объекта. За нулевые принимаются координаты начального положения. На каждой итерации блуждающий объект делает шаг постоянного размера и случайного направления (равномерно распределенного в интервале 0 – 360 (в градусах)). Реализовать это блуждание как сложение вектора блуждающего объекта со случайным вектором заданного размера.
Потом необходимо выполнить серию из N=30 экспериментов с шагом блуждания 1 м. В каждой серии определить число шагов, которое пришлось сделать, чтобы удалиться на 50 м от начального положения. Рассчитать среднее число шагов и стандартное отклонение.
Вот, что, пока получилось:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include <cmath>
#include <cstdlib>
#include <ctime>
 
 
using namespace std;
 
class Vector
{
    double x;
    double y;
public:
    Vector(double, double);
    Vector();
    void show(); 
    Vector operator+(const Vector); 
};
Vector::Vector() 
{  
    x = 0.; 
    y = 0.; 
} 
 
Vector::Vector(double xx, double yy) 
{  
    x = xx; 
    y = yy; 
} 
 
void Vector::show() 
{ 
    cout << "x = "<< x  << ", y = " << y << endl; 
} 
 
Vector Vector :: operator+(const Vector v) 
{ 
    return Vector(x+v.x, y+v.y);
}
 
void main()
{
    setlocale(LC_ALL, "Russian");
    srand((unsigned)time(NULL));
    double fi, xx, yy;
    double mn;
    cin >> mn;
    Vector v1(0.0, 0.0);
    fi=(rand()%628)/100;
    for(int i=0; i<30; i++)
    {
        xx=i*mn*cos(fi);
        yy=i*mn*sin(fi);
        if (sqrt(xx*xx+yy*yy) >= 50) cout << "Число шагов:" << i;
        Vector bluzd(xx,yy);
        Vector rezult=bluzd+v1;
        rezult.show();  
    }
    system ("pause");
}
Прошу помочь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru