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

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

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

Трабл с решением задания, условные операторы - C++

23.04.2014, 17:25. Просмотров 242. Ответов 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
#include <stdio.h>          
#include <conio.h>
#include <math.h>
 
int main()
{   
    float x, y;         
    
 printf("\nx=");
 scanf("%f", &x);
 
    if(0.0<x<1.0) 
    {
    y=sqrt(1.0-((x-1.0)*(x-1.0)));
    
    if(x==1.0)
    y=1.0;
    if(x==0.0)
    y=0.0;
             
    }
             
    if(1.0<x<2.0)
    {
    y=1.0-(sqrt(1.0-((2.0-x)*(2.0-x))));
    if(x==2.0)
    y=0.0; 
    }
    
    
    if(2.0<x<3.0)
    {
    y=1.0-sqrt(1.0-((x-2.0)*(x-2.0)));
    if(x==3.0)
    y=1.0;
    }
                        
                        
    if(3.0<x<4.0)
    {
    y=sqrt(1.0-((x-3.0)*(x-3.0)));
    if(x==4.0)
    y=0.0;
                        
                        }
    if(4.0<x<5.0)
    {
    y=sqrt(1.0-((5.0-x)*(5.0-x)));                
    if(x==5.0)
    y=1.0;
    }
                        
                                        
    if(5.0<x<6.0)
    {
    y=1.0-sqrt(1.0-((6.0-x)*(6.0-x)));
    if(x==6.0)
    y=0.0;
    }  
 
    printf("\ny=%f", y);
 
    getch();
    return 0;
}
при вводе переменной "x" в интервале от 5 до 6 - программа работает замечательно. НО, казалось бы аналогичные команды других интервалов, дают результат "y" - что-то вроде y=-1#INDOO, какое бы значение не ввел в промежутке от 0 до 5. В чем же проблема?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.04.2014, 17:25     Трабл с решением задания, условные операторы
Посмотрите здесь:

Условные операторы с++ - C++
Доброго времени программисты, ищу спасения на вашем портале! Писал программу: Вывести на экран таблицу значений функции Y(x) и ее...

Условные операторы - C++
Написать программу, которая вычисляет дату следующего дня. Ниже представлен рекомендуемый вид экрана во время работы программы. Введите...

Условные операторы - C++
Задание: создайте условный оператор, который присваивал бы x*y для четного x, в противном случае для нечетного x и y, не равного 0,...

Условные операторы - C++
Напечатать таблицу значений функций y=sqr(x)+4x на интервале от -5 до 5.

условные операторы - C++
для заданых a,x написать программу для определения значений функции http://s51.***********/i132/1112/29/7a8ea17823f7.jpg ...

Условные операторы - C++
Здравствуйте! Сразу же покажу нужный кусочек проги (полная версия будет ниже): if(b&gt;0) { c=a+b; d=2*c; } else {

Условные операторы и массивы - C++
Ученики начальной школы сдают технику чтения. Нормы следующие: в 1 клас-се ребёнок должен читать не менее 20 слов в минуту; во втором...

Арифметиеские выражения и условные операторы - C++
С помощью оператора if определить, находится ли точка на плоскости в замкнутой области. Если находится, то вычислить значение функции f1...

Условные операторы, двумерные массивы - C++
Вот задачи, решение сделано на Паскале, переделать нужно на Си... 1. Даны произвольные числа а, b, c. Определить, может ли быть построен...

Используя вложеные условные операторы IF и IF-ELSE - C++
Составить программу для нахождения вещественных корней квадратного уравнения ax2+bx+c=0.


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
6322 / 5906 / 1913
Регистрация: 18.12.2011
Сообщений: 15,189
Завершенные тесты: 1
23.04.2014, 18:00     Трабл с решением задания, условные операторы #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от ИванИ Посмотреть сообщение
if(0.0<x<1.0)
Где это Вы такой синтаксис нашли
C++
1
if(0.0<x && x<1.0)
и так везде!

Цитата Сообщение от ИванИ Посмотреть сообщение
if(x==1.0)
Вы внутри верного условия x<1. КАК x может оказаться равным 1?

И, чтобы избежать ненужных проверок добавьте else перед всеми if (кроме первого).
ИванИ
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 6
24.04.2014, 04:14  [ТС]     Трабл с решением задания, условные операторы #3
Спасибо, все заработало как надо. А насчет такого синтаксиса - это потому, что я пока словно русский с разговорником иностранного языка зимбабве. Читал ведь в учебнике, что внутри функции If используется только логическая функция, но как-то сразу не легло. Теперь надолго запомню
Ответ Создать тему
Опции темы

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