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

string на с++ - C++

Восстановить пароль Регистрация
 
sofron
0 / 0 / 0
Регистрация: 28.11.2012
Сообщений: 21
28.11.2012, 15:56     string на с++ #1
Проверить, является ли введенная с клавиатуры строка дробным числом
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.11.2012, 16:07     string на с++ #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <string>
#include <regex>
 
int main()
{
    std::string str;
    std::cin>>str;
    std::regex reg("\\d+\\.\\d+");
    if(std::regex_match(str.begin(), str.end(), reg)) 
        std::cout<<"y"<<std::endl;
}
sofron
0 / 0 / 0
Регистрация: 28.11.2012
Сообщений: 21
28.11.2012, 16:20  [ТС]     string на с++ #3
а можно ли получить ответ без использования regex препод не примет
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.11.2012, 16:28     string на с++ #4
Цитата Сообщение от sofron Посмотреть сообщение
а можно ли получить ответ без использования regex
Можно.
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
28.11.2012, 16:29     string на с++ #5
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <cstring>
#include <cstdlib>
int main()
{
     std::string s="3.14e-10";
     double j = atof(s.c_str());
     std::cout<<j;
    return 0;
}
sofron
0 / 0 / 0
Регистрация: 28.11.2012
Сообщений: 21
28.11.2012, 16:34  [ТС]     string на с++ #6
если можно то кидайте
Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.11.2012, 16:35     string на с++ #7
Цитата Сообщение от sofron Посмотреть сообщение
если можно то кидайте

Не по теме:

Я имел ввиду именно, что это возможно, а не то, что кину другое решение. Какой вопрос, такой был и ответ.

ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
28.11.2012, 16:37     string на с++ #8
BumerangSP, Не проверит, что число действительно дробное. Целое число тоже свободно переведет. Вариант Vourhey самый нормальный или же можно без регекса, но несколько больше кода будет.
sofron
0 / 0 / 0
Регистрация: 28.11.2012
Сообщений: 21
28.11.2012, 16:38  [ТС]     string на с++ #9
Цитата Сообщение от BumerangSP Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <cstring>
#include <cstdlib>
int main()
{
     std::string s="3.14e-10";
     double j = atof(s.c_str());
     std::cout<<j;
    return 0;
}
странный код который выводит всё время 3.14e-10
BumerangSP
28.11.2012, 16:39
  #10

Не по теме:

ForEveR, ну, так да. Я что-то и не заметил, что проверять нужно)

Vourhey
Почетный модератор
6468 / 2243 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
28.11.2012, 16:39     string на с++ #11
Цитата Сообщение от sofron Посмотреть сообщение
странный код который выводит всё время 3.14e-10

Не по теме:

убил, чувак. там же строка одна и та же все время просто.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.11.2012, 16:40     string на с++
Еще ссылки по теме:

C++ Какое одинаковое значение можно вернуть из функций <string> f () и vector < <string> > f()?
C++ Сравнение string::iterator со string::reverse_iterator

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

Или воспользуйтесь поиском по форуму:
BumerangSP
 Аватар для BumerangSP
4283 / 1405 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
28.11.2012, 16:40     string на с++ #12
Цитата Сообщение от sofron Посмотреть сообщение
странный код который выводит всё время 3.14e-10
А что, по-Вашему, должно выйти, если мы "все время" конвертируем одно и то же число?
Yandex
Объявления
28.11.2012, 16:40     string на с++
Ответ Создать тему
Опции темы

Текущее время: 08:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru