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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
akainia
0 / 0 / 0
Регистрация: 27.04.2012
Сообщений: 11
#1

Помогите, пожалуйста найти ошибку - C++

15.05.2012, 23:19. Просмотров 271. Ответов 1
Метки нет (Все метки)

Uvx и Uvix считает правильно, а вот с t, какие-то проблемы))) вообще по нулям не понимаю почему.
За ранее спасибо!

Вот программа:
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
#include <stdio.h>
#include <iostream>
#include<math.h>
#define N 1500
using namespace std;
int main ()
{
float t[N], Uvx[N], Uvix[N];
int i, n;
cout<<"vvedite n=";
cin>>n;
float tn=0,tk=pow(10,-5),dt;
dt=(tk-tn)/(n-1);
for(i=0;i<n;i++)
t[i]=tn+i*dt;
float a1=0.5, b1=30, a2=2.5, b2=10, a3=0.5, b3=60, Uvx1=10, Uvx2=30, v=7, T=pow(10,-5);
for (i=0;i<n;i++)
if (0<=t[i] & t[i]<T) Uvx[i]=v*t[i]/T;
for (i=0;i<n;i++)
if (Uvx[i]<=Uvx1) Uvix[i]=a1*Uvx[i]+b1;
else if (Uvx[i]<=Uvx2) Uvix[i]=a2*Uvx[i]+b2; 
else Uvix[i]=a3*Uvx[i]+b3;
cout<<"   N    t   Uvx  Uvix"<<endl;
cout<<"____________________"<<endl;
for (i=0;i<n;i++)
    printf("\n %3d  %6.3f  %6.3f  %6.3f",i,t[i],Uvx[i],Uvix[i]);
return 0;}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2012, 23:19     Помогите, пожалуйста найти ошибку
Посмотрите здесь:

Пожалуйста, найти ошибку - C++
Здравствуйте! При компиляции программы в Bloodshed Dev-C++ ошибок нет. Но при включении программы и вводе переменной ничего не происходит....

помогите найти ошибку - C++
#include &quot;../../header.h&quot; int main() { vector &lt;int&gt; nums(0); int num = 0; while (cin&gt;&gt;num, nums.size()&lt;2) ...

Помогите найти ошибку - C++
#include&lt;iostream.h&gt; #include&lt;conio.h&gt; #include&lt;fstream.h&gt; void main() {clrscr(); struct podrozd {char naimenovanie; int...

Помогите найти ошибку - C++
ЧТО ТУТ НЕПРАВИЛЬНО ? #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; #include &lt;cmath&gt; #include &lt;stdio.h&gt; using...

Помогите найти ошибку - C++
Помогите, с этим кодом неправильно..(( proizv красным почерком #include &lt;iostream&gt; using namespace std; int main() { int ...

помогите найти ошибку. - C++
Когда вводишь 0 или -20 например, ERROR не выдает,а что-то непонятное.почему? #include &lt;iostream&gt; #include &lt;cmath&gt; using namespace...

помогите найти ошибку - C++
//--------------------------------------------------------------------------- #include &lt;vcl.h&gt; #pragma hdrstop #include...

Помогите найти ошибку - C++
Проблема , по моему мнению, заключается в том что выдает неправильную полную сумму ряда. Для ряда, члены которого вычисляются по...

Помогите найти ошибку - C++
#include &lt;iostream&gt; using namespace std; int main() { double a, b; bool state; cout &lt;&lt; &quot; Enter a = &quot;; cin &gt;&gt;...

Помогите найти ошибку - C++
Пожалуйста, помогите найти ошибку. Компилятор выдает 2 ошибки. Думаю, что намудрила с переменной a. #include &lt;iostream.h&gt; ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
amor1k
Студент
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
16.05.2012, 00:56     Помогите, пожалуйста найти ошибку #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
В функции pow(), первым аргументов должно быть float или double число
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
#include <stdio.h>
#include <iostream>
#include <math.h>
#define N 1500
using namespace std;
int main ()
{
    float t[N], Uvx[N], Uvix[N];
    int i, n;
    cout<<"vvedite n=";
    cin>>n;
    float tn=0; 
    float tk = pow(10.0,-5.0), dt = (tk-tn)/(n-1);
    for(i=0;i<n;i++)
        t[i]=tn+i*dt;
    float a1=0.5, b1=30, a2=2.5, b2=10, a3=0.5, b3=60, Uvx1=10, Uvx2=30, v=7, T=pow(10.0,-5);
    for (i=0;i<n;i++)
        if (0<=t[i] && t[i]<T) Uvx[i]=v*t[i]/T;
    for (i=0;i<n;i++)
        if (Uvx[i]<=Uvx1) Uvix[i]=a1*Uvx[i]+b1;
        else if (Uvx[i]<=Uvx2) Uvix[i]=a2*Uvx[i]+b2; 
        else Uvix[i]=a3*Uvx[i]+b3;
        cout<<" N t Uvx Uvix"<<endl;
        cout<<"____________________"<<endl;
        for (i=0;i<n;i++)
            printf("\n %3d %6.3f %6.3f %6.3f",i,t[i],Uvx[i],Uvix[i]);
        return 0;
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru