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

Passing 'double' for converting 1 of 'void' - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
progra
1 / 1 / 0
Регистрация: 17.05.2011
Сообщений: 26
16.12.2011, 11:46     Passing 'double' for converting 1 of 'void' #1
Здравствуйте! пишу метод Эйткина (для выч. мата)с графикой но выдает ошибки в коде. Помогите исправить! заранее спасибо!
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
#include <stdio.h>
#include <math.h>
#include <graphics.h>
#include <conio.h>
double fnc(double x)
{
    return sqrt(x);
}
 
double x[4]={1.0, 1.5, 2.0, 2.5}, y[4];
 
int gd=DETECT, gm=VGAHI;
//int y[100],x[100],p[100],k;
int main()
{
        int i, j;
       double k, p[4], pf;
 
        for(i=0; i<4; i++)  y[i]=fnc(x[i]);
 
        initgraph(&gd, &gm, "");
        line(0,240,639,240);
        line(320,0,320,479);
        for(i=0; i<5; i++){
                 line(120+100*i, 237, 120+100*i, 243);
                 line(317, 40+100*i, 323, 40+100*i);
        }
        moveto(310,10);
        outtext("y");
        moveto(600,250);
        outtext("x");
        moveto(310,250);
        outtext("0");
 
        /*Interpolaycia*/
 
           for(k=0.0; k<4.0; k+=0.001)
           {
                for(i=0; i<4; i++) p[i]=y[i];
 
                for(i=1;i<4;i++)
            {
                    for(j=0;j<4-i;j++)
                      p[j]=(p[j]*(k-x[j+i])-p[j+1]*(k-x[j]))/(x[j]-x[j+i]);
            }
           putpixel (320+k*100,240-p[0]*100,4);
           }
 
        /*Graphic korniay iz X*/
 
        for(k=0.0; k<4.0; k+=0.001)
                  putpixel (320+k*100, 240-fnc(k)*100, 2);
        for(i=0, setcolor(7); i<4; i++)
                 circle(320+x[i]*100, 240-y[i]*100, 3);
 
        getchar();
        closegraph();
        getch();
    return 0;
}
46[Warning] passing `double' for converting 1 of `void putpixel(int, int, int)'
46[Warning] passing `double' for converting 2 of `void putpixel(int, int, int)'
52[Warning] passing `double' for converting 1 of `void putpixel(int, int, int)'
52[Warning] passing `double' for converting 2 of `void putpixel(int, int, int)'
54[Warning] passing `double' for converting 1 of `void circle(int, int, int)'
54[Warning] passing `double' for converting 2 of `void circle(int, int, int)'
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
16.12.2011, 11:54     Passing 'double' for converting 1 of 'void' #2
C++
1
putpixel ((int)320+k*100,(int)240-p[0]*100,4);
progra
1 / 1 / 0
Регистрация: 17.05.2011
Сообщений: 26
16.12.2011, 12:00  [ТС]     Passing 'double' for converting 1 of 'void' #3
Все равно выдает те же ошибки(
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
16.12.2011, 12:04     Passing 'double' for converting 1 of 'void' #4
C++
1
putpixel (320+(int)k*100,240-(int)p[0]*100,4);
и во всех остальных putpixel по такому же образу перепиши

Добавлено через 1 минуту
и вообще это не ошибки а предупреждения, о том что дробная часть будет отброшена
progra
1 / 1 / 0
Регистрация: 17.05.2011
Сообщений: 26
16.12.2011, 12:06  [ТС]     Passing 'double' for converting 1 of 'void' #5
Спасибо огромное, теперь понял!
Melkor
30 / 30 / 1
Регистрация: 15.12.2011
Сообщений: 108
16.12.2011, 15:59     Passing 'double' for converting 1 of 'void' #6
Цитата Сообщение от oxotnik Посмотреть сообщение
Код C++
1
putpixel (320+(int)k*100,240-(int)p[0]*100,4);
и во всех остальных putpixel по такому же образу перепиши
Добавлено через 1 минуту
и вообще это не ошибки а предупреждения, о том что дробная часть будет отброшена
одна поправочка если не возражаете: (int)(320+k*100),(int)(240-p[0]*100,4)
Yandex
Объявления
16.12.2011, 15:59     Passing 'double' for converting 1 of 'void'
Ответ Создать тему
Опции темы

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