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

Ошибка C2678 при построении - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
GalK
0 / 0 / 0
Регистрация: 08.01.2013
Сообщений: 64
08.01.2013, 10:27     Ошибка C2678 при построении #1
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
#include<iostream>
#include <math.h>
using namespace std;
int main()
{
    setlocale (LC_ALL,".ACP");
    int i,t;
    double k0[5];
    double k1[5];
    double k2[5];
    double delta[5];
    double tao[5];
    double C[5];
    cout<<"Введите t";
    cin>>t;
for (i=1;i<5;i=i+1)
{
    cout<<"Введите k0,k1,k2";
    cin>>k0>>k1>>k2;/ подчёркивает >> после cin
}
for(i=1;i<5;i=i+1)
{
    delta[i]=pow(k1[i],2)-(4*k0[i]*k2[i]);
    tao[i]=(2*k2[i]*t)+k1[i];
}
if (delta[i]<0)
{
    C[i]=(2/(sqrt(-delta[i])))*((atan(tao[i]/sqrt(-delta[i])))-(atan(k1[i]/sqrt(-delta[i]))));
}
else
{
    C[i]=(1/(sqrt(delta[i])))*(log(((tao[i]-sqrt(delta[i]))*(k1[i]+sqrt(delta[i])))/((tao[i]+sqrt(delta[i]))*(k1[i]-sqrt(delta[i])))));
}
cout<<C[i]<<"  "<<delta[i];
for(i=1;i<5;)
{
    cout<<C[i]<<"  "<<delta[i];}
system("pause");}

при построении выдаёт такую ошибку:error C2678: бинарный ">>": не найден оператор, принимающий левый операнд типа "std::istream" (или приемлемое преобразование отсутствует)
помогите её решить)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.01.2013, 10:27     Ошибка C2678 при построении
Посмотрите здесь:

netbeans выводит квадратики при построении проекта C++
Ошибка при построении Release в VC 2010 Express. C++
C++ Ошибки при построении
ошибки при построении проекта C++
C++ Ошибка при построении
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Schizorb
 Аватар для Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.01.2013, 10:44     Ошибка C2678 при построении #2
C++
1
2
double k0[5];
cin >> k0;
Нельзя так массив вводить.

Раз уж у вас там цикл, видимо, вы поэлементно хотите вводить, только индексы забыли указать:
C++
1
cin>>k0[i]>>k1[i]>>k2[i];
GalK
0 / 0 / 0
Регистрация: 08.01.2013
Сообщений: 64
08.01.2013, 10:56  [ТС]     Ошибка C2678 при построении #3
а,да тупанул)спасибо))
она всёравно неработает,зацыкливается
Schizorb
 Аватар для Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
08.01.2013, 11:06     Ошибка C2678 при построении #4
С циклами беда.

Элементы массива индексируются от 0, поэтому все же так:
C++
1
for (i = 0; i < 5; ++i)
26 строка и последующие:
C++
1
if (delta[i] < 0)
Чему тут будет равно i? Из цикла мы вышли, когда i стало равно 5, получается выход за пределы массива.

35 строка:
C++
1
for(i = 1;i < 5;)
Бесконечный цикл?
GalK
0 / 0 / 0
Регистрация: 08.01.2013
Сообщений: 64
08.01.2013, 11:34  [ТС]     Ошибка C2678 при построении #5
исправил)работает)большое спасибо за помощь
Yandex
Объявления
08.01.2013, 11:34     Ошибка C2678 при построении
Ответ Создать тему
Опции темы

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