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

Условный оператор if - C++

Восстановить пароль Регистрация
 
nnn52
Сообщений: n/a
09.08.2010, 13:50     Условный оператор if #1
Добрый день! есть следующий код программы на C++:
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
#include<cmath>
#include<iostream>
int main(){
     l: 
           double a;
     std::cout << "Enter an integer: \n" ;
     std::cin>> a;
     double b=1;
     double k = floor(sqrt(a));
     int i = 0;
     while(i<=(k-2))
     {
     b=fmod(a,k-i)*b;
     i=i+1;
     }
     std::cout<< "b" << b << "\n";
     if(b=0)
            std::cout << "Result = 0 \n" ;
     else
     std::cout << "Result = 1 \n" ;
     
goto l;
     return 0;    
     }
почему программа пишет на экране "Result = 1" даже если b=0?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2010, 13:50     Условный оператор if
Посмотрите здесь:

условный оператор IF C++
C++ C (условный оператор)
C++ Условный оператор if else
C++ Условный оператор
УСЛОВНЫЙ ОПЕРАТОР (IF) C++
C++ Условный оператор
Условный оператор C++
Условный оператор IF C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Евгений М.
1033 / 974 / 53
Регистрация: 28.02.2010
Сообщений: 2,817
Завершенные тесты: 2
09.08.2010, 13:59     Условный оператор if #2
Это присвоение:
C
1
b=0
Это сравнение:
C
1
b==0
Исправьте в 17 строке.
M128K145
Эксперт C++
 Аватар для M128K145
8272 / 3491 / 142
Регистрация: 03.07.2009
Сообщений: 10,707
09.08.2010, 14:28     Условный оператор if #3
nnn52, в данном случае использование goto является неверным применением этого оператора. Здесь лучше обойтись бесконечным циклом.
Как его реализовывать - решать вам. Заодно повторите работу циклов for, while и do-while

А может и про рекурсию узнаете, но этот вариант будет хуже чем с goto
Yandex
Объявления
09.08.2010, 14:28     Условный оператор if
Ответ Создать тему
Опции темы

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