|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.11.2008, 17:59 | #1 |
Регистрация: 25.11.2008
Сообщений: 3
|
ПОмогите разобраться в коде программы на С++
Заранее извиняюсь, т.к. такой вопрос нужно задавать знакомым в ICQ, а не на форуме. Просто нужно срочно, а спросить не у кого и времени нет залазить в учебники. Компилятор выдает ошибку, не могу ее устранить. Ошибка no match for 'operator>>' in 'infile >> t' в коде
... for (i=0; i<n; i++) { cout<<endl; for (j=0; j<n+1; j++) { infile >> t; temp[i][j]=t; cout<<t<<" "; } ранее в программе использовала outfile<<t, а тут ошибку выдает. Помогите пожалуйста, не понимаю в чем проблема, С++ только начала учить, а пришлось делать программу. Спасибо тем, кто откликнеться. |
26.11.2008, 02:04 | #2 |
Форумчанин
Регистрация: 21.11.2008
Сообщений: 400
|
Ты хоть бы задачу написала и весь код, компилятор может выдавать ошибку где угодно, не обязательно где он показывает.
Винда, KIS 2010, книжка по С/С++, остальное неважно........
|
26.11.2008, 02:24 | #3 |
Регистрация: 25.11.2008
Сообщений: 3
|
Нужно реализовать метод Гаусса (единственного деления). Вот весь код. Мне помог далекий знакомый, отрыл где-то у себя с прошлого года. Кое что поисправляла, были ошибки, но одну устранить не могу, в 44 строке.
#include <iostream.h> #include <math.h> #include <fstream.h> float det(float [20][20], int); void iskl(float a[20][20], int k, int n) { int i, j; float r, b[40]; r=a[k][k]; for (j=k; j<n+1; j++) a[k][j]/=r; for (i=k+1; i<n; i++) { r=a[i][k]; for(j=k; j<n+1; j++) a[i][j]-=a[k][j]*r; } } int _tmain() { int i, j, n, k; float a[20][20], d[20][20], b[40], temp[20][20], t, intDet; ofstream outfile("matr1.txt"); cout<<"VVedite razmernost yravneniya "; cin >> n; cout<<endl; cout<<"Vvod matricu " <<endl; for (i=0; i<(n*n+n); i++) { cin >> t; outfile << t <<" "; } outfile.close(); cout<<"Matrica "<<endl; ofstream infile("matr1.txt"); for (i=0; i<n; i++) { cout<<endl; for (j=0; j<n+1; j++) { infile >> t; temp[i][j]=t; cout<<t<<" "; } } //matrix for (i=0; i<n; i++) for (j=0; j<n; j++) a[i][j]=temp[i][j]; //vektor intDet=det(a, n); if (intDet==0) { cout<<"Reweniya SLAY net "; goto net; } else cout<<"det= "<<intDet; //pryamoi hod metoda Gaussa cout<<"Treygolnaja matrica "<<endl; for (i=0; i<n; i++) iskl(temp, i, n); for (i=0; i<n; i++) { cout<<endl; for (j=0; j<n+1; j++) cout<<temp[i][j]<<' '; } //obratnii hod cout<<"\n"; for (i=0; i<n+1; i++){b[i]=temp[i][n]; cout<<b[i]<<" ";} cout<<"\n"<<"Rewenie SLAY:"<<endl; for (i=n; i>-1; i--) { b[i]/=temp[i][i]; for (j=i+1; j<n; j++) b[i]-=b[j]*temp[i][j]; } for (i=0; i<n; i++) cout<<b[i]<<" "; net: return 0; } float det(float b[20][20], int n) { float x,s; int i,j,k; for (i=0; i<n-1; i++) for (k=i+1; k<n; k++) { x=b[k][i]/b[i][i]; for (j=i; j<n; j++) b[k][j]=b[k][j]-b[i][j]*x; } s=1; for (i=0; i<n; i++) s=s*b[i][i]; return s; } |
26.11.2008, 09:55 | #4 |
Форумчанин
Регистрация: 26.07.2008
Сообщений: 116
|
У тебя infile определен как:
Код:
Код:
|
26.11.2008, 15:24 | #5 |
Регистрация: 25.11.2008
Сообщений: 3
|
Спасибо. Теперь компилируется, осталось только логические отследить)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите разобраться с алгоритмом программы | Evgenii | Помощь студентам | 10 | 07.11.2008 16:07 |
[C++] ошибка в коде программы!! | jazzben | Помощь студентам | 12 | 27.09.2008 19:25 |
Вылетает Out of Bounds в коде помогите разобраться | Airou | Общие вопросы Delphi | 5 | 24.07.2008 09:56 |
Можно ли заполнить Combobox в коде программы?! | Anna_new | Помощь студентам | 6 | 18.04.2008 11:09 |