Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21

MVS и продолжение приключений

19.10.2016, 15:50. Показов 1730. Ответов 38
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
1. По умолчанию, когда выполняешь отладку программы, выскакивает пара окон с предупреждениями. Как их вернуть, если я нажал "не показывать больше". Искал в настройках отладки - ничего не дало. Помню было окно "Программа не запускается, выполнить последнюю рабочую версию".
2. Сразу скажу - новичок, если где тупанул - не кидайте тапками. Если есть решение - пожалуйста объясните, почему так работает, а раньше нет.
Может я не до конца понимаю принцип работы Switch, но по идее, если значение прайс каунтера = 1, должен выполнится кейс = 1, на деле выполняется кейс 1 и ВСЕ кейсы+дефолт после него. 2 - case2-3 + дефолт. Почему так происходит? Тоже самое и про остальные свитчи.
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    bool    i = true;
 
    short   ProductCounter = 4;
    float   PriceCounter;
    short   chocolate = 3;
    short   milk = 1;
    short   coffee = 2;
    float   balance = 6;
 
    float   ChocolatePrice = 2.2;
    float   MilkPrice = 1.3;
    float   CoffeePrice = 0.5;
 
    while (i == true)
    {
        cout << "\nВыберите товар\nВведите номер товара, чтобы добавить его в корзину\n1 - Шоколад\n2 - Молоко\n3 - Кофе\nЦена товаров:\nШоколад - 2 рубля 20 копеек\nМолоко - 1 рубль 30 копеек\nКофе - 50 копеек\n";
        while (ProductCounter > 3)
        {
            cin >> ProductCounter;
 
            switch (ProductCounter) {
            case 1: {PriceCounter = ChocolatePrice;}
            case 2: {PriceCounter = MilkPrice;}
            case 3: {PriceCounter = CoffeePrice;}
            default: {cout << "Такого товара нет.\n";}
        }
        }
 
        cout << "Вы выбрали товар " << ProductCounter << endl << "Его цена - " << PriceCounter << endl;
 
        switch (ProductCounter)
        {
        case 1: {if (chocolate == -1) { cout << "Товар отсутствует\n";  else { if (balance < ChocolatePrice) { cout << "Недостаточно денег"; }  else { chocolate--; cout << "Остаток баланса: " << balance -= ChocolatePrice << " р." << endl; } } }break}
        case 2: {if (milk == -1) { cout << "Товар отсутствует\n";       else { if (balance < MilkPrice) { cout << "Недостаточно денег"; }      else { milk--; cout << "Остаток баланса: " << balance -= MilkPrice << " р." << endl; } } }break}
        case 3: {if (coffee == -1) { cout << "Товар отсутствует\n";     else { if (balance < Coffee) { cout << "Недостаточно денег"; }         else { coffee--; cout << "Остаток баланса: " << balance -= CoffeePrice << " р." << endl; } } }break}
        }
                ProductCounter = 4;
        cout << "Если вы хотите закончить покупку введите 0. Если же вы хотите продолжить, введите 1\n";
        cin >> i;
        while (i>1) 
        {cout << "Неверный номер. Пожалуйста, введите 0 или 1"; cin >> i;}
        cout << "\nОстаток баланса: " << balance << " р." << endl;
    }
        
    cout << "В корзине: Шоколад - " << 3 - chocolate << " Молоко - " << 1 - milk << " Кофе - " << 2 - coffee << endl;
 
    system("pause");
    return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.10.2016, 15:50
Ответы с готовыми решениями:

MVS 10 vs QT
Мне хотелось бы узнать что лучше QT или Microsoft Visual Stidio 2010. Учусь программировать на c++, для будущих проектов мне нужен...

Функции в MVS C++
Народ работаю в MVS C++ 2008 когда создаю форму Windows Form Apllication там можно вставлять кнопочки какие надо встовлять кнопочки чтобы...

Компиляция в mvs
Приветствую всех. У меня установлен Microsoft Visual Studio 2015. Как скомпилировать C++ программу, которая не использует .NET, чтобы...

38
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
19.10.2016, 23:15  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от nd2 Посмотреть сообщение
Насколько помню: Shift + Ctrl + B, и что выдаёт?
Собрать решение.
Не в этом суть. Что мне нужно сделать. Собрать решение и запустить его отладку? Пробовал. Пробовал чистить, пересобирать - всё равно используется код из 1 поста. Пробовал перезапускать MVS/переоткрывать решение - ...
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
19.10.2016, 23:22
Цитата Сообщение от TexnoGod Посмотреть сообщение
Собрать решение.
Это о чём? Вывод компилятора какой, если нажать: Ctrl + Shift + B ?

Добавлено через 45 секунд
Цитата Сообщение от TexnoGod Посмотреть сообщение
всё равно используется код из 1 поста.
Откуда знаешь?

Добавлено через 1 минуту
Скрин студии покажи, чтобы код было видно и вывод компилятора после: Ctrl + Shift + B.
0
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
19.10.2016, 23:32  [ТС]
Цитата Сообщение от nd2 Посмотреть сообщение
Откуда знаешь?
Потому что там выводится "Товара нет" - Дефолт из первого поста, которого сейчас в коде нет.
Миниатюры
MVS и продолжение приключений  
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
19.10.2016, 23:43
Сделай скрин, чтобы этот кусок кода был виден:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 while (i == true)
    {
        cout << "\nВыберите товар\nВведите номер товара, чтобы добавить его в корзину\n1 - Шоколад\n2 - Молоко\n3 - Кофе\nЦена товаров:\nШоколад - 2 рубля 20 копеек\nМолоко - 1 рубль 30 копеек\nКофе - 50 копеек\n";
        while (ProductCounter > 3)
        {
            cin >> ProductCounter;
 
            switch (ProductCounter) {
            case 1: {PriceCounter = ChocolatePrice;break;}
            case 2: {PriceCounter = MilkPrice;break;}
            case 3: {PriceCounter = CoffeePrice;break;}
 
        }
        }
0
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
19.10.2016, 23:48  [ТС]
123
Миниатюры
MVS и продолжение приключений  
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
20.10.2016, 00:08
Сделай: Пересобрать решение, и покажи скрин с выводом компилятора.
0
Эксперт по математике/физике
 Аватар для SSC
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
20.10.2016, 09:26
Цитата Сообщение от nd2 Посмотреть сообщение
case 1: {PriceCounter = ChocolatePrice;break;}
case 2: {PriceCounter = MilkPrice;break;}
case 3: {PriceCounter = CoffeePrice;break;}
По моему break; надо вытаскивать за фигурную скобку
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
20.10.2016, 12:32
Цитата Сообщение от SSC Посмотреть сообщение
По моему break; надо вытаскивать за фигурную скобку
Фигурные скобки там вообще лишние, но, в данном случае, это ни на что не влияет. SSC, тут уже другая проблема актуальна.
0
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
20.10.2016, 14:16  [ТС]
Цитата Сообщение от nd2 Посмотреть сообщение
Сделай: Пересобрать решение, и покажи скрин с выводом компилятора.
После "пересобрать решение"
Миниатюры
MVS и продолжение приключений  
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
20.10.2016, 14:58
Лучший ответ Сообщение было отмечено TexnoGod как решение

Решение

Самое интересное и не видно... Убери лишние окна, чтобы текст вывода компилятора был полностью виден. Откуда взялся файл Source.cpp ? Сделай скрин, чтобы было видно, в обозревателе решений, какие файлы в проекте, и был виден полный текст вывода компилятора при пересборке.

Добавлено через 28 минут
Хотя, причина и так понятна... Чтобы файл .cpp участвовал в построении, он должен быть добавлен в проект (т.е., присутствовать в обозревателе решений), а не просто открыт в студии.
0
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
20.10.2016, 15:53  [ТС]
Цитата Сообщение от nd2 Посмотреть сообщение
Хотя, причина и так понятна... Чтобы файл .cpp участвовал в построении, он должен быть добавлен в проект (т.е., присутствовать в обозревателе решений), а не просто открыт в студии.
Это объясняет гораздо больше, только вот не всё.
Не найдя в обозревателе test, решил модифицировать source. В итоге, всё та же проблема.
Если точнее, cout в кейсах программа не видит, не выполняет. Собирал/пересобирал решения - тот же результат.
P.s. программа завершается с ошибкой, потому что я её закрывал вручную.
Миниатюры
MVS и продолжение приключений  
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
20.10.2016, 15:56
Цитата Сообщение от TexnoGod Посмотреть сообщение
В итоге, всё та же проблема.
Та же, это какая из...?
0
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
20.10.2016, 15:58  [ТС]
Редактировал сообщение. F5
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
20.10.2016, 16:01
Цитата Сообщение от TexnoGod Посмотреть сообщение
Если точнее, cout в кейсах программа не видит, не выполняет.
Код выложи, который пробуешь.
0
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
20.10.2016, 17:00  [ТС]
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
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
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    bool     i = true;
 
    int      ProductCounter = 4;
    double   PriceCounter;
    int      chocolate = 3;
    int      milk = 1;
    int      coffee = 2;
    double   balance = 6;
 
    double  ChocolatePrice = 2.2;
    double  MilkPrice = 1.3;
    double  CoffeePrice = 0.5;
 
    while (i == true)
    {
        cout << "\nВыберите товар\nВведите номер товара, чтобы добавить его в корзину\n1 - Шоколад\n2 - Молоко\n3 - Кофе\nЦена товаров:\nШоколад - 2 рубля 20 копеек\nМолоко - 1 рубль 30 копеек\nКофе - 50 копеек\n";
                while (ProductCounter > 3)
                {
                    cin >> ProductCounter;
 
                    switch (ProductCounter) {
                    case 1: {PriceCounter = ChocolatePrice;
                        cout << "case 1" << endl;
                        break;}
                    case 2: {PriceCounter = MilkPrice;
                        cout << "case 2" << endl;
                        break;}
                    case 3: {PriceCounter = CoffeePrice;
                        cout << "case 3" << endl;}
                    default: {cout << "Такого товара нет.\n";break;}
 
 
                }
                }
 
                cout << "Вы выбрали товар " << ProductCounter << endl << "Его цена - " << PriceCounter << endl;
 
                switch (ProductCounter)
                {
                case 1: {if (chocolate == -1) {cout << "Товар отсутствует\n";} else {chocolate--; cout << "Остаток баланса: " << balance - ChocolatePrice << endl;}}
                case 2: {if (milk == -1) {cout << "Товар отсутствует\n";} else {milk--; cout << "Остаток баланса: " << balance - MilkPrice << endl;}}
                case 3: {if (coffee == -1) {cout << "Товар отсутствует\n";} else {coffee--; cout << "Остаток баланса: " << balance - CoffeePrice << endl;}}
                }
                ProductCounter = 5;
        cout << "Если вы хотите закончить покупку введите 0. Если же вы хотите продолжить, введите 1\n";
        cin >> i;
        while (i>1) 
        {cout << "Неверный номер. Пожалуйста, введите 0 или 1"; cin >> i;}
        cout << "\nОстаток баланса: " << balance - PriceCounter << endl;
    }
        
    cout << "В корзине: Шоколад - " << 3 - chocolate << " Молоко - " << 1 - milk << " Кофе - " << 2 - coffee << endl;
 
    system("pause");
    return 0;
}
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
20.10.2016, 17:18
Цитата Сообщение от TexnoGod Посмотреть сообщение
Если точнее, cout в кейсах программа не видит, не выполняет.
...
Миниатюры
MVS и продолжение приключений  
0
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
20.10.2016, 17:21  [ТС]
Ну так. Программа не выполняет сout << "case". +, опять же, должен работать только 1 кейс, а не все 3
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,430
20.10.2016, 17:41
Лучший ответ Сообщение было отмечено TexnoGod как решение

Решение

Цитата Сообщение от TexnoGod Посмотреть сообщение
Ну так. Программа не выполняет сout << "case". +, опять же, должен работать только 1 кейс, а не все 3
Что: "Ну так"? Глаза разуй, на скрине виден вывод: "case 1". Где ты там увидел вывод сразу трёх case? Сказка про белого бычка... От темы отписался. Тупи дальше сам.
1
0 / 0 / 0
Регистрация: 19.10.2016
Сообщений: 21
20.10.2016, 17:47  [ТС]
Цитата Сообщение от nd2 Посмотреть сообщение
Что: "Ну так"? Глаза разуй, на скрине виден вывод: "case 1". Где ты там увидел вывод сразу трёх case?
А, действительно. Я смотрю не туда. Спасибо больше. Если где тупил(вернее, где тупил) - извиняюсь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.10.2016, 17:47

MVS 2010
Пишу на Microsoft visual studio 2010 на с++. Проблема такая: После сборки программы и сохранения компонентов беру ексешник в папочке...

Что с MVS)
Вот код #include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main() { int a=5; int b; }

MVS TextBox
Возник вопрос при работе с MVisualStudio. В Delphi есть компонент Memo , а в C# я понял что можно использовать textBox с multilines...

Цикл For. MVS 15.2
Только учусь и не до конца понимаю почему в цикле получился ответ 56. По моему i должно равняться 46, но если смотреть пошагово, то сразу...

C++/CLI (MVS)
Нужны справочные материалы, книги, ну хоть что-нибудь. Через поисковики мало чё нашёл, в основном посты на форуме. В электронной...


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

Или воспользуйтесь поиском по форуму:
39
Ответ Создать тему
Новые блоги и статьи
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется. Ну как вам?
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания источниках данных и элементов формы(текстовые поля и метки), опирается все это на технологию событий и мета. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru