|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.05.2013, 13:14 | #1 |
Регистрация: 03.05.2013
Сообщений: 5
|
Работ с операторами if и else (си)
Здравствуйте, помогите разобраться, в чём ошибка. Программа выдаёт одни и те же значения и вообще не заходит в условие if(x==1.3). Само задание: Дано а. Вычислить значения ф-ии у=(те значения что при условиях), где х изменяется в интервале от 0,8 до 2 с шагом 0,1. Вывести на печать значения ф-ии у>0. Заранее спасибо.
#include<stdio.h> #include<math.h> int main() { int a; float x,y=0; printf("Vvedite a: "); scanf("%d", &a); printf("a=%d",a); for( x = 0.8; x < 2; x = x + 0.1 ) { if (x<1.3) y = (M_PI*x*x*x )- (7 / x*x); else if ( x ==1.3) y = (a*x*x*x) + (7*sqrt(x)); else if(x > 1.3) y = (log(x)/log(10)) + (7*sqrt(x)); printf("\n"); if ( y > 0 ) printf("x=%f y=%f",x,y); } return 0; } |
03.05.2013, 13:21 | #2 |
Пользователь
Регистрация: 03.07.2011
Сообщений: 92
|
Попробуйте вообще else убрать. Оставьте только if'ы )
|
03.05.2013, 13:33 | #3 |
Регистрация: 03.05.2013
Сообщений: 5
|
Да, я пробовала, всё равно не получается. Проблема с условием x==3, что то я не так делаю, получается вообще туда не заходит, при любом а одно и тоже значение выдаёт.
|
03.05.2013, 14:23 | #4 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Вы можете показать картинку, по которой составлялись уравнения?
Попробуйте: Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
Последний раз редактировалось BDA; 03.05.2013 в 14:31. |
03.05.2013, 15:21 | #5 |
Регистрация: 03.05.2013
Сообщений: 5
|
С добавление EPS 0.0000001, всё работает , почему? Спасибо Вам за помощь.
|
03.05.2013, 15:28 | #6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Пожалуйста.
Потому что точного значения 1.3 нельзя получить на компьютере - только приближенное, состоящее из чисел - степеней двойки.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблемы с операторами | SW00001 | Общие вопросы Delphi | 7 | 27.01.2013 14:32 |
Задачи с операторами повтора. | AntoshkaK | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 09.12.2011 07:39 |
Практическая с Операторами циклов по BC++ | Juice_TKD | Помощь студентам | 3 | 17.05.2011 22:17 |
циклы с операторами For, While, Repeat | baltser | Помощь студентам | 1 | 03.06.2010 06:59 |
Подсобите с операторами Паскаля... | yurasta | Помощь студентам | 0 | 17.05.2010 20:17 |