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

Считывание с файла уравнения - C++

Восстановить пароль Регистрация
 
Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 14:29     Считывание с файла уравнения #1
Здравствуйте! Помогите,пожалуйста,как считать с текстового файла уравнение n-ой степени так,чтобы в дальнейшем можно было работать с его аргументами (приводить подобные). Заранее спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2011, 14:29     Считывание с файла уравнения
Посмотрите здесь:

считывание с файла C++
Считывание с файла C++
C++ Считывание с файла !
C++ считывание из файла
Считывание файла в массив и запись нового файла C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 14:34     Считывание с файла уравнения #2
Раскрыть скобки в алгебраическом выражении.
-=ЮрА=-
Заблокирован
Автор FAQ
22.11.2011, 15:53     Считывание с файла уравнения #3
Цитата Сообщение от Tokenzier Посмотреть сообщение
Здравствуйте! Помогите,пожалуйста,как считать с текстового файла уравнение n-ой степени так,чтобы в дальнейшем можно было работать с его аргументами (приводить подобные). Заранее спасибо.
Вот простенько на плюсах
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
#include <iostream>
#include <fstream>
using namespace std;
 
int main()
{
    double * a = NULL;//Гў ýòîì Г¬Г*Г±Г±ГЁГўГҐ 
    //áóäóò ñîäåðæГ*ГІГјГ±Гї êîýôôèöèåГ*ГІГ» ïîëèГ*îìГ* îò Г±ГІГ*ðøåãî ГЄ ìëГ*äøåìó
    int i,n;//ÑòåïåГ*Гј ïîëèГ*îìГ*
    ifstream ifs("polynom.txt");
    ifs>>n;
    if(!(a = new double[n + 1]))//a[0...n-1] - êîºôôèöèåГ*ГІГ» Гў a[n] - ñâîáîäГ*ûé ÷ëåГ*
        cout<<"Allocation memmory error!"<<
              "Maby polynom power N to large\n";
    else
    {
        cout<<"Polinom coeffs :\n";
        for(i = 0; i < n && !ifs.eof(); i++)
        {
            ifs>>a[i];
            cout<<"a"<<i<<" = "<<a[i]<<endl;
        }
        if(i != n)
            cout<<"File contain no corret number of coefficient\n";
        else
            cout<<"Reading complete\n";
    }
    system("pause");
    return 0;
}

Polinom coeffs :
a0 = 1.1
a1 = 2.2
a2 = 3.3
a3 = 4.4
a4 = 0.5
Reading complete
Для продолжения нажмите любую клавишу . . .

Данные считываются из polynom.txt вначале идёт степень полинома а далее коэффициенты и свободный (если какой то степени(или свободного члена) нет, то нужен ноль - это важно). Коэффициенты могут идти как через пробел так и с новой строки (я именно так сделал для удобства ввода). После отработки в массиве а содержатся считанные коэффициеты, и вы можите делать с ними всё что угодно.
PS:Снабдил программу предупреждением в случае возникновения ситуаций - в файле число коэффициентов + 1 меньше либо больше n (некорректный файл данных)

Добавлено через 2 минуты
Ниже вид polynom.txt использовавшегося при тестировании
5
1.1
2.2
3.3
4.4
0.5
Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 15:56  [ТС]     Считывание с файла уравнения #4
спасибо большое)

Добавлено через 2 минуты
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение

Данные считываются из polynom.txt вначале идёт степень полинома а далее коэффициенты и свободный (если какой то степени(или свободного члена) нет, то нужен ноль - это важно). Коэффициенты могут идти как через пробел так и с новой строки (я именно так сделал для удобства ввода). После отработки в массиве а содержатся считанные коэффициеты, и вы можите делать с ними всё что угодно.
PS:Снабдил программу предупреждением в случае возникновения ситуаций - в файле число коэффициентов + 1 меньше либо больше n (некорректный файл данных)

Добавлено через 2 минуты
Ниже вид polynom.txt использовавшегося при тестировании
5
1.1
2.2
3.3
4.4
0.5
а если уравнение задано в виде,например -8x^4+7x^5-3x^4 ?
загвоздка в том что оно задается именно так
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 16:03     Считывание с файла уравнения #5
Цитата Сообщение от Tokenzier
загвоздка в том что оно задается именно так
естественно, это даже не сложный случай
Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 16:04  [ТС]     Считывание с файла уравнения #6
Цитата Сообщение от accept Посмотреть сообщение
естественно, это даже не сложный случай
ну надо как-то хранить информацию о степени и числе самом, каким образом это реализовать? списки,стеки, массив?
-=ЮрА=-
Заблокирован
Автор FAQ
22.11.2011, 16:08     Считывание с файла уравнения #7
Цитата Сообщение от Tokenzier Посмотреть сообщение
а если уравнение задано в виде,например -8x^4+7x^5-3x^4 ?
загвоздка в том что оно задается именно так
polynom.txt
5
7
-11
0
0
0
0
поетому и писал
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
//a[0...n-1] - коєффициенты в a[n] - свободный член
В деталях
-8x^4+7x^5-3x^4 =
7*х в пятой
-11*х в четвёртой (-8x^4 -3x^4 = -11x^4)
0 *х в третьей
0 *х во второй
0 *х в первой
0 - нет свободного члена

Не по теме:

accept, что реально в тихом океане живёте?

accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 16:21     Считывание с файла уравнения #8
Цитата Сообщение от Tokenzier
каким образом это реализовать? списки,стеки, массив?
в конечном итоге данные из файла загружаются в массив коэффициентов
задача заключается в разборе уравнения, когда оно записано удобно для человека

Не по теме:

Цитата Сообщение от -=ЮрА=-
accept, что реально в тихом океане живёте?
да, вокруг океан

Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 16:24  [ТС]     Считывание с файла уравнения #9
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
поетому и писал
В деталях
-8x^4+7x^5-3x^4 =
7*х в пятой
-11*х в четвёртой (-8x^4 -3x^4 = -11x^4)
0 *х в третьей
0 *х во второй
0 *х в первой
0 - нет свободного члена

Не по теме:

accept, что реально в тихом океане живёте?

нет, вы не поняли, оно записано в таком виде -8x^4+7x^5-3x^4 уже в текстовом файле, именно так, а не по коэффициентам. и нужно считать его, и поработать с его коэффициентами(привести подобные), вот проблема заключается в считывании оного в данном виде.
-=ЮрА=-
22.11.2011, 16:35
  #10

Не по теме:

Tokenzier, ну так это задача совершенно другой логики, нужно пропарсить коэффициенты и степени при х, Вы изначально в плане понимания не полно задание сформулировали...

Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 16:36  [ТС]     Считывание с файла уравнения #11
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение

Не по теме:

Tokenzier, ну так это задача совершенно другой логики, нужно пропарсить коэффициенты и степени при х, Вы изначально в плане понимания не полно задание сформулировали...

ну вот уточнил, в этом и заключается проблема, не могу понять как считать его. стеки или списки или массивы использовать,уточнил сейчас)
можете помочь считать его в таком виде?
-=ЮрА=-
22.11.2011, 16:39
  #12

Не по теме:

Tokenzier, хорошо я постучу по клавиатуре, но нужно время...

Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 16:39  [ТС]     Считывание с файла уравнения #13
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение

Не по теме:

Tokenzier, хорошо я постучу по клавиатуре, но нужно время...

не вопрос, пока сам попытаюсь что нибудь придумать, спасибо заранее
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 16:54     Считывание с файла уравнения #14
там ещё может быть коэффициент в виде выражения в скобках
хотя сначала нужно сделать для простых, потом можно дополнять
Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 16:56  [ТС]     Считывание с файла уравнения #15
Цитата Сообщение от accept Посмотреть сообщение
там ещё может быть коэффициент в виде выражения в скобках
нет, частный случай, кроме х в степени нет ничего
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.11.2011, 17:05     Считывание с файла уравнения #16
коэффициент - это не икс в степени, а то, что перед икс
простой случай - когда там число
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2011, 17:06     Считывание с файла уравнения
Еще ссылки по теме:

C++ Считывание из файла
C++ Считывание из файла
C++ Считывание из файла

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

Или воспользуйтесь поиском по форуму:
Tokenzier
0 / 0 / 0
Регистрация: 20.01.2011
Сообщений: 15
22.11.2011, 17:06  [ТС]     Считывание с файла уравнения #17
Цитата Сообщение от accept Посмотреть сообщение
коэффициент - это не икс в степени, а то, что перед икс
ну понял,имею в виду, то что кроме чисел и исков в степени нет никаких заморочек
Yandex
Объявления
22.11.2011, 17:06     Считывание с файла уравнения
Ответ Создать тему
Опции темы

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