Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.06.2009, 15:14   #1
retpecub
 
Аватар для retpecub
 
Регистрация: 13.06.2009
Сообщений: 9
Вопрос Помогите,как переделать текст проги Borland С++ Builder под Microsoft visual C++ 6.0

Код:
#include <vcl.h>
#pragma hdrstop

//---------------------------------------------------------------------------
#include "stdio.h"
#include "conio.h"
#include <windows.h>
#include <iostream>
#include <fcntl.h>
#include <string.h>
#include <iostream.h>

#include <stdio.h>  // Описания функций ввода-вывода
#include <math.h>   // Описания математических функций
#include <stdlib.h> // Описания функций malloc и free


#pragma argsused

#define eps 0.01 //требуемая точность вычислений
double A[3][3];     //матрица левых частей уравнений
double b[3];      //столбец свободных членов
double X[3];      //вектор решений
int N=3;           //размерность системы


void ReadData()
{
FILE*f=fopen("syst.txt","rt");
if (f!=0)
{
        {
                for (int i=0;i<N;i++)
                {
                        for(int j=0;j<N;j++)
                        {
                                fscanf(f,"%lf",&A[i][j]);
                        }
                }
                for(int j=0;j<N;j++)
                {
                        fscanf(f,"%lf",&b[j]);
                }
                fclose(f);
        }
}
else printf("Cannot open data file \n");
}

void ShowData()
{

cout<<"Sborka matritsi a[n*n]:\n";
for (int i=0;i<N;i++)
{	
        for(int j=0;j<N;j++)
        {
                cout<<A[i][j]<<"\t";
        }
        cout <<" | " << b[i]<<"\tI["<<i+1<<"]="<<X[i]<<endl;
}
cout<<"\n\n";

FILE *r = fopen("result.txt", "w+"); // Открыть файл
    if (r == 0) {                     // для записи
        printf("Cannot open result file \n");
    }
     else
     {
     for(int j=0;j<N;j++)
        {
                fprintf(r, "%lf",X[j]);
                fprintf(r, "\n");
        }

     }
}

void zeidel(double *x)
{
       //Предположим, что все Х=0
    for(int i=0; i < N; i++) X[i]=0;
    double max=0, t=0; // макс погрешность в данной итерации
    // делаем итерации, пока погрешность не будет меньше допустимой
    do{
        max=0;
        // считаем каждый Х
        for(int i=0; i < N; i++){
            double sum=0; // сумма всех остальных иксов с коэфицентами, кроме i-го
            // считаем сумму Х с коэфицентами кроме i-го
            for(int k=0; k < N; k++){
                if(k!=i) sum+=A[i][k]*X[k];
            }
            double temp=(b[i]-sum)/A[i][i];

            //считаем погрешность
            t= fabs(temp-X[i]);
            if (t > max) max=fabs(temp-X[i]);
            X[i] = temp;
        }
       
    }while(max>eps);
 return;

 }


void InputData()
{

        {
                for (int i=0;i<N;i++)
                {
                        for(int j=0;j<N;j++)
                        {
                                cout<<endl<<"A["<<i<<"]["<<j<<"]=";
                                cin>>A[i][j];
                        }
                }
                for(int j=0;j<N;j++)
                {
                        cout<<endl<<"b["<<j<<"]=";
                        cin>>b[j];
                }

        }

}

void ShowMenu()
{
        int v;
        cout<<"===MENU==="<<endl;
        cout<<"1\tRead data from file"<<endl;
        cout<<"2\tRead data from keyboard"<<endl;
        cout<<"3\tExit"<<endl;
        cin>>v;
      /*  switch (v)
        {
                case 1: { ReadData(); zeidel(X); ShowData(); ShowMenu(); break;}
                case 2: { InputData(); zeidel(X); ShowData(); ShowMenu(); break;}
                case 3: break;
                default: {cout<<"Error input, try again"<<endl; ShowMenu();}
        }    */
}


void Show()
{
             cout<<"I1=3.969200215"<<endl;
        cout<<"I2=1.241095521"<<endl;
        cout<<"I3=1.500450188"<<endl;
}

int main(int argc, char* argv[])
{
        Show();
        ShowMenu();
}



//---------------------------------------------------------------------------

Последний раз редактировалось Sazary; 13.06.2009 в 15:20.
retpecub вне форума Ответить с цитированием
Старый 13.06.2009, 15:30   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Измените то, что до define
Код:
#include "stdafx.h"
#include "conio.h"
#include <windows.h>
#include <iostream>
#include <fcntl.h>
#include <string.h>
#include <iostream>

#include <stdio.h>  // Описания функций ввода-вывода
#include <math.h>   // Описания математических функций
#include <stdlib.h> // Описания функций malloc и free
using namespace std;
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 14.06.2009, 00:59   #3
retpecub
 
Аватар для retpecub
 
Регистрация: 13.06.2009
Сообщений: 9
По умолчанию Спасибо

Надеюсь будет работать..
retpecub вне форума Ответить с цитированием
Старый 14.06.2009, 01:07   #4
retpecub
 
Аватар для retpecub
 
Регистрация: 13.06.2009
Сообщений: 9
По умолчанию

При компилировании пишет одну ошибку после самой последней скобки:
fatal error C1010: unexpected end of file while looking for precompiled header directive
Подскажите как с этим бороться...
retpecub вне форума Ответить с цитированием
Старый 14.06.2009, 01:56   #5
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от retpecub
При компилировании пишет одну ошибку после самой последней скобки:
fatal error C1010: unexpected end of file while looking for precompiled header directive
Проверьте, подключен ли у вас stdafx.h.
И вот тут посмотрите:
http://msdn.microsoft.com/ru-ru/library/d7fz9ckx.aspx
http://www.gamedev.ru/code/forum/?id=39751
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 15.06.2009, 00:44   #6
retpecub
 
Аватар для retpecub
 
Регистрация: 13.06.2009
Сообщений: 9
По умолчанию

Попробую. Заранее спасибо..
retpecub вне форума Ответить с цитированием
Старый 15.06.2009, 00:53   #7
retpecub
 
Аватар для retpecub
 
Регистрация: 13.06.2009
Сообщений: 9
По умолчанию

Извините за много вопросов...
Щас другая проблема. Программа запускается, я выбираю ввод с клавиатуры и сходу появляется Press any key to continue.
Вот такие дела. Если найдете время посмотрите что не так. Попробуйте откомпилить у себя, плиз. Заранее огромная благодарность за понимание....
retpecub вне форума Ответить с цитированием
Старый 15.06.2009, 01:16   #8
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Так у вас ведь свитч закомменчен:
Код:
 /*  switch (v)
        {
                case 1: { ReadData(); zeidel(X); ShowData(); ShowMenu(); break;}
                case 2: { InputData(); zeidel(X); ShowData(); ShowMenu(); break;}
                case 3: break;
                default: {cout<<"Error input, try again"<<endl; ShowMenu();}
        }    */
Поэтому все, что делает программа - это показывает меню.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 15.06.2009, 09:40   #9
retpecub
 
Аватар для retpecub
 
Регистрация: 13.06.2009
Сообщений: 9
По умолчанию

Спасибо еще раз.Просто я в этом деле новичек. начал изучать пол года назад
retpecub вне форума Ответить с цитированием
Старый 15.06.2009, 12:17   #10
retpecub
 
Аватар для retpecub
 
Регистрация: 13.06.2009
Сообщений: 9
По умолчанию

Спасибо, все работает!!!!
retpecub вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите переделать 3 проги в Delphi. georg555 Помощь студентам 3 03.06.2009 17:08
как Microsoft Access(ADOConnection ADOTable DataSource DBGrid) переделать под mySQL? Levsha100 БД в Delphi 6 23.05.2009 19:48
задача под windows,помогите написать.Надо написать на Borland C++Builder 6. eddddii Помощь студентам 9 23.05.2008 17:04
помогите переделать программы под задание Povar Паскаль, Turbo Pascal, PascalABC.NET 7 22.05.2008 15:59