Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 08.10.2013
Сообщений: 4
1

Проверьте пожалуйста

25.12.2013, 17:00. Показов 414. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
#include "stdafx.h"
#include <stdlib.h>
#include <iostream>
#include <time.h>
#include <fstream>
#include <string>
#include <cmath>
using namespace std;
 
 
double func(int a, int b, int d, double x)
{
    return 1.0 * a * cos(1.0 * b*x) + pow(x, d); 
}
 
double method_of_trapezium(int a, int b, int d, double x1, double x2, double dx)
{
    double x = x1;
    double sum = (func(a, b, d, x1 + dx) + func(a, b, d, x1)) * dx / 2.0;
    while(x < x2)
    {
        sum += (func(a, b, d, x + dx) + func(a, b, d, x))*dx / 2.0;
        x += dx;
    }
 
    cout<<"result: "<<sum<<endl;
    return sum;
}
 
 
void writeToFile(double val)
{
    char * fileName = "output.txt";
    FILE * file = fopen(fileName, "w");
    if (file) // если есть доступ к файлу,
    {
        fprintf(file,"%f", val);
    }
    //Закрываем файл
    fclose(file);
 
}
 
void main(int argc, char argv[])
{
 
    clock_t t;
    t = clock();
 
    int a,b,d;
    double x1,x2;
 
    double dx = 0.001;
 
 
    //Открываем файл для чтения
    ifstream infile;
    infile.open ("file.txt");
    int i =0;
    //Считываем строки из файла до тех пор, пока не дошли до конца файла
    while(infile.eof() == false)
    {
        
        //Получаем строку из файла
        string line = "";
        getline(infile, line);
 
        if (line.find("a=") != string::npos)
        {
            line.erase(0,2);
            a = atoi(line.c_str());
        }
 
        if (line.find("b=") != string::npos)
        {
            line.erase(0,2);
            b = atoi(line.c_str());
        }
 
        if (line.find("d=") != string::npos)
        {
            line.erase(0,2);
            d = atoi(line.c_str());
        }
 
        if (line.find("x1=") != string::npos)
        {
            line.erase(0,3);
            x1 = atof(line.c_str());
        }
 
        if (line.find("x2=") != string::npos)
        {
            line.erase(0,3);
            x2 = atof(line.c_str());
        }
        if (line.find("dx=") != string::npos)
        {
            line.erase(0,3);
            dx = atof(line.c_str());
        }
    }
 
    cout<<"a="<<a<<endl;
    cout<<"b="<<b<<endl;
    cout<<"d="<<d<<endl;
    cout<<"x1="<<x1<<endl;
    cout<<"x2="<<x2<<endl;
    cout<<"dx="<<dx<<endl;
 
    double result = method_of_trapezium(a,b,d,x1,x2,dx);
 
    writeToFile(result);
 
    t = clock() - t;
 
    cout<<"File created. Time: ";
    printf("%f", (double)t/CLOCKS_PER_SEC);
    cout<<endl;
}





а само задание было : Разработать программу для вычисления определенного интеграла ме-тодом трапеции для функции y=a*cos(b*x)+x. Коэффициенты a,b,d и границы интервала интегрирования должны быть считаны из файла. Расчет интеграла провести с использованием функции с передачей исходных данных как пара-метров и возвратом результата в главную функцию программы. Определить время работы вычислительного алгоритма программы. Результат записать в файл.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.12.2013, 17:00
Ответы с готовыми решениями:

проверьте пожалуйста!
не совсем уверен что правильно #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;iostream&gt;...

проверьте пожалуйста!
Доброе утро!Хочу показать вам не проверку свое творение.Не запускается. Вот текст ошибки: g++.exe...

Проверьте код пожалуйста
В чем ошибка? Если он в ответе выдает только: Vvedite element massiva: A= #include...

Проверьте программу пожалуйста
Суть программы заключается в следующем: мы вводим выражение ((2+2)/2*5+10) и программа выдаёт...

0
25.12.2013, 17:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.12.2013, 17:00
Помогаю со студенческими работами здесь

Проверьте пожалуйста код
Программа должна проверить введенную строчку на соответствие слову как паролю.Условия Не меньше 8...

Проверьте пожалуйста код
Делаю задания по описанию различных простеньких классов . Прошу проверить грамотность кода и...

Проверьте пожалуйста код (C++)
Вот я сам написал код(!)) Можете проверить: main() {...

Проверьте пожалуйста задачку
Одномерный массив из 13 элементов заполнить случайным образом числами от - 7 до 7. Присвоить 5 -...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru