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

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

Войти
Регистрация
Восстановить пароль
 
Japanese
9 / 9 / 1
Регистрация: 14.11.2010
Сообщений: 128
#1

cout выводит сообщение один раз..больше не хочет.... - C++

20.12.2010, 20:05. Просмотров 588. Ответов 4
Метки нет (Все метки)

13 и 14 строки выполняются только один раз при запуске программы. Почему? Все вроде правильно сделал
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
65
66
67
68
69
70
71
72
73
74
#include "stdafx.h"
#include <conio.h>
#include <iostream>
using namespace std;
 
int check (int exit, int number);               // в этой функции выполняются почти все действия программы
 
int main()
{
    int exit = 1; 
    int number;                     // число вводимое пользователем
    while (exit == 1)               // если exit == 0 оператор завершит цикл и программа закроется
    {
        cout << "Введите число от 1 до 100: " << endl;
        cin >> number;
        exit = check(exit, number); 
        
    }
    getch();
    return 0;
}
 
int check (int Exit, int number)
{
    int choice;
    int result;
    
    while (number <=0 || number >=101)      // данный цикл выводит сообщение об ошибке, при неправильном вводе, и требует повторный ввод.
    {
        cout << "Некорректный ввод!" << endl;
        cout << "Введите число от 1 до 100: " << endl;
        cin >> number;
    }
    while (number >=1 && number <=100)      // данный цикл выводит меню в котором можно выбрать определенное действие над введеным, пользователем, числом.
    {
            cout << "Вы ввели число " << number << ". Какое действие провести над ним?\n" << endl;
            cout << "(1) Умножить на 2.\n(2) Разделить на 2.\n(3) Прибавить к 2.\n(4) Вычесть 2.\n(5) Выход из программы.\n" << endl;
            cin >> choice;
        while (choice <=0 || choice >=6)        // если пользователь ввел неверную цифру, программа сообщит об ошибке.
        {
            cout << "Некорректный ввод! Повторите попытку." << endl;
            cin >> choice;
        }
 
    switch (choice)
    {
    case (1):
        result = number * 2;
        cout << number << " * 2 = " << result << endl;
        cout << endl;
        break;
    case (2):
        result = number / 2;
        cout << number << " / 2 = " << result << endl;
        cout << endl;
        break;
    case (3):
        result = number + 2;
        cout << number << " + 2 = " << result << endl;
        cout << endl;
        break;
    case (4):
        result = number - 2;
        cout << number << " - 2 = " << result << endl;
        cout << endl;
        break;
    case (5):
        cout << "Нажмите любую клавишу для выхода из программы..." << endl;
        Exit--;
        return Exit;
    }
    }
    
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2010, 20:05     cout выводит сообщение один раз..больше не хочет....
Посмотрите здесь:

Лишний раз выводит сообщение - C++
Добрый вечер. Уже час бьюсь над следующей проблемой. Почему выводится сообщение: &quot;Oshibka! Poprobuyte snova: Oshibka! Poprobuyte...

Cout не выводит строку. - C++
Здравствуйте! Есть класс #include &quot;string.h&quot; class myClass { public: string GetText()const{return itsText;} void...

cout Выводит не те символы - C++
Доброго времени суток. Есть такой код: #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;cstring&gt; #include...

Cout не выводит числа - C++
просто зависает если попытаться вывести любое число(численную переменную), но символы и строки выводит. использую кодеблоки, компилятор...

Не выводит последний COUT(20 12 2016) - C++
#include &lt;math.h&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;stdlib.h&gt; #include...

Cout не выводит информацию на экран - C++
Всем доброго дня !!! Столкнулся с одной непонятной мне проблемой. На экран cout не выводит сообщение , зато printf работает как...

Выводит на экран сразу два cout - C++
На экран выводит сразу две строки. Как решить эту проблему? #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;string.h&gt; using...

Cout выводит только первые 3-4 символа - C++
Код записывает несколько слов в два двоичных файла, потом записывает их из файла в два указателя и должен выводить их на экран, но выводит...

Cout выводит значения в обратной последовательности - C++
Подскажите почему код : #include &lt;iostream&gt; #include &lt;cstdlib&gt; using namespace std; int sqore=0; int func () { int a=sqore;...

Вместо значений массива в cout выводит адреса - C++
Помогите пожалуйста! Вместо значений массива в cout выводит адреса #include&lt;iostream&gt; #include&lt;conio.h&gt; #include &lt;iomanip&gt; ...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
20.12.2010, 20:45     cout выводит сообщение один раз..больше не хочет.... #2
case (1):
пишется так
C++
1
case 1:
ну и так далее, первое что бросилось в глаза

Добавлено через 3 минуты
так же ваша функция должна в любом случае что то возвращать, при выборе 5 она возвращает false, а в остальных случая она должна возращать true, перед концом сделайте return true;
В вашем коде строка появляется один раз потому что метод ничего не возвращает и в итоге exit уже не будет равна 1, а будет неопределенное значение
Japanese
9 / 9 / 1
Регистрация: 14.11.2010
Сообщений: 128
20.12.2010, 20:52  [ТС]     cout выводит сообщение один раз..больше не хочет.... #3
Цитата Сообщение от Crudelis Посмотреть сообщение
case (1):
пишется так
C++
1
case 1:
ну и так далее, первое что бросилось в глаза
а разве есть разница?
Crudelis
Шаровик затейник
672 / 414 / 13
Регистрация: 06.05.2010
Сообщений: 1,109
20.12.2010, 20:59     cout выводит сообщение один раз..больше не хочет.... #4
Japanese, на счет разницы не в курсе, ну а с другой стороны зачем лишние символы в коде, если можно без них
МаксимМВ
C/C++
90 / 90 / 5
Регистрация: 01.07.2010
Сообщений: 281
20.12.2010, 21:00     cout выводит сообщение один раз..больше не хочет.... #5
Возвратите в функции check значение. А Лучше сделайте тип bool, она ведь определяет, выходить ли.
Yandex
Объявления
20.12.2010, 21:00     cout выводит сообщение один раз..больше не хочет....
Ответ Создать тему
Опции темы

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