0 / 0 / 0
Регистрация: 04.04.2021
Сообщений: 29
1

Проверить является ли текст числом в десятичной системе счисления кратным 7

09.04.2021, 20:24. Показов 1004. Ответов 27
Метки с++ (Все метки)

Помогите решить! Предоставляется только текст, состоящий из цифр и букв. Создайте программу, которая проверяет, является ли текст числом в десятичной системе счисления, кратным 7.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2021, 20:24
Ответы с готовыми решениями:

Создайте программу, которая проверяет, является ли текст числом в десятичной системе, кратным 9
Помогите решить! Предоставляется только текст, состоящий из цифр и букв. Создайте программу,...

Проверить является ли заданная строка восьмизначным числом, записанным в десятичной системе счисления
Проверить является ли заданная строка восьмизначным числом, записанным в десятичной системе...

Проверить, является ли введенная с клавиатуры последовательность символов целым числом, записанным в десятичной системе счисления
помогите пожалуйста 1.Составить программу, которая проверяет, является ли введенная с клавиатуры...

Проверить является ли заданная строка шестизначным числом, записанным в десятичной системе счисления без нулей в старших
Проверить является ли заданная строка шестизначным числом, записанным в десятичной системе...

27
Продавец времени
7107 / 3989 / 917
Регистрация: 12.03.2015
Сообщений: 18,751
09.04.2021, 21:49 2
Цитата Сообщение от Balzhan Посмотреть сообщение
Помогите решить!
Признаки делимости на 7.
0
1481 / 1198 / 819
Регистрация: 29.02.2016
Сообщений: 3,579
11.04.2021, 10:55 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
 
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int num;
    cout << "Введите число:" << endl;
    cin >> num;
 
    string str = to_string(num);;
    swap(str[0], str[str.size() - 1]);
    num = stoi(str);
    if (num % 7 == 0)
        cout << "кратно" << endl;
    else
        cout << "не кратно" << endl;
    system("pause");
    return 0;
}
0
Продавец времени
7107 / 3989 / 917
Регистрация: 12.03.2015
Сообщений: 18,751
11.04.2021, 11:00 4
afront, так не пойдёт.
Я не просто так вставил ссылку на статью по расчёту делимости.
0
1481 / 1198 / 819
Регистрация: 29.02.2016
Сообщений: 3,579
11.04.2021, 11:03 5
Verevkin, не нужны здесь признаки делимости, достаточно проверить что остаток от деления равен нулю
0
7415 / 5011 / 2889
Регистрация: 18.12.2017
Сообщений: 15,694
11.04.2021, 11:14 6
afront,
Цитата Сообщение от Balzhan Посмотреть сообщение
Предоставляется только текст, состоящий из цифр и букв
вводится не число, а текст
0
1481 / 1198 / 819
Регистрация: 29.02.2016
Сообщений: 3,579
11.04.2021, 11:16 7
Цитата Сообщение от Yetty Посмотреть сообщение
вводится не число, а текст
затем текст переводится в число
0
Продавец времени
7107 / 3989 / 917
Регистрация: 12.03.2015
Сообщений: 18,751
11.04.2021, 11:18 8
Цитата Сообщение от afront Посмотреть сообщение
не нужны здесь признаки делимости, достаточно проверить что остаток от деления равен нулю
Попробуй ввести число 457574566623465887987654645234123654688798796765.
Это соответствует условию задачи: на входе – текст.
0
7415 / 5011 / 2889
Регистрация: 18.12.2017
Сообщений: 15,694
11.04.2021, 11:24 9
afront, ещё раз. у Вас переменная num типа int. ввести текст не получится
0
1481 / 1198 / 819
Регистрация: 29.02.2016
Сообщений: 3,579
11.04.2021, 11:39 10
Yetty, разница не велика
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
 
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int num;
    cout << "Введите число:" << endl;
    string str;
    cin >> str;
    swap(str[0], str[str.size() - 1]);
    num = stoi(str);
    if (num % 7 == 0)
        cout << "кратно" << endl;
    else
        cout << "не кратно" << endl;
    system("pause");
    return 0;
}
Добавлено через 44 секунды
Verevkin, длинная арифметика это отдельная песня
0
7415 / 5011 / 2889
Регистрация: 18.12.2017
Сообщений: 15,694
11.04.2021, 11:48 11
afront, как Вы собрались переводить в число цифры с буквами ? да и на простейшем числе 14 выдаёт NO
Вы проверяете то что пишите ?
0
1481 / 1198 / 819
Регистрация: 29.02.2016
Сообщений: 3,579
11.04.2021, 11:52 12
Цитата Сообщение от Yetty Посмотреть сообщение
Вы проверяете то что пишите ?
пардон не проверил)) 12 строчку нужно удалить
0
7415 / 5011 / 2889
Регистрация: 18.12.2017
Сообщений: 15,694
11.04.2021, 11:55 13
Цитата Сообщение от afront Посмотреть сообщение
12 строчку нужно удалить
там всё нужно удалить, Ваш код не является решением задачи
0
126 / 83 / 44
Регистрация: 18.11.2018
Сообщений: 299
11.04.2021, 12:08 14
Цитата Сообщение от Yetty Посмотреть сообщение
там всё нужно удалить, Ваш код не является решением задачи
Каково условие вообще, не до конца понял. Если мы вводим в строку текст, например: 1abc321fd54, то мы должны рассматривать только цифры, то есть: 132154 или как?

Добавлено через 58 секунд
Или мы должны рассматривать ASCII коды символов, не выкупаю.
0
1481 / 1198 / 819
Регистрация: 29.02.2016
Сообщений: 3,579
11.04.2021, 12:17 15
woolfskinny, у нас преподы любят всякую хрень задавать, типа перевести анекдот в цифру
1
126 / 83 / 44
Регистрация: 18.11.2018
Сообщений: 299
11.04.2021, 12:20 16
Цитата Сообщение от afront Посмотреть сообщение
перевести анекдот в цифру
Заморил
0
7415 / 5011 / 2889
Регистрация: 18.12.2017
Сообщений: 15,694
11.04.2021, 13:06 17
woolfskinny, вроде понятно написано, например 27 - число, b27 - не число
0
0 / 0 / 0
Регистрация: 04.04.2021
Сообщений: 29
11.04.2021, 13:07  [ТС] 18
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
#include <iostream>
#include <string>
#include <cctype>
using namespace std;
 
bool Is_Number (string const&s)
{
    size_t i=0;
    while(s[i])
    {
        if(!isdigit(s[i])) return false;
        i++;
    }
    return true;
}
 
bool Div7 (string const&s)
{
    size_t size=s.size();
    char last=s[size-1];
    if(size==1 && (last=='0' || last=='7')) return true;
    else if (size==1 && last!='0' && last!='7') return false;
    else if(((s[size-2]-48)*3+(last-48))%7==0) return true;
    return false;
}
 
int main()
{    
    string s;
    cout << "Enter text (digits and letters): ";    
    cin >> s;    
    
    if (Is_Number(s) && Div7(s)) cout << "YES\n";
    else cout << "NO\n";
    
system("pause");
return 0;
}

кто написал этот код?
0
Эксперт CЭксперт С++
3440 / 2026 / 1106
Регистрация: 14.12.2018
Сообщений: 3,979
Записей в блоге: 1
11.04.2021, 13:09 19
Цитата Сообщение от Balzhan Посмотреть сообщение
кто написал этот код?
Хорошо работает у вас ?
0
1481 / 1198 / 819
Регистрация: 29.02.2016
Сообщений: 3,579
11.04.2021, 13:11 20
Цитата Сообщение от Yetty Посмотреть сообщение
Ваш код не является решением задачи
атак?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
#include <algorithm>
#include <cctype>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int num;
    cout << "Введите число:" << endl;
    string str;
    cin >> str;
    str.erase(remove_if(str.begin(), str.end(),
        [](char c) { return isspace(c) || isalpha(c); }),
        str.end());
    num = stoi(str);
    if (num % 7 == 0)
        cout << "кратно" << endl;
    else
        cout << "не кратно" << endl;
    system("pause");
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.04.2021, 13:11
Помогаю со студенческими работами здесь

Строки. Проверить, является ли введенная с клавиатуры последовательность символов целым числом, записанным в десятичной системе счисления
Составить программу, которая проверяет, является ли введенная с клавиатуры последовательность...

Проверить является ли заданная строка восьмизначным числом, записанным в десятичной системе счисления без нулей в старши
Проверить является ли заданная строка восьмизначным числом, записанным в десятичной системе...

Проверить, является ли число положительным пятизначным числом кратным десяти
Помогите решить... 2) Дано целое число. Проверить: является ли данное число положительным...

Проверить, является ли сумма элементов массива числом кратным 7; перевести с бейсика
Переведите на язык pascal. Двумерные массивы Проверить, является ли сумма элементов массива числом...

Машина Тьюринга: найти сумму двух чисел (в троичной и 10-ной системе счисления) в десятичной системе счисления
Уважаемые умы форума, прошу помочь разобраться с задачей по машине Тьюринга. Даны два положительных...

Дано целое число X в десятичной системе счисления. Выведите запись числа X в восьмеричной системе счисления
Почему настоящие программисты путают католическое Рождестово и Halloween? Потому что 25 DEC = 31...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru