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

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

Войти
Регистрация
Восстановить пароль
 
 
рiece something
1 / 1 / 0
Регистрация: 10.02.2011
Сообщений: 59
#1

оператор if, некорректно работает программа - C++

09.06.2011, 20:15. Просмотров 669. Ответов 17
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream.h>
#include <math.h>
 
main ()
{
    int b;
    double z, x=0.63, c=1.5, d=2, a=0.37;
    cout << "Vvedite znachenie B" << endl;
    cin >> b;
    
    if (b==1||b==2)
    z=sin(x)+c*d; 
    if (b==3||b==4||b==5)
    z=x/(a+sqrt(d*a*2));
    if (b==8)
    z=a+d*cos(x);
    
    else cout << "Reshenii net" << endl;
    cout << "Z=" << z << endl;
    return 0;
}
Если ввести другое значение, то все равно высвечивается некоторое решение. А когда вводишь1/2/3/4/5/8 в конце пишет Reshenii net. Как исправить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.06.2011, 20:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос оператор if, некорректно работает программа (C++):

Некорректно работает оператор присваивания - C++
class Card { private: int Cost; char *Name, *Suit; public: Card(): Cost(0), Name (0), Suit (0){} ...

некорректно работает программа - C++
Написала вот эту программу, она компилируется, но после ввода данных, вылазит ошибка. С чем это может быть связано? // f(x,y) = 3*x-y ...

некорректно работает программа - C++
Программа компилируется но после ввода данных пропадает окно! #include&lt;iostream.h&gt; #include&lt;string.h&gt; #include&lt;math.h&gt; ...

Некорректно работает программа - C++
При создании c1 все еще правильно. При выполнении операторов уже нет. Почему? #include &lt;iostream&gt; #define _USE_MATH_DEFINES #include...

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

Некорректно работает программа. Бесконечный цикл - C++
Код запускается, но после ввода данных просто ничего не происходит, не вылетает, не выдает ошибку. Помогите, что не так? Уверен ошибка...

17
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
09.06.2011, 20:18 #2
рiece something, чо надо-то? условие выложи
0
рiece something
1 / 1 / 0
Регистрация: 10.02.2011
Сообщений: 59
09.06.2011, 20:33  [ТС] #3
решить систему уравнений
0
Миниатюры
оператор if, некорректно работает программа  
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
09.06.2011, 20:42 #4
Читайте
0
рiece something
1 / 1 / 0
Регистрация: 10.02.2011
Сообщений: 59
09.06.2011, 20:57  [ТС] #5
iama, я уже пыталась по-разному записывать. но либо выдает ошибку, либо продолжает писать все вместе: и z=, и решений нет.
0
iama
1250 / 975 / 49
Регистрация: 30.07.2010
Сообщений: 5,297
09.06.2011, 20:59 #6
Вы основ не понимаете, попробуйте пройтись по программе, как компилятор, при каких данных, в какую ветку попадете
0
рiece something
1 / 1 / 0
Регистрация: 10.02.2011
Сообщений: 59
09.06.2011, 21:25  [ТС] #7
Цитата Сообщение от iama Посмотреть сообщение
Вы основ не понимаете
спорить не буду.

Цитата Сообщение от iama Посмотреть сообщение
опробуйте пройтись по программе
у меня уже взгляд замылился. я на эту программу целый день смотрю.
0
Nursik77
273 / 233 / 21
Регистрация: 05.04.2011
Сообщений: 645
09.06.2011, 21:35 #8
А iama, так хотел вас наставить на путь истинный а вы к нему не хотите идти:
C
1
2
3
4
5
6
7
8
...
      if (b==1||b==2)
        z=sin(x)+c*d; 
    else if (b==3||b==4||b==5)
        z=x/(a+sqrt(d*a*2));
    else if (b==8)
        z=a+d*cos(x);
...
Добавлено через 6 минут
И на будущее, лучше пол часа поучить то, с чем вы столкнетесь, чем целый день ломать голову. Ваш метод называется "пальцем в небо".
1
MaXiDRoM_90
11 / 11 / 1
Регистрация: 21.03.2010
Сообщений: 47
09.06.2011, 21:37 #9
рiece something,
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
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
 
 
using namespace std;
 
int main ()
{
        int b;
        double z=0, x=0.63, c=1.5, d=2, a=0.37;
        cout << "Vvedite znachenie B" << endl;
        cin >> b;
        
        if (b==1||b==2)
        {
            z=sin(x)+c*d; 
        }
        if (b==3||b==4||b==5)
        {
            z=x/(a+sqrt(d*a*2));
        }
        if (b==8)
        {
            z=a+d*cos(x);
        }
        if(b==6||b>8)
        {
            cout << "Reshenii net" << endl;
        }
 
        cout << "Z=" << z << endl;
        getch();
        return 0;
}
0
рiece something
1 / 1 / 0
Регистрация: 10.02.2011
Сообщений: 59
09.06.2011, 21:40  [ТС] #10
Цитата Сообщение от Nursik77 Посмотреть сообщение
так хотел вас наставить на путь истинный а вы к нему не хотите идти:
хочу. просто путь к истине тернист и труден, а сегодня я уже устала.

существенных изменений не произошло.
0
MaXiDRoM_90
11 / 11 / 1
Регистрация: 21.03.2010
Сообщений: 47
09.06.2011, 21:42 #11
рiece something, код представленный выше выдает всё как надо,когда b не из списка,пишет "Решений нет,z=0;
0
рiece something
1 / 1 / 0
Регистрация: 10.02.2011
Сообщений: 59
09.06.2011, 21:45  [ТС] #12
MaXiDRoM_90, не совсем точно. при других значениях не показывает "Решений нет", а приравнивает z к введенному числу.

Добавлено через 1 минуту
а нет. все верно. моя ошибка

Добавлено через 1 минуту
а можно сроасить, как так получилось и без else?
0
MaXiDRoM_90
11 / 11 / 1
Регистрация: 21.03.2010
Сообщений: 47
09.06.2011, 21:47 #13
рiece something,
C++
1
if(b==6||b>8)
0
рiece something
1 / 1 / 0
Регистрация: 10.02.2011
Сообщений: 59
09.06.2011, 21:49  [ТС] #14
MaXiDRoM_90, уже вижу. а как же 7?
0
MaXiDRoM_90
11 / 11 / 1
Регистрация: 21.03.2010
Сообщений: 47
09.06.2011, 21:50 #15
Можно сделать конечно, чтобы про z в конце вообще ничего не писало,тогда надо последний cout в if пихнуть

Добавлено через 1 минуту
рiece something, if(b>5 && b!=8) впишите тогда
0
09.06.2011, 21:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.06.2011, 21:50
Привет! Вот еще темы с ответами:

Программа по работе с файлом работает некорректно - C++
Помогите найти где ошибка,программа работает со строками из файла, компилятор пишет error C2039: 'clear' : is not a member of...

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

Программа работает некорректно, в результате выводятся заданные изначально значения - C++
//#include &quot;stdafx.h&quot; #include &quot;stdio.h&quot; #include &quot;cstdio&quot; #include &quot;math.h&quot; #include &quot;stdlib.h&quot; #define N 5 int main() { ...

Некорректно работает - C++
Здравствуйте помогите пож-та с задачкой: Сформировать вещественный массив X1(N), N≤20, элементами которого являются случайные числа из...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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