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

Возведение в степени, не используя pow - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ FFT в bass.dll http://www.cyberforum.ru/cpp-beginners/thread537313.html
Доброго времени суток!Оговорюсь сразу я не программист и пишу программу методом "copy-past"))) ну некому больше ! К делу! для обработки звука посоветовали bass.dll-я во всем разобрался кроме одного:float fft; BASS_ChannelGetData(chan, fft, BASS_DATA_FFT1024); fft-здесь как я понимаю реальная часть, а как получить и мнимую?Если можно подкиньте примерчик.Заранее спасибо
C++ Прошу помощи ,не двигается змейка #include<iostream> #include<windows.h> #include<conio.h> using namespace std; const int Y = 20, X = 50; enum DIR{UP, DOWN, LEFT, RIGHT}; void main() { http://www.cyberforum.ru/cpp-beginners/thread537303.html
C++ Моделирование случайных чисел с экспоненциальным законом распределения
Программирования случайных чисел с экспоненциальным законом распределения. Товарищи помогите пожалуйста.
C++ Вопрос о bmp[header info]
Хочу открыть bmp файл и проверить, на самом ли деле это BMP. Для этого, делаю проверку первых двух байт на BM, и следующих четырех с размером файла, НО эти четыре байта CE 6B 0E 00 (h) = 3463122432(d). Однако же размер совсем другой, в чем неправильная моя математика?
C++ Структура - заработная плата http://www.cyberforum.ru/cpp-beginners/thread537288.html
привет. сел за курсовую. вроде написал, но не работает. помогите и исправьте пожалуйста. информация должна считываться с файлов, я их вложил. Расчет зарплаты. структура должна иметь такие поля: *фамилия и инициалы. *год приёма на роботу. *зарплата. *функция, которая возвращает значение надбавки к зарплате относительно стажа: от 5 до 10 лет - 5%, от 10 до 15 лет - 10%, больше 15 лет -...
C++ Создать и организовать ввод четырёх перерменных типа строка Создать и организовать ввод четырёх перерменных типа строка. Объединить в прямой последовательности начиная со второй строки, после объединить с первой. Пример #include <stdio.h> #include <string> main() { char s1,s2; printf("1 stroka\n"); scanf("%s", &s1); printf("2 stroka\n"); подробнее

Показать сообщение отдельно
vua72
410 / 410 / 83
Регистрация: 28.11.2010
Сообщений: 1,158
01.03.2013, 21:12     Возведение в степени, не используя pow
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
#include <stdio.h>
//#include <conio.h>;
#include <math.h>
float sum(float , float );
int main()
{
    float x,k,prec,y,z;
    int p;
    //printf("enter number \n");
    //scanf(" %f",&x);
    //printf("enter degree\n");
    //scanf(" %f",&k);
    //printf("enter accuracy \n");
    //scanf(" %f",&prec);
    x=0.25;
    k=4.4;
    y=1;
    p=k;
    if (x==0) {
        printf("x=0");
    }
    if ((x>0) && (k>0)) {
        printf("result:  %f \n",sum (x,k));
    }
    if ((x>0) && (k<0)) {
        z=1/sum(x,fabs(k));
        printf("result:  %f \n",z);
    }
    if ((x<0) && (k>0) && ((p%2)!=0)) {
        z=sum(fabs(x),k)-2*sum(fabs(x),k);
        printf("result:  %f \n",z);
    }
    if ((x<0) && (k<0) && ((p%2)!=0)) {
        z=1/(sum(fabs(x),fabs(k))-2*sum(fabs(x),fabs(k)));
        printf("result:  %f \n",z);
    }
    if ((x<0) && ((p%2)==0)) {
        printf("inccorect, if x<0, degree must be unparne");
    }
    if (k==0) {
        printf("  degree cant be zero");
    }
    return 0;
}
float sum(float x, float k)
{
    float yk, prec=1e-5, y=1.0, b;
    int i;
    do {
        yk=y;
        for (i=k-1; i>1; i--) yk=y*yk; //????? здесь вы иеряете точность
        b=(1/k)*((x/yk)-y);
        if (fabs(b)>prec) y=y+b;
    } while (fabs(b)>prec);
    return y;
}
Добавлено через 1 минуту
Я переделал немного, часть подправил, а логику исправляете сами. Вы фактически возводите число в степень 4, а не 4.4. Скорее всего явм нужно разбираться с суммой.

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