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

Как исправить ошибки

04.10.2016, 23:32. Показов 1252. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
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
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
121
122
123
124
125
126
127
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define n 40
void input_func(float *array, float *array2)
{
    int i, sign;
    float start_dist = 10.0;
    float start_vel = 2.0;
    srand(time(NULL));
    for(i = 0; i < 40; i++)
    {
        sign = rand() % 2;
        if (sign == 1)
        {
            array[i] = start_dist + start_vel * i + ((float)rand() / (float)RAND_MAX + 0.1) * (start_dist / 100 );
            array2[i] = start_vel + ((float)rand() / (float)RAND_MAX + 0.1) * (start_vel / 100 * 5);
        }
        else
        {
            array[i] = start_dist + start_vel * i - ((float)rand() / (float)RAND_MAX + 0.1) * (start_dist / 100 * 5);
            array2[i] = start_vel - ((float)rand() / (float)RAND_MAX + 0.1) * (start_vel / 100 * 5);
        }
 
    }
}
 
void fekp_2(float *input_dist, float *input_vel, float *output_dist, float *output_vel, int input_size, float a_k, float b_k)
{
    int  i;
    float T_obz;
    T_obz = 1.0;
    output_dist[0] = input_dist[0];
    output_vel[0] = input_vel[0];
    for(i = 1; i < input_size; i++)
    {
        output_vel[i] = output_vel[i-1] +  (1 - b_k) / T_obz  * (input_dist[i] - output_dist[i-1] - output_vel[i-1] * T_obz);
        output_dist[i] = output_dist[i-1] + output_vel[i-1] * T_obz + (1 - a_k) * (input_dist[i] - output_dist[i-1] - output_vel[i-1] * T_obz);
    }
}
 
float skov(float *array1, float sv, int input_size)
{
    int i;
    float sko;
    sko = 0;
    //printf("mean: %f \n", mean );
    for (i = 1; i < input_size; i++)
        {
            sko += fabsf(sv - array1[i]);
        }
    sko = sko / (input_size - 1) ;
    return sko;
}
 
float skod(float *array1, float sv, float inc, int input_size)
{
    int i;
    float sko;
    sko = 0;
    //printf("mean: %f \n", mean );
    for (i = 1; i < input_size; i++)
        {
            sv += inc;
            sko += fabsf(sv - array1[i]);
        }
    sko = sko / (input_size - 1) ;
    return sko;
}
 
int main()
{
    int input_size,i;
    float a1 = 0.5, a2 = 0.7, a3 = 0.9, b1 = 0.8, b2 = 0.95;
    float input_dist[n] = {0};
    float input_vel[40] = {0};
    input_func(input_dist, input_vel);
    input_size = sizeof(input_dist)/sizeof(input_dist[0]);
    printf("------\n");
    printf("a1 = 0.5, a2 = 0.7, a3 = 0.9, b1 = 0.75, b1 = 0.95 \n");
    printf("------\n\n");
    float output_dist1[40] = {0};
    float output_vel1[40] = {0};
    float output_dist2[40] = {0};
    float output_vel2[40] = {0};
    float output_dist3[40] = {0};
    float output_vel3[40] = {0};
    float output_dist4[40] = {0};
    float output_vel4[40] = {0};
    float output_dist5[40] = {0};
    float output_vel5[40] = {0};
    float output_dist6[40] = {0};
    float output_vel6[40] = {0};
    input_size = sizeof(input_dist)/sizeof(input_dist[0]);
    fekp_2(input_dist, input_vel, output_dist1, output_vel1, input_size, a1, b1);
    fekp_2(input_dist, input_vel, output_dist2, output_vel2, input_size, a2, b1);
    fekp_2(input_dist, input_vel, output_dist3, output_vel3, input_size, a3, b1);
    fekp_2(input_dist, input_vel, output_dist4, output_vel4, input_size, a1, b2);
    fekp_2(input_dist, input_vel, output_dist5, output_vel5, input_size, a2, b2);
    fekp_2(input_dist, input_vel, output_dist6, output_vel6, input_size, a3, b2);
    printf("Distance\n\n");
    for(i = 0; i < input_size; i++)
            {
                printf("inp: %f, out(a1,b1): %f, out(a2,b1): %f, out(a3,b1): %f, out(a1,b2): %f, out(a2,b2): %f, out(a3,b2): %f \n"
                        ,input_dist[i], output_dist1[i], output_dist2[i], output_dist3[i], output_dist4[i], output_dist5[i], output_dist6[i]);
            }
    printf("------\n\n");
    printf("Velocity\n\n");
    for(i = 0; i < input_size; i++)
            {
                printf("inp: %f, out(a1,b1): %f, out(a2,b1): %f, out(a3,b1): %f, out(a1,b2): %f, out(a2,b2): %f, out(a3,b2): %f \n"
                        ,input_vel[i], output_vel1[i], output_vel2[i], output_vel3[i], output_vel4[i], output_vel5[i], output_vel6[i]);
            }
    printf("------\n\n");
    printf("Velocity SKO\n\n");
    printf("inp: %f, out(a1,b1): %f, out(a2,b1): %f, out(a3,b1): %f, out(a1,b2): %f, out(a2,b2): %f, out(a3,b2): %f \n"
            , skov(input_vel, 2.0, input_size) ,skov(output_vel1, 2.0, input_size),skov(output_vel2, 2.0, input_size),skov(output_vel3, 2.0, input_size)
            ,skov(output_vel4, 2.0, input_size),skov(output_vel5, 2.0, input_size),skov(output_vel6, 2.0, input_size));
    printf("------\n\n");
    printf("Distance SKO\n\n");
    printf("inp: %f, out(a1,b1): %f, out(a2,b1): %f, out(a3,b1): %f, out(a1,b2): %f, out(a2,b2): %f, out(a3,b2): %f \n"
            , skod(input_dist, 10.0, 2.0, input_size) ,skod(output_dist1, 10.0, 2.0, input_size),skod(output_dist2, 10.0, 2.0, input_size),
            skod(output_dist3, 10.0, 2.0, input_size),skod(output_dist4, 10.0, 2.0, input_size),skod(output_dist5, 10.0, 2.0, input_size),
            skod(output_dist6, 10.0, 2.0, input_size));
    return 0;
}




2 прога

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
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
void input_func(float *array)
{
    int i, sign;
    float num;
    num = 2;
    srand(time(NULL));
    for(i = 0; i < 10; i++)
    {
        sign = rand() % 2;
        if (sign == 1)
        {
            array[i] = num + ((float)rand() / (float)RAND_MAX + 0.1) * (num / 100 * 10);
        }
        else
        {
            array[i] = num - ((float)rand() / (float)RAND_MAX + 0.1) * (num / 100 * 5);
        }
 
    }
}
 
void kauf_f(float *input, float *output, int input_size, float a_k)
{
    int  i;
    output[0] = input[0];
    for(i = 1; i < input_size; i++)
    {
            output[i] = output[i-1] + (1 - a_k) * (input[i] - output[i-1]);
            //printf("x: %d \n", i );
    }
}
 
float dispersion(float *array1, int input_size)
{
    int i;
    float mean,disp;
    mean = 0;
    disp = 0;
    for (i = 0; i < input_size; i++)
        {
            mean += array1[i];
        }
    mean = mean/input_size;
    //printf("mean: %f \n", mean );
    for (i = 0; i < input_size; i++)
        {
            disp += fabsf(array1[i]-mean);
        }
    disp = disp/input_size;
    return disp;
}
 
int main()
{
    int input_size,i;
    float a_k1 = 0.3, a_k2 = 0.6, a_k3 = 0.9, disp, disp1, disp2, disp3;
    float input[10] = {0};
    input_func(input);
    float output1[10] = {0};
    float output2[10] = {0};
    float output3[10] = {0};
    input_size = sizeof(input)/sizeof(input[0]);
    kauf_f(input, output1, input_size, a_k1);
    kauf_f(input, output2, input_size, a_k2);
    kauf_f(input, output3, input_size, a_k3);
    for(i = 0; i < input_size; i++)
    {
        printf("input: %f, output: %f \n", input[i] ,output1[i]);
 
    }
    printf("------\n");
    for(i = 0; i < input_size; i++)
    {
        printf("input: %f, output: %f \n", input[i] ,output2[i]);
    }
    printf("------\n");
    for(i = 0; i < input_size; i++)
    {
        printf("input: %f, output: %f \n", input[i] ,output3[i]);
    }
    disp = dispersion(input, input_size);
    disp1 = dispersion(output1, input_size);
    disp2 = dispersion(output2, input_size);
    disp3 = dispersion(output3, input_size);
    printf("disp: %f \n" ,disp);
    printf("disp1: %f \n" ,disp1);
    printf("disp2: %f \n" ,disp2);
    printf("disp3: %f \n" ,disp3);
    return 0;
}



две проги выдают вот такие ошибки, в чем может быть дело?
Миниатюры
Как исправить ошибки   Как исправить ошибки  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.10.2016, 23:32
Ответы с готовыми решениями:

Как исправить ошибки?
Вот эти ошибки как исправить? #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include...

Как исправить ошибки в программе
Компилятор выдал мне следующие ошибки #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...

Объясните как исправить эти ошибки
При компиляции кода ошибок не выдаёт, но если этот же код вставить в другой файл вылезает куча...

Проверьте код,выдает ошибки,а как исправить их не могу
Суть в том,что надо проверь слова из строки на условия: 1)начало и конец слова начинается на одну...

3
Вездепух
Эксперт CЭксперт С++
11696 / 6375 / 1724
Регистрация: 18.10.2014
Сообщений: 16,071
05.10.2016, 03:35 2
Лучший ответ Сообщение было отмечено помощь как решение

Решение

Цитата Сообщение от помощь Посмотреть сообщение
две проги выдают вот такие ошибки, в чем может быть дело?
Компилятор работает в режиме "классического С" (С89/90), в котором все объявления должны располагаться непрерывно наверху блока.

Либо переносите обявления-нарушители выше, либо переводите компилятор в режим С99.
1
3 / 3 / 0
Регистрация: 15.05.2016
Сообщений: 43
06.10.2016, 02:04  [ТС] 3
Спасибо за ответ, а можете подсказать как перевести компилятор в режим с99, пользуюсь rad studio 10 seatl
я пробовал добавлять библиотеку vcl.h так другие ошибки выскакивают
в инете нет инфы как перевести в режим с99
0
Вездепух
Эксперт CЭксперт С++
11696 / 6375 / 1724
Регистрация: 18.10.2014
Сообщений: 16,071
06.10.2016, 02:12 4
Цитата Сообщение от помощь Посмотреть сообщение
как перевести компилятор в режим с99, пользуюсь rad studio 10 seatl
Ой, не знаю. RAD Studio 10 Seattle, согласно интернету, использует clang в качестве компилятора. Надо где-то в настройках компилятора указать аргумент -std=c99.
0
06.10.2016, 02:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.10.2016, 02:12
Помогаю со студенческими работами здесь

Ошибки при компиляции - исправить ошибки в коде
Помогите исправить ошибки , не понимаю в чем может быть причина ... #include &lt;conio.h&gt;...

Код работает не так, как ожидается (найти и исправить ошибки)
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; char deletika(char a, long ot, long...

КАК исправить синтаксические ошибки в проге по сложению, вычитанию, скалярному произведению век
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; #include &lt;locale.h&gt; struct vector{...

Как исправить ошибки?
Система периодически перезагружается, и вот что нашла. Вирусов нет, пыли нет. Спасибо всем, кто...

Как исправить ошибки?
Определить, является ли введенное четырехзначное число палиндромом (палиндром читается одинаково...

Как исправить ошибки?
Всем привет. При компиляции этого кода procedure TForm3.Button1Click(Sender: TObject); var ...


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

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