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

Напечатать таблицу значений функций sinx и tgx на отрезке [0, 3] с шагом 0.1 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ программа, которая бы вычисляла среднее значение, максимальный и минимальный элемент второй колонки Excel и выводила это значение на экран http://www.cyberforum.ru/cpp-beginners/thread711860.html
Тема: «Чтение и обработка табличных данных с использованием языка C++» Цель: Научиться сохранять таблицы с помощью MS Excel в формате CSV (Comma- Separated Values). Научиться открывать, читать и проводить обработку данных полученных в формате CSV с помощью языка программирования C++. 1. FILE – структура, объявляющая файл и хранящая дескриптор на данный файл; 2. fopen(.) – функция для...
C++ Шаблонная функция и перегрузка ребят помогите создать шаблонную функцию тут : #include "stdafx.h" #include "iostream" #include "conio.h" #include "iomanip" #include "ctime" using namespace std; int Sum (int** arr, int N, int i) { int sum = 0; http://www.cyberforum.ru/cpp-beginners/thread711847.html
C++ Заполнить матрицу числами из файла
Ребята, обясните доходчиво как работает етот кусок кода const int size = mas; int** m = new int*; for (int i=0; i<size; i++) m = new int; for (int i=0; i<size; i++) for (int j=0; j<size; j++) m = 0; for (int i=0; i<count; i++) m = mas; for (int i=0; i<size; i++){
Прочитать блок из файла C++
Пишу в BUILDER C++. Не знаю, где завяз. Требуется прочитать файл: FILE *infile; infile=fopen(Srce.c_str(),"rb"); // считываем размер подписанных данных DWORD size=0; fread(&size,sizeof(DWORD),1,infile); // считываем сами данные PBYTE date;
C++ Чтение пробелов из файла http://www.cyberforum.ru/cpp-beginners/thread711837.html
Добрый день. Не могу разобраться, как стандартными средствами C++ считать из файла пробелы. Пример: word1 0 word2 13 word3 45 Нужно в первой строке прочитать первое слово, затем цифру, без всяких пробелов. Это понятно как. А далее нужно его заставить перенести курсор на следующую строку, прочитать все первые пробелы (их 4 штуки), затем прочитать слово, затем цифру (без пробелов)....
C++ cderr_initialization Здравствуйте, в проекте возникает следующая ошибка:cderr_initialization. Облазил весь интернет, так как проблема связана с тем, что мне необходимо использовать измененный свойства проекта, без изменения свойств все работает. Ниже приведу код и свойства проекта, которые поменял. Надеюсь кто-то подскажет в чем косяк) LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)... подробнее

Показать сообщение отдельно
asidorchenko
379 / 205 / 25
Регистрация: 09.04.2012
Сообщений: 635
28.11.2012, 13:01     Напечатать таблицу значений функций sinx и tgx на отрезке [0, 3] с шагом 0.1
Нужно использовать стандартную библиотеку или нет?

Если нужно использовать стандартную библиотеку, то
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <math.h>
 
int main()
{
float i;
for(i=0.0; i<3.0;i+=0.1)
{
printf("sin(%.1f): %.5f \n", i, sin(i));
printf("tg(%f): %f %e\n\n", i, sin(i)/cos(i) );
}
 
return 0;
}

Без стандартной библиотеки эта задача решается посредством разложения функции в ряд Тейлора.
См http://ru.wikipedia.org/wiki/%D0%A0%...BE%D1%80%D0%B0


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
#include <stdio.h>
#include <math.h>
 
#define M_PI 3.14159265358979323846
 
float fsin(int n, float xn, float fact);
float fcos(int n, float xn, float fact);
 
int main()
{
float i;
for(i=0.0; i<3.0;i+=0.1)
{
printf("sin(%.1f): %.5f \n", i, fsin(0, i,1.0));
printf("tg(%f): %e\n\n", i, fsin(0, i,1.0)/fcos(0, i,1.0) );
}
 
return 0;
}
 
float fsin(int n, float xn, float fact)
{
if (n == 8)
 return 0.0;
 
int fct = 2*n + 1;
 
float nfact;
 
if (n == 0)
nfact = 1.0;
else
nfact = fact * (float)(fct - 1) * (float)fct;
 
float coef = pow( (float) -1.0, (float) n) / nfact;
float step = 2.0*n+1.0;
 
float result = coef * pow(xn, step);
 
return (result+fsin(n+1, xn, nfact));
 
}
 
float fcos(int n, float xn, float fact)
{
if (n == 8)
 return 0.0;
 
int fct = 2*n;
 
float nfact;
 
if (n == 0)
nfact = 1.0;
else if (n == 1)
nfact = fact * (float)fct;
else
nfact = fact * (float)(fct - 1) * (float)fct;
 
float coef = pow( (float) -1.0, (float) n) / nfact;
float step = 2.0*n;
 
float result = coef * pow(xn, step);
 
return (result+fcos(n+1, xn, nfact));
 
}
 
Текущее время: 08:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru