0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 43

Преобразование символов в числа

09.04.2013, 18:10. Показов 3727. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят помогите решить задачу плииз!! дан текст, содержащий цифры.Заменить все нечетные цифры наименьшей цифрой,содержащейся в данном тексте.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.04.2013, 18:10
Ответы с готовыми решениями:

Преобразование символов в числа
Дан текст, содержащий целые числа. Вывести на экран сумму нечетных чисел. Ребят помогите пожалуйста с задачкой.

Преобразование символов в числа
Дан текст. Определить, является ли он правильной десятичной записью целого числа.

Преобразование символов в числа
Дан текст, имеющий вид: dl + d2 + ... + dn, где di — цифры. Вычислить записанную в тексте сумму.

11
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
09.04.2013, 20:06
Nikita9413,

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
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
 
bool pred_min(char elem1, char elem2)
{
    return elem1 - '0' < elem2 - '0';
}
 
bool predikat(char elem){
    return (((elem - '0') % 2) != 0);
}
 
int main()
{
    string str("123456789");
 
    char min = *min_element(str.begin(), str.end(), pred_min);
 
    replace_if(str.begin(), str.end(), predikat, min);
 
    cout << str << endl;
    cout << "\n\n";
    return 0;
}
1
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 43
09.04.2013, 20:30  [ТС]
не совсем понятно, а можно сделать чтобы строку с клавиатуры можно было вводить?
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
09.04.2013, 20:34
Nikita9413,

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
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
 
bool pred_min(char elem1, char elem2)
{
    return elem1 - '0' < elem2 - '0';
}
 
bool predikat(char elem){
    return (((elem - '0') % 2) != 0);
}
 
int main()
{
    string str;
    cout << "Enter the string: ";
        getline(cin, str, '\n');
 
    char min = *min_element(str.begin(), str.end(), pred_min);
 
    replace_if(str.begin(), str.end(), predikat, min);
 
    cout << "New string: " << str << endl;
    cout << "\n\n";
    return 0;
}
1
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 43
09.04.2013, 20:39  [ТС]
я извиняюсь за наглость, но можно сделать так чтобы было понятно первокурснику)) просто в этом коде очень трудно разобраться, я и половины функций не знаю
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
09.04.2013, 20:48
Nikita9413, так понятней?

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
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
 
int main()
{
    string str;
    cout << "Enter the string: ";
        getline(cin, str, '\n');
 
    char min = str[0];
 
    /*ищем минимум*/
    for(unsigned i = 0; i < str.length(); ++i){
        if((str[i] - '0') < (min - '0')){           //str[i] - '0' дает число вместо символа
            min = str[i];
        }
    }
 
    /*заменяем нечетные минимумом*/
    for(unsigned i = 0; i < str.length(); ++i){
        if(((str[i] - '0') % 2) != 0){
            str[i] = min;
        }
    }
 
    cout << "New string: " << str << endl;
    cout << "\n\n";
    return 0;
}
1
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 43
09.04.2013, 21:43  [ТС]
да, спасибо

Добавлено через 34 минуты
еще вопрос, если в тексте содержаться еще и слова то код работает не корректно, как это исправить?
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
09.04.2013, 21:49
Nikita9413, сделать проверку, является символ числом или нет, есть функция стандартная isalpha
1
0 / 0 / 0
Регистрация: 09.04.2013
Сообщений: 43
09.04.2013, 21:57  [ТС]
не совсем понятно, а можно пример использования этой функции?
0
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
09.04.2013, 22:01
http://www.cplusplus.com/reference/locale/isalpha/
0
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
09.04.2013, 22:06
Цитата Сообщение от yoghurt92 Посмотреть сообщение
elem1 - '0' < elem2 - '0'
elem1 < elem2
1
381 / 352 / 113
Регистрация: 17.05.2012
Сообщений: 1,049
09.04.2013, 22:11
Nikita9413, вот, она тут только для латинских букв

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
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
 
int main()
{
    string str;
    cout << "Enter the string: ";
        getline(cin, str, '\n');
 
    char min = str[0];
 
    /*ищем минимум*/
    for(unsigned i = 0; i < str.length(); ++i){
        if(isdigit(str[i])){
            if((str[i] - '0') < (min - '0')){           //str[i] - '0' дает число вместо символа
                min = str[i];
            }
        }
    }
 
    /*заменяем нечетные минимумом*/
    for(unsigned i = 0; i < str.length(); ++i){
        if(isdigit(str[i])){
            if(((str[i] - '0') % 2) != 0){
                str[i] = min;
            }
        }
    }
 
    cout << "New string: " << str << endl;
    cout << "\n\n";
    return 0;
}
Добавлено через 1 минуту
Jupiter, да конечно, можно и так
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.04.2013, 22:11
Помогаю со студенческими работами здесь

Преобразование символов в числа
Дан текст, имеющий вид: dl + d2 + ... + dn, где di — цифры. Вычислить записанную в тексте сумму. Долго ломаю голову но выходит фигня....

Преобразование символов в числа
Дан текст, содержащий цифры. Вывести на экран наибольшую цифру. Помогите пожалуйста))

Преобразование символов в числа и вычисление их суммы
Всем доброго времени суток. Дан текст,имеющий вид: d1+d2+...+dn, где di-цифры. Вычислить записанную в тексте сумму.

Преобразование символов в числа
Есть массив символов Нужно преобразовать символы стоящие на нечетных позициях в числа и найти их сумму. Подскажите, как это...

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


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

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

Новые блоги и статьи
Тестирование энергоэффективности и скорости вычислений видеокарт в BOINC проектах
Programma_Boinc 08.07.2025
Тестирование энергоэффективности и скорости вычислений видеокарт в BOINC проектах Опубликовано: 07. 07. 2025 Рубрика: Uncategorized Автор: AlexA Статья размещается на сайте с разрешения. . .
Раскрываем внутренние механики Android с помощью контекста и манифеста
mobDevWorks 07.07.2025
Каждый Android-разработчик сталкивается с Context и манифестом буквально в первый день работы. Но много ли мы задумываемся о том, что скрывается за этими обыденными элементами? Я, честно говоря,. . .
API на базе FastAPI с Python за пару минут
AI_Generated 07.07.2025
FastAPI - это относительно молодой фреймворк для создания веб-API, который за короткое время заработал бешеную популярность в Python-сообществе. И не зря. Я помню, как впервые запустил приложение на. . .
Основы WebGL. Раскрашивание вершин с помощью VBO
8Observer8 05.07.2025
На русском https:/ / vkvideo. ru/ video-231374465_456239020 На английском https:/ / www. youtube. com/ watch?v=oskqtCrWns0 Исходники примера:
Мониторинг микросервисов с OpenTelemetry в Kubernetes
Mr. Docker 04.07.2025
Проблема наблюдаемости (observability) в Kubernetes - это не просто вопрос сбора логов или метрик. Это целый комплекс вызовов, которые возникают из-за самой природы контейнеризации и оркестрации. К. . .
Проблемы с Kotlin и Wasm при создании игры
GameUnited 03.07.2025
В современном мире разработки игр выбор технологии - это зачастую балансирование между удобством разработки, переносимостью и производительностью. Когда я решил создать свою первую веб-игру, мой. . .
Создаем микросервисы с Go и Kubernetes
golander 02.07.2025
Когда я только начинал с микросервисами, все спорили о том, какой язык юзать. Сейчас Go (или Golang) фактически захватил эту нишу. И вот почему этот язык настолько заходит для этих задач: . . .
C++23, квантовые вычисления и взаимодействие с Q#
bytestream 02.07.2025
Я всегда с некоторым скептицизмом относился к громким заявлениям о революциях в IT, но квантовые вычисления - это тот случай, когда революция действительно происходит прямо у нас на глазах. Последние. . .
Вот в чем сила LM.
Hrethgir 02.07.2025
как на английском будет “обслуживание“ Слово «обслуживание» на английском языке может переводиться несколькими способами в зависимости от контекста: * **Service** — самый распространённый. . .
Использование Keycloak со Spring Boot и интеграция Identity Provider
Javaican 01.07.2025
Два года назад я получил задачу, которая сначала показалась тривиальной: интегрировать корпоративную аутентификацию в микросервисную архитектуру. На тот момент у нас было семь Spring Boot приложений,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru