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

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

Войти
Регистрация
Восстановить пароль
 
Егорка47
7 / 6 / 1
Регистрация: 26.10.2010
Сообщений: 249
#1

while (истинное условие). не работает! - C++

26.12.2010, 21:41. Просмотров 623. Ответов 10
Метки нет (Все метки)

вот пишу код к очередному примеру из книги

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
using namespace std;
 
int main(){
int x, y, z;
while ( x != -1 || y != -1){
cout << "vvedite chislo rabotnikov" << endl;
cin >> x;
cout << "vvedite stavky rabotnika" << endl;
cin >> y;
if ( x > 40 ){
z = (40 * y) + ((x - 40) * y * 3 / 2 );
cout << " zarplata etogo sotrudnika =" << z << endl;
}
else
cout << "zarplata etogo sotrudnika =" << x * y << endl;
 
}
return 0;
 
}

и почему то цикл не выходит пока не наберу для х и для у значения "-1", хотя специально написал или х или у = -1.
что не так сделал?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2010, 21:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос while (истинное условие). не работает! (C++):

Не работает условие - C++
Крыша едет не могу понять в чем проблема #include &lt;iostream&gt; #include &lt;string&gt; #include &lt;math.h&gt; #include &lt;time.h&gt; #include...

Не работает условие - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; #include &lt;clocale&gt; #include &lt;random&gt; #include &lt;ctime&gt; #define l 4 ...

Не работает условие - C++
При вводе данных для проверки работы программы обнаружил что второе условие не работает то есть программа считает функцию только по 1му...

Не работает условие - C++
void IsInclude(Shape* s1, Shape* s2) // включение объектов { s1-&gt;GetM(); s2-&gt;GetM(); if ( s1-&gt;minx&lt; s2-&gt;minx &amp;&amp; s1-&gt;miny&lt;...

Не работает условие - C++
myFile.h #pragma once #include &lt;string&gt; using namespace std; void read_txt (string path); read_txt.cpp #include...

Почему не работает условие в While? - C++
#include &lt;iostream&gt; using namespace std; void main () { int n=12, NS = 2, answer, answer1, answerFinish, a,b; while (n&lt;=1) {...

10
Merlin666
97 / 97 / 10
Регистрация: 26.12.2010
Сообщений: 220
26.12.2010, 21:44 #2
возьми в скобочки
0
MegaAce
330 / 304 / 65
Регистрация: 14.02.2010
Сообщений: 662
26.12.2010, 21:48 #3
Цитата Сообщение от Егорка47 Посмотреть сообщение
while ( x != -1 || y != -1)
Замени на
C++
1
while ((x != -1) && (y != -1))
и будет тебе добро!
0
Егорка47
7 / 6 / 1
Регистрация: 26.10.2010
Сообщений: 249
26.12.2010, 21:49  [ТС] #4
C++
1
while ( ( x != -1 ) || ( y != -1 ) )
так?
не получается
0
MegaAce
330 / 304 / 65
Регистрация: 14.02.2010
Сообщений: 662
26.12.2010, 21:51 #5
((x != -1) && (y != -1))
0
Merlin666
97 / 97 / 10
Регистрация: 26.12.2010
Сообщений: 220
26.12.2010, 21:51 #6
(x!=-1)&&(y!=-1) надо так, потому что из дисмата 0||1=1,0&&1=0=>выходит только по &&, либо 0||0=0
0
Егорка47
7 / 6 / 1
Регистрация: 26.10.2010
Сообщений: 249
26.12.2010, 21:51  [ТС] #7
Цитата Сообщение от MegaAce Посмотреть сообщение
Замени на
C++
1
while ((x != -1) && (y != -1))
и будет тебе добро!
ну так это условие будет истинно если оба случае истинны,а мне нужно что бы при вводе одного значения х или у, цикл завершался!
по моему надо использовать "||". разве нет?
0
Merlin666
97 / 97 / 10
Регистрация: 26.12.2010
Сообщений: 220
26.12.2010, 21:52 #8
не то сначала ответил, извиняй) все логично (x!=-1)&&(y!=-1). Объяснение выше)
0
MegaAce
330 / 304 / 65
Регистрация: 14.02.2010
Сообщений: 662
26.12.2010, 21:53 #9
Цитата Сообщение от Егорка47 Посмотреть сообщение
по моему надо использовать "||". разве нет?
Учите мат.логику!
0
Merlin666
97 / 97 / 10
Регистрация: 26.12.2010
Сообщений: 220
26.12.2010, 21:53 #10
ну смотри. Истина и ложь=ложь, а истина или ложь=истина. Вот и не выходит из цикла. Понял?
0
Егорка47
7 / 6 / 1
Регистрация: 26.10.2010
Сообщений: 249
26.12.2010, 21:55  [ТС] #11
так,стоп.. цикл while работает пока условие в скобках истинно,как только оно становиться ложно - выход,сл -но должен быть ноль при вводе одного значения х или у..значит нужно "&&". спасибо,понял!)
0
26.12.2010, 21:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2010, 21:55
Привет! Вот еще темы с ответами:

Не работает условие с указателем - C++
#include &lt;iostream&gt;; #include &lt;windows.h&gt;; using namespace std; int main() { SetConsoleOutputCP(1251); SetConsoleCP(1251);...

Не работает условие цикла - C++
Здравствуйте! Есть программа: #include &lt;iostream&gt; using namespace std; main () { setlocale (0,&quot;&quot;); float a, b, d; ...

Условие работает неправильно - C++
string getNumberEmployeeEtype(string x, int temp){ /*первым аргументом является строка должности сотрудника, вторым - номер сотрудника*/ ...

Не корректно работает условие While - C++
Напечатать значения функции y=ln(x+1/x),где значения x вводятся с клавиатуры. При вводе числа, не входящего в область определения функции,...


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

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

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