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

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

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

Циклы!где-то ошибка! - C++

30.09.2009, 21:56. Просмотров 702. Ответов 10
Метки нет (Все метки)

Здравствуйте!Написала прогу по задачи,она считает,но не правильно!помогите найти ошибку....задание кинула во вложения

вот программа:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <math.h>
#include <iostream.h>
    int main()
{ 
    double x,y,z;
    cout <<"\n vvedite summy";
    cin >>x;
        if (x<=100) z=0;
        if (x<=300 && x>100) z=x*0.02;
        if (x>300 && x<=500) z=x*0.05;
        if (x>500 && x<=1000) z=x*0.08;
        else z=x*0.1;
        y=x-z;
    cout<<"\n y="<<y;
return 0;
    }
за ранее огромное спасибо за внимание!
Миниатюры
Циклы!где-то ошибка!  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.09.2009, 21:56     Циклы!где-то ошибка!
Посмотрите здесь:

C++ Где ошибка ?
C++ Где ошибка?
где ошибка? C++
Где ошибка? C++
Циклы с выключателем и ошибка "ссылка на неразрешенный внешний символ" C++
Где ошибка? C++
Где ошибка? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
2786 / 1372 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
30.09.2009, 22:05     Циклы!где-то ошибка! #2
вместо
Цитата Сообщение от Silva Посмотреть сообщение
else z=x*0.1;
пишешь:
C++
1
if (x>1000) z=x*0.1;
а то в твоем случае получается, что условие else - будет выполнятся всегда (когда товар не между 500 и 1000), тем самым сбивая скиду для других товаров.
Gnusmus
1 / 1 / 0
Регистрация: 21.09.2009
Сообщений: 25
30.09.2009, 22:07     Циклы!где-то ошибка! #3
А что она должна делать???
Silva
0 / 0 / 0
Регистрация: 30.09.2009
Сообщений: 27
30.09.2009, 22:09  [ТС]     Циклы!где-то ошибка! #4
Спасибо огромное Вам!!Работает)
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
30.09.2009, 22:11     Циклы!где-то ошибка! #5
Не успел
Silva
0 / 0 / 0
Регистрация: 30.09.2009
Сообщений: 27
30.09.2009, 22:13  [ТС]     Циклы!где-то ошибка! #6
спасибо
Welemir
3 / 3 / 0
Регистрация: 26.09.2009
Сообщений: 104
01.10.2009, 00:28     Циклы!где-то ошибка! #7
А у меня без conio.h не работало((.Терь выучил наизусть )))
kravam
быдлокодер
1690 / 877 / 44
Регистрация: 04.06.2008
Сообщений: 5,394
01.10.2009, 02:14     Циклы!где-то ошибка! #8
Странно, что никто не указал... Автор, это нехороший код. Он нерационален. Представь себе, что ты ввела цифру 50. Так вот, прога проверит меньше 50 ста или нет. А потом осуществит ещё 4 АБСОЛЮТНО НЕНУЖНЫЕ проверки. Сама понимаешь, это лишнее время и дурная привычка. И непонятно во что она выльется в дальнейшем.
Надо так.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <math.h> 
#include <iostream> 
using namespace std;         
int main() { 
          double x,y,z;         
  cout <<"\n vvedite summy";         
  cin >>x;                 
  if (x<=100) z=0;                 
  else if (x<=300 && x>100) z=x*0.02;                 
  else if (x>300 && x<=500) z=x*0.05;
  else if (x>500 && x<=1000) z=x*0.08;
  else if (x>1000) z=x*0.1;
  y=x-z;         
  cout<<"\n y="<<y;         
  getchar (); 
  return 0;         
}
Silva
0 / 0 / 0
Регистрация: 30.09.2009
Сообщений: 27
01.10.2009, 16:57  [ТС]     Циклы!где-то ошибка! #9
Да вы правы kravam , а можно использовать оператор break!
чтобы выйти из оператора цикла в нужный момент!
kravam
быдлокодер
1690 / 877 / 44
Регистрация: 04.06.2008
Сообщений: 5,394
01.10.2009, 18:12     Циклы!где-то ошибка! #10
Надо было поправить тебя с самого начала...
Silva, оператором цикла здесь и не пахнет!
break здесь бесполезен, следовательно...

Цикл это что-то циклическое, повторяющееся. Я вот знаю

C++
1
2
3
4
5
6
7
8
9
10
11
12
for (//условие) {
//тело цикла
}
 
while (//условие) {
//тело цикла 
}
 
do {
//тело цикла
}
while (//условие)
Видишь, и эти тела повторяются раз за разом, пока верно условие в скобках.
Цикл: проверка условия- тело цикла- проверка условия (В последнем случае: тело цикла- проверка условия- тело цикла)
break нужен, чтобы досрочно разорвать этот круг.
В твоём же примере операторы выполняются не циклично, а последовательно. Разрывать нечего.

Теперь ставь эксперименты и обращайся к классике. Я закончил.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.10.2009, 18:22     Циклы!где-то ошибка!
Еще ссылки по теме:

где ошибка? C++
C++ Вложенные циклы. Ошибка
C++ Где ошибка?
Ошибка в подсчёте кол-ва одинаковых цифр натурального чила n (циклы) C++
C++ Где ошибка?

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

Или воспользуйтесь поиском по форуму:
Silva
0 / 0 / 0
Регистрация: 30.09.2009
Сообщений: 27
01.10.2009, 18:22  [ТС]     Циклы!где-то ошибка! #11
спасибо огромное за советы...я прислушаюсь)
Yandex
Объявления
01.10.2009, 18:22     Циклы!где-то ошибка!
Ответ Создать тему
Опции темы

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