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

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

Войти
Регистрация
Восстановить пароль
 
pashkent83
Сообщений: n/a
#1

цикл case. Подсчет каллорий - C++

20.11.2012, 15:33. Просмотров 360. Ответов 6
Метки нет (Все метки)

Здравствуйте!! Я чего то не пойму...почему неправильно мне сумму выводит???
Assembler
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <iostream>
 
 using namespace std;
 
 
 
 int main()
 
{
 
     int a, k, Sum;
 
 
 
 
 
  Sum = 0; k = 0;
 
 
 
 
 
 
 
     while (a !=0)
 
     {
 
          cout << "VVedite product"  << endl;
 
          cout << "Apple - 1"  << endl;
 
          cout << "Cookies - 2"  << endl;
 
          cout << "Chokolate - 3"  << endl;
 
          cout << "Exit - 0"  << endl;
 
          cin  >> a;
 
 
 
            switch(a)
 
 
 
             {
 
                 case 1:
 
                 cout << "kal =  100" << endl;
 
                 k = 100;
 
               break;
 
 
 
               case 2:
 
                 cout << "kal =  300" << endl;
 
                 k = 300;
 
               break;
 
 
 
               case 3:
 
                 cout << "kal =  500" << endl;
 
                 k = 500;
 
               break;
 
 
 
               default:
 
               cout << "ERROR" << endl;
 
               break;
 
             }
 
 
 
                  Sum = Sum + k;
 
 
 
     }
 
 
 
 
 
      cout << "Summa kallori = " << Sum << endl;
 
 
 
        return 0;
 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2012, 15:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос цикл case. Подсчет каллорий (C++):

Цикл в Case - C++
Добрый день! Проблема состоит в том, что не выполняется цикл, то есть при выборе &quot;1-сложение,2-вычитание...&quot; выполняется только одно...

Подсчет произведения всех элементов массива (цикл и рекурсия) - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cmath&gt; using namespace std; unsigned long long Arr (unsigned int n) {if (n==0) ...

в case 7 - нужно сделать поиск по номеру группы, а в case 6 сортировку по имени - C++
Помогите пожалуйста: в case 7 - нужно сделать поиск по номеру группы, а в case 6 сортировку по имени #include &lt;iostream&gt; #include...

При выборе case 1 всегда черный экран? как правильно указать путь в case - C++
Доброго времени суток) проблема с компиляций когда при компилирование появляется экран выбора. Нажимаю 1 и все черный экран) пожалуйста...

switch-case, как писать в самом case - C++
Такс дело вот в чём,прога работает всё хорошо,вот только мне не нравится как записваю страны в кейсе,можно ли каким-нибудь образом писать в...

Оптимальная конструкция switch-case-while / while-switch-case - C++
Имеется конструкция типа: switch() { case 1: while() { ... }

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
LineStown
66 / 66 / 3
Регистрация: 04.08.2010
Сообщений: 420
Завершенные тесты: 1
20.11.2012, 15:42 #2
После суммирования
C++
1
Sum = Sum + k;
поставить
C++
1
k=0;
Добавлено через 51 секунду
а еще лучше вместо
C++
1
k=500;
писать
C++
1
sum+=500;
и убрать ненужную переменную k
pashkent83
Сообщений: n/a
20.11.2012, 16:05 #3
Спасибо, большое! Заработало! А почему он на к = 0, которое в начале стоит не брал??

Добавлено через 5 минут
Спасибо Большое! Заработало! А почему он не обнулял в начале программы, когда к=0??
margarin
36 / 36 / 0
Регистрация: 02.06.2012
Сообщений: 332
20.11.2012, 16:11 #4
Цитата Сообщение от pashkent83 Посмотреть сообщение
А почему он не обнулял в начале программы, когда к=0??
попробуйте так:
C++
1
2
3
int a, k, Sum;
Sum = 0;
k = 0;
А по мне, лучше инициализировать во время объявления:
C++
1
int a, k=0, Sum=0;
Или я вопрос не понял?
WhiteP
606 / 204 / 23
Регистрация: 20.11.2012
Сообщений: 426
20.11.2012, 16:14 #5
Цитата Сообщение от pashkent83 Посмотреть сообщение
А почему он не обнулял в начале программы, когда к=0??
Значение k обнулялось, но вне тела цикла, а потому только единственный раз в самом начале.

И значение переменной a нужно сделать равным чему-либо, т.к. в данном виде цикл выполняется по счастливой случайности.

margarin,
Если сделать int a=0, k=0, Sum=0, то цикл не выполнится ни разу
LineStown
66 / 66 / 3
Регистрация: 04.08.2010
Сообщений: 420
Завершенные тесты: 1
20.11.2012, 16:15 #6
Цитата Сообщение от pashkent83 Посмотреть сообщение
Спасибо, большое! Заработало! А почему он на к = 0, которое в начале стоит не брал??

Добавлено через 5 минут
Спасибо Большое! Заработало! А почему он не обнулял в начале программы, когда к=0??
потому что k обнулялось 1 раз, а нужно каждую итерацию цикла.
margarin
20.11.2012, 16:25     цикл case. Подсчет каллорий
  #7

Не по теме:

Цитата Сообщение от WhiteP Посмотреть сообщение
Если сделать int a=0, k=0, Sum=0, то цикл не выполнится ни разу
да я на автомате написал, потом исправил)

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2012, 16:25
Привет! Вот еще темы с ответами:

Switch case внутри switch case - C++
Привет всем! Нужна помощь. Пишу калькулятор с консольным меню. Так вот, используется цикл while, внутри которого у меня switch...

Почему цикл на при 1 уходит в бесконечный цикл? - C++
#define _CRT_SECURE_NO_WARNINGS #include &lt;iostream&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; int main() { int x=0, y=0,...

Цикл: цикл for вообще никак не воспринимается транслятором - C++
Пишу программу, которая производит различные действия с одномерным массивом. Возникла следующая проблема: цикл for вообще никак не...

Цикл for/Цикл while Помогите срочно пожалуйста... - C++
1.Вычислить и вывести на экран в виде таблицы значения функции F от x1 до x2 с шагом dx. где a, b и c - действительные числа. 2.Цикл...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.11.2012, 16:25
Ответ Создать тему
Опции темы

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