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

Ошибка при запуске - C++

Восстановить пароль Регистрация
 
Oberemock
0 / 0 / 0
Регистрация: 15.05.2013
Сообщений: 3
15.05.2013, 17:49     Ошибка при запуске #1
Помогите пожалуйста. Не работает программа. Не считает x и y. Выключается еще при первой метке и пишет:,,X и y не существуют"(а они то есть). Думаю что проблема в операторных скобках(точно не знаю).Если кому не трудно помогите!




-10 ≤ f ≤ 2, Δ f = 2 1. С предусловием, 2. Счетный
-3 ≤ g ≤ 6.6, Δ g = 1.6

S – сумма x>y
P – произвед. y<0
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
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <locale.h>
int main ()
{ setlocale(0, "");
int f;
float g,x,y,S=0,k=0,P=1;
f=-10;
while (f<=2)
{
for (g=-3;g<=6.6;g=g+1.6)
{
if ((f*f*f-11*g)>=0)
x =-3+log(sqrt(f*f*f-11*g)+5);
else
{
printf ("x и y не существуют");
goto the_end;
}
if(x>5)
y = x*x+3*f+4*g;
else
if (x>1)
 
if (0.5*(f-g)==0)
{printf ("\ny не существует ");
goto the_end;
} 
else
y=f*x-(g/(0.5*(f-g)));
else
if (x>-2)
y =(sin(f*g+x)*sin(f*g+x))/sqrt(pow(x,2)+3+fabs(f));
else
y= cos(f*g-x*x);
{if (x>y)
k++;
S=S+x; 
if (y<0)
{P=P*y;
printf(" y = %.2f", y);}
}
}
f=f+2;
}
if(y>0)
printf("\n Отрицательных чисел не существует");
else
printf("\n Произведение  y<0 \n P=%.2f", P); 
the_end:getch();
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2013, 17:49     Ошибка при запуске
Посмотрите здесь:

Ошибка при запуске... C++
C++ Ошибка при запуске
C++ Ошибка при запуске программы
Ошибка при запуске C++
Ошибка при запуске C++ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FreeMan108
 Аватар для FreeMan108
120 / 120 / 6
Регистрация: 04.03.2013
Сообщений: 368
15.05.2013, 18:12     Ошибка при запуске #2
C++
1
2
3
4
5
6
7
if ((f*f*f-11*g)>=0)
x =-3+log(sqrt(f*f*f-11*g)+5);
else
{
printf ("x и y не существуют");
goto the_end;
}

Все правильно: (-10)*(-10)*(-10) - 11*(-3) < 0. Следовательно, выполняется код "else".
Oberemock
0 / 0 / 0
Регистрация: 15.05.2013
Сообщений: 3
15.05.2013, 18:16  [ТС]     Ошибка при запуске #3
Цитата Сообщение от FreeMan108 Посмотреть сообщение
C++
1
2
3
4
5
6
7
if ((f*f*f-11*g)>=0)
x =-3+log(sqrt(f*f*f-11*g)+5);
else
{
printf ("x и y не существуют");
goto the_end;
}

Все правильно: (-10)*(-10)*(-10) - 11*(-3) < 0. Следовательно, выполняется код "else".

Нет.если взять f=2 и g= с минусом- должно считать
FreeMan108
 Аватар для FreeMan108
120 / 120 / 6
Регистрация: 04.03.2013
Сообщений: 368
15.05.2013, 18:20     Ошибка при запуске #4
На первом шаге цикла программа завершается, т. к. в коде "else" написано
C++
1
goto the_end;
.
Oberemock
0 / 0 / 0
Регистрация: 15.05.2013
Сообщений: 3
15.05.2013, 18:24  [ТС]     Ошибка при запуске #5
Цитата Сообщение от FreeMan108 Посмотреть сообщение
На первом шаге цикла программа завершается, т. к. в коде "else" написано
C++
1
goto the_end;
.
разве в случае если x считается else не должно ли пропускаться?
FreeMan108
 Аватар для FreeMan108
120 / 120 / 6
Регистрация: 04.03.2013
Сообщений: 368
15.05.2013, 18:32     Ошибка при запуске #6
Цитата Сообщение от Oberemock Посмотреть сообщение
Нет.если взять f=2 и g= с минусом- должно считать
Вот при f=2, x то посчитается, но будут нарушены другие условия "if".

Добавлено через 1 минуту
При f = 3, например, пишет что отрицательных чисел не существует.
Yandex
Объявления
15.05.2013, 18:32     Ошибка при запуске
Ответ Создать тему
Опции темы

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