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

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

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

Ошибки при компиляции - C++

22.01.2015, 20:18. Просмотров 318. Ответов 18
Метки нет (Все метки)

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
struct XYZ
{
  double x, y, z;
}
 
double sqr(double x) {return x * x; }
 
void CalcNormals(XYZ a, XYZ b, XYZ c, XYZ& n)
{
  double wrki;
  XYZ v1, v2;
 
  v1.x = a.x - b.x;
  v1.y = a.y - b.y;
  v1.z = a.z - b.z;
 
  v2.x = b.x - c.x;
  v2.y = b.y - c.y;
  v2.z = b.z - c.z;
 
  wrki = sqrt(sqr(v1.y*v2.z - v1.z * v2.y) + sqr(v1.z * v2.x - v1.x * v2.z) + sqr(v1.x * v2.y - v1.y * v2.x));
  n.x = (v1.y * v2.z - v1.z * v2.y) / wrki;
  n.y = (v1.z * v2.x - v1.x * v2.z) / wrki;
  n.z = (v1.x * v2.y - v1.y * v2.x) / wrki;
}

Ошибки следующие - отказывается складывать (бинарный +... )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2015, 20:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибки при компиляции (C++):

Ошибка памяти при выполнении, при компиляции не выводит ошибки - C++
ПОмогите плс программа вводит строку символов до точки, а после вычисляет процент согласных в этой строке и выводит их в обратном порядке....

Ошибки при компиляции - C++
Помогите пожалуйста, исправьте код, не пойму почему ругается на глобальные объекты... #include <iostream> using namespace std; int...

Ошибки при компиляции - C++
весь текст программы, и его компилятор перестал выполнять #include <iostream.h> int main () { system("pause"); } По ошибкам: ...

Ошибки при компиляции - C++
Есть программа: #include <stdio.h> #include <io.h> #include <iostream.h> #define MEN 2 #define LF 10 #define SPACE 32 ...

Ошибки при компиляции - C++
Функция принимает текстовую функцию и значение переменной и решает ее. long double func(string Str, char var, long double X) { ...

Ошибки при компиляции - C++
Добрый день, задача : Занести в массив значения функции f (x, y) = x − y , 0 ≤ x ≤ 20 , 0 ≤ y ≤ 10 и вывести его на экран написал...

18
Tordek
53 / 47 / 18
Регистрация: 22.01.2015
Сообщений: 176
22.01.2015, 20:32 #2
Что ты имел ввиду в 11 строке?

Добавлено через 1 минуту
XYZ - это не тип, а структура. Для того, чтобы использывать v1 и v2 как структуры типа XYZ, тебе надо было их обьявлять структурами.

Добавлено через 1 минуту
Удивляюсь, как с этим не было проблем
0
feniks
0 / 0 / 0
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 20:33  [ТС] #3
И то есть как это сделать?
0
Tordek
53 / 47 / 18
Регистрация: 22.01.2015
Сообщений: 176
22.01.2015, 20:37 #4
Бинарный + в 21 строке?
0
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2015, 20:38 #5
Цитата Сообщение от Tordek Посмотреть сообщение
XYZ - это не тип, а структура. Для того, чтобы использывать v1 и v2 как структуры типа XYZ, тебе надо было их обьявлять структурами.
?
по сути, когда он создал структуру, он создал новый тип данных, и имеет право объявлять где хочет
v1,v2 - переменные типа XYZ
feniks, только вот после объявления структуры должно быть ;
3
OlegKri
26 / 25 / 7
Регистрация: 19.01.2015
Сообщений: 84
22.01.2015, 20:44 #6
cooller дело говорит) ";" надо бы, а то void функции перекликается со структурным типом данным и компилятор ничего не понимает куда попал)

Добавлено через 1 минуту
тоесть с double sqr
1
feniks
0 / 0 / 0
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 20:49  [ТС] #7
cooller, где именно?
C++
1
struct XYZ;
так?
0
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2015, 20:52 #8
feniks,
C++
1
2
3
4
struct XYZ
{
  double x, y, z;
};
1
castaway
Эксперт С++
4915 / 3023 / 370
Регистрация: 10.11.2010
Сообщений: 11,081
Записей в блоге: 10
Завершенные тесты: 1
22.01.2015, 20:53 #9
"Ошибки при компиляции"
Цитата Сообщение от feniks Посмотреть сообщение
отказывается складывать (бинарный +... )
Какая ошибка компиляции? Где плюс отказывается складывать?
0
feniks
0 / 0 / 0
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 20:59  [ТС] #10
Огромное спасибо! А можно еще вопросец: в этой структуре описано вычисление нормали треугольника по координатам. у меня таких треугольника 4 - грани тетраэдра. Как затем вызывать или обращаться к данному методу, но уже с другими координатами? (я извиняюсь, что такой нубовский вопрос...)

Добавлено через 1 минуту
castaway, уже исправил, возвращаться не хочу. в описани ошибки было написано "binary +..."
0
OlegKri
26 / 25 / 7
Регистрация: 19.01.2015
Сообщений: 84
22.01.2015, 21:23 #11
объект структуры, затем точка, затем метод
1
feniks
0 / 0 / 0
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 21:34  [ТС] #12
Прошу прощения, а можете написать пример?
0
OlegKri
26 / 25 / 7
Регистрация: 19.01.2015
Сообщений: 84
22.01.2015, 21:53 #13
вот к примеру структура. написанно правда class ну в принципи это одно и тоже в твоем случае.
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
class Matrix
{
 
    int n,m;
    double **array;
 
public:
    Matrix(Matrix & A);//--конструктор копирования
    ~Matrix(void);//---деструктор
    void OutMatrix(void);//---вывод матрицы на экран
    void EnterMatrix(void);//---ввод матрицы
    void SerchAkstrem(void); //---поиск эксремумов и их строки
    void Polindrom(void);  //---поиск чисел полиндромов
    //-----перегрузка операторов----
    Matrix&operator=(Matrix &a); //---оператор =
    Matrix operator+(Matrix &a);//---оператор +
    Matrix operator-(Matrix &a);//---оператор -
    Matrix operator*(double a);//---оператор *a
    Matrix operator/(double a);//---оператор /a
    Matrix operator*(Matrix & a);//---оператор Matrix*Matrix
    Matrix Transponiring(void);//---транспонирование матрицы
    double SkPrOnVek(Matrix b);//---сколярное произведение 2х векторов doublel Matrix1(Matrix2)
    Matrix operator-(void);//---внесение минуса в матрицу (*(-1))
    double Determinant3x3max(void);//---детерминант матрицы. 3х3-максимальный рамер матрицы
};
вот ты создаешь где-нибудь объект твоей структуры
C++
1
2
Matrix q;
    q.EnterMatrix(); // здесь вызывается  метод , в частности ввода матрицы.
p.s.
если правильно напишешь структуру с её методами, то когда будешь вызывать метод, после объекта класса, нажав точку ты будешь видеть возможные варианты

Добавлено через 1 минуту
че я объясняю))) вот как ты x,y и z вызывал, так и методы

Добавлено через 24 секунды
если что кулаком по лбу я себя стучу))
0
cooller
565 / 533 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2015, 21:57 #14
OlegKri, такой "структурой" вы его только запугаете
feniks, что именно не понятно?
0
feniks
0 / 0 / 0
Регистрация: 16.12.2012
Сообщений: 31
22.01.2015, 21:59  [ТС] #15
можно и меня по лбу... даже нужно... а то я не знаю, что я в программировании мягко скажем - них не соображаю)

Добавлено через 1 минуту
cooller, как мне каждый раз подменять координаты для нового треугольника, чтобы дальше нормаль считалась по описанным выражениям.
0
22.01.2015, 21:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2015, 21:59
Привет! Вот еще темы с ответами:

Ошибки при компиляции - C++
Помогите пожалуйста исправить ошибки которые в программе при компиляции возникают. Вот листинг: #include <iostream> #include...

Ошибки при компиляции - C++
Вот такие ошибки у меня выдает при компиляции: error: stray ‘\320’ in program error: stray ‘\260’ in program Что это может быть?

Ошибки при компиляции - C++
#include <vcl.h> #pragma hdrstop #include "CDPlayer_.h" #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; ...

Ошибки при компиляции - C++
Здравствуйте. При компиляции возникают такие ошибки помогите их исправить. #include "Trial.h" #include <iostream> using namespace...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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