Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
AHIME
0 / 0 / 0
Регистрация: 07.12.2015
Сообщений: 37
1

При вводе пользователем числа от 0 до 9, вывести на экран название программы (использовать оператор goto)

10.01.2016, 07:18. Просмотров 1033. Ответов 9
Метки нет (Все метки)

Программу по заданию я написал
Написать программу для выполнения следующих действий. При вводе цифры от 0 до 9 будет выводиться ее название. (!)Использовать оператор go to.
теперь нужно, чтобы эти числа в итоге сложились
вот программа:
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
#include <iostream>
#include <iostream>
#include <stdlib.h>
using namespace std;
 
 
const char *nums[] = { "ноль", "один", "два",   "три", "четыре",
"пять", "шесть", "семь", "восемь", "девять" };
 
const int COUNT = 10; // Столько раз прога будет просить число.
 
int main()
{
    setlocale(LC_ALL, "Rus");
    char x;
    int i = 0;
BEGIN:
    if (i < COUNT)
    {
        {
            cout << "\n[" << i << " of " << COUNT << "] Введите число : ";
            cin.get(x);
            while (cin.get() != '\n'); // Удаляем остатки ввода.
 
            if (x == 'q')
                goto END;
            else if (x < '0' || '9' < x)
            {
                system("cls");
                cout << "\nЧисло не верно, введите снова.\n";
                goto BEGIN;
            };
            system("cls");
 
            cout << "\n[" << (i + 1) << " of " << COUNT << "] " << (x - '0') << " is \'"
                << nums[x - '0'] << "\'\n";
        };
    }
    else
        goto END;
 
    i++;
    goto BEGIN;
END:
    cout << "\nПока_!\n\n";
 
    system("pause");
 
    return 0;
};
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2016, 07:18
Ответы с готовыми решениями:

Программа для выполнения:При вводе цифры от 0 до 9 будет выводиться ее название. Использовать оператор break
Помогите пожалуйста заменить в программе оператор goto на оператор break...

Использовать оператор перехода GOTO в приведенном коде
Мне нужен оператор перехода GOTO в программе. Если выводится сообщение &quot;Данное...

Оператор if (для чисел от нуля до пяти программа выводит на экран тексотовое название числа)
Составить программу, которая принимает числа с клавиатуры. Ддя чисел от нуля...

При вводе порядкового номера месяца вывести название этого месяца
Написать программу, которая при вводе порядкового номера месяца (1, 2, 3 и тд)...

Вывести на экран сначала числа < 0, затем числа > 0 в порядке их ввода. Использовать очередь
Ввести n целых чисел. Вывести на экран сначала числа &lt;0, затем числа &gt;0 в...

9
andreyananas
22 / 22 / 11
Регистрация: 15.10.2013
Сообщений: 862
Завершенные тесты: 2
10.01.2016, 09:09 2
Оператор goto нужно использовать по заданию? Или это ты так решил, что без него никак?)
0
Martein
686 / 95 / 17
Регистрация: 22.06.2014
Сообщений: 204
10.01.2016, 09:12 3
Ровно таким же способом, как вы создавали переменную для накопления и подсчёта количества итераций, создайте переменную для подсчёта суммы и на каждой итерации суммируйте в переменную введённое число.
1
andreyananas
22 / 22 / 11
Регистрация: 15.10.2013
Сообщений: 862
Завершенные тесты: 2
10.01.2016, 09:22 4
Вот так?
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
#include <iostream>
#include <iostream>
#include <stdlib.h>
using namespace std;
 
 
const char *nums[] = { "ноль", "один", "два",   "три", "четыре",
"пять", "шесть", "семь", "восемь", "девять" };
 
const int COUNT = 10; // Столько раз прога будет просить число.
 
int main()
{
    setlocale(LC_ALL, "Rus");
    char x;
    int i = 0;
    int iSum = 0;
BEGIN:
    if (i < COUNT)
    {
        {
            cout << "\n[" << i << " of " << COUNT << "] Введите число : ";
            cin.get(x);
            while (cin.get() != '\n'); // Удаляем остатки ввода.
 
            if (x == 'q')
                goto END;
            else if (x < '0' || '9' < x)
            {
                system("cls");
                cout << "\nЧисло не верно, введите снова.\n";
                goto BEGIN;
            };
            system("cls");
 
            cout << "\n[" << (i + 1) << " of " << COUNT << "] " << (x - '0') << " is \'"
                << nums[x - '0'] << "\'\n";
            iSum = iSum + x;
        };
    }
    else
        goto END;
 
    i++;
    goto BEGIN;
END:
    cout << "\nСума: " << iSum;
    cout << "\nПока_!\n\n";
 
    system("pause");
 
    return 0;
};
0
AHIME
0 / 0 / 0
Регистрация: 07.12.2015
Сообщений: 37
10.01.2016, 10:27  [ТС] 5
Что то такое, но у вас выходят непотяные числа, типо при сложении десяти единиц выходит 490
При вводе пользователем числа от 0 до 9, вывести на экран название программы (использовать оператор goto)
0
nord_v
329 / 177 / 80
Регистрация: 22.08.2013
Сообщений: 724
10.01.2016, 10:41 6
Цитата Сообщение от AHIME Посмотреть сообщение
при сложении десяти единиц выходит 490
Цитата Сообщение от andreyananas Посмотреть сообщение
C++
1
iSum = iSum + x;
C++
1
iSum = iSum + (x - '0');
0
andreyananas
22 / 22 / 11
Регистрация: 15.10.2013
Сообщений: 862
Завершенные тесты: 2
10.01.2016, 10:45 7
Лучший ответ Сообщение было отмечено AHIME как решение

Решение

Вот, не обратил внимание, что х - char
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
#include <iostream>
#include <stdlib.h>
using namespace std;
 
 
const char *nums[] = { "ноль", "один", "два",   "три", "четыре",
"пять", "шесть", "семь", "восемь", "девять" };
 
const int COUNT = 10; // Столько раз прога будет просить число.
 
int main()
{
    setlocale(LC_ALL, "Rus");
    char x;
    int i = 0;
    int iSum = 0;
BEGIN:
    if (i < COUNT)
    {
        {
            cout << "\n[" << i << " of " << COUNT << "] Введите число : ";
            cin.get(x);
            while (cin.get() != '\n'); // Удаляем остатки ввода.
 
            if (x == 'q')
                goto END;
            else if (x < '0' || '9' < x)
            {
                system("cls");
                cout << "\nЧисло не верно, введите снова.\n";
                goto BEGIN;
            };
            system("cls");
 
            cout << "\n[" << (i + 1) << " of " << COUNT << "] " << (x - '0') << " is \'"
                << nums[x - '0'] << "\'\n";
 
            iSum = iSum + atoi(&x);
        };
    }
    else
        goto END;
 
    i++;
    goto BEGIN;
END:
    cout << "\nСума: " << iSum;
    cout << "\nПока_!\n\n";
 
    system("pause");
 
    return 0;
};
2
AHIME
0 / 0 / 0
Регистрация: 07.12.2015
Сообщений: 37
10.01.2016, 11:05  [ТС] 8
Спасибо огромное и скажите, что делает atoi ?
0
andreyananas
22 / 22 / 11
Регистрация: 15.10.2013
Сообщений: 862
Завершенные тесты: 2
10.01.2016, 11:21 9
Цитата Сообщение от AHIME Посмотреть сообщение
Спасибо огромное и скажите, что делает atoi ?
Переводит строку char в число int

Добавлено через 5 минут
Строку с функцией atoi() можно и на этот код заменить, если он более понятен. По сути это тоже самое.
Цитата Сообщение от nord_v Посмотреть сообщение
C++
1
iSum = iSum + (x - '0');
0
nord_v
329 / 177 / 80
Регистрация: 22.08.2013
Сообщений: 724
10.01.2016, 11:23 10
Цитата Сообщение от andreyananas Посмотреть сообщение
По сути это тоже самое.
Для цифр.
0
10.01.2016, 11:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.01.2016, 11:23

Некорректная работа программы,при вводе отрицательного числа
Здравствуйте.Есть некий // { int c; char array; ...

При вводе номера числа фиббоначи на экран вывести его знаечие
Помогите кто... Необходимо что бы при вводе номера чиста фиббоначи на экран...

Задаются с клавиатуры натуральные числа Н,при вводе н=0 выход из программы.найти среднее арифметическое чисел и выдать их на экран решением
Помогите пожалуйста. Задаются с клавиатуры натуральные числа Н,при вводе н=0...


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

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

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