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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
aspen
0 / 0 / 0
Регистрация: 21.10.2012
Сообщений: 11
#1

Вычисления для каждой точки, заданной парой координат, третьей координаты по заданной формуле - C++

21.10.2012, 15:37. Просмотров 411. Ответов 1
Метки нет (Все метки)

Прошу подсказать в каком направлении работать для решения следующей задачи.
Имеется текстовый файл, котором в каждой строке (всего строк около 50 000) содержится 2 координаты (A, B) для каждой точки.
Например:
50.5 1.5
45.8 5.9
42.1 -2.4

Для каждой точки необходимо рассчитать третью координату (С), по следующему алгоритму: С[i] = Σ B[k]*A[k]*A[i], в [] обозначен индекс.

Так например для точек, приведенных в примере:
для первой точки C[1] = B[1]*A[1]*A[1] + B[2]*A[2]*A[1] + B[3]*A[3]*A[1]
для второй точки C[2] = B[1]*A[1]*A[2] + B[2]*A[2]*A[2] + B[3]*A[3]*A[2]
для третьей точки C[3] = B[1]*A[1]*A[3] + B[2]*A[2]*A[3] + B[3]*A[3]*A[3]

После расчета третья координата должна добавлять в текстовый файл, следующим образом

50.5 1.5 159.5
45.8 5.9 315.7
42.1 -2.4 215.1

Буду благодарен за любые подсказки и простейшие примеры, как решить подобное.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.10.2012, 15:37     Вычисления для каждой точки, заданной парой координат, третьей координаты по заданной формуле
Посмотрите здесь:

Рекурсивная функция для вычисления по заданной формуле C++
C++ Написать программу, производящую вычисления по заданной формуле (тригонометрия, простые циклы)
C++ Найти с точностью до E = 10^-3 матрицу B по заданной формуле вычисления
C++ Написать программу для вычисления энтропии по формуле Шеннона для заданной последовательности
Определить кратчайшее расстояние от заданной точки до границы заданной фигуры C++
Определить полярные координаты точки, заданной координатами х, у в прямоугольных координатах по формулам:  C++
C++ Определить кратчайшее расстояние от заданной точки до границы заданной фигуры, считая, что точка находится вне
Реализовать функцию для вычисления выражения по заданной формуле C++
Реализовать функцию для вычисления тригонометрического выражения по заданной формуле C++
Определить количество членов ряда, необходимых для вычисления числа Пи с заданной точностью ε по формуле C++
C++ Определить расположение заданной точки в декартовой системе координат
В заданной строке после каждой точки поставить пробел C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
igorrr37
 Аватар для igorrr37
1600 / 1228 / 121
Регистрация: 21.12.2010
Сообщений: 1,875
Записей в блоге: 7
21.10.2012, 18:06     Вычисления для каждой точки, заданной парой координат, третьей координаты по заданной формуле #2
координаты можно считывать в вектор пар, потом в цикле определять третью координату и записывать всё это в другой файл
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
#include <fstream>
#include <iostream>
#include <vector>
#include <utility>
 
int main ()
{
    std::fstream ifs("in.txt", std::ios::in), ofs("out.txt", std::ios::out);
    if(ifs.is_open() && ofs.is_open())
    {
        double a, b, c;
        std::vector<std::pair<double, double>> v;
        for(int i = 0; i < 3; ++i)
        {
            ifs >> a >> b;
            v.emplace_back(a, b);
        }
        size_t vsize = v.size();
        for(size_t i = 0; i < vsize; ++i)
        {
            c = v[0].first * v[0].second * v[i].first + v[1].first * v[1].second * v[i].first + v[2].first * v[2].second * v[i].first;
            ofs << v[i].first << ' ' << v[i].second << ' ' << c << '\n';
        }
        ifs.close();
        ofs.close();
    }
    else std::cerr << "Unable to open file(s)" << std::endl;
}
Yandex
Объявления
21.10.2012, 18:06     Вычисления для каждой точки, заданной парой координат, третьей координаты по заданной формуле
Ответ Создать тему
Опции темы

Текущее время: 19:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru