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

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

06.04.2017, 21:15. Просмотров 1094. Ответов 5
Метки нет (Все метки)

Выполните задания с использованием библиотечного класса string.

Дана строка. Необходимо определить, представляет ли она собой запись целого числа, запись дробного числа. Считайте, что дробная часть вещественного числа отделяется от его целой части точкой ".". (Например, "123" – целое число, "2.71" – дробное число, "Pi" – не число.)

помогите ,пожалуйста.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2017, 21:15
Ответы с готовыми решениями:

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

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

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

Если строка представляет собой запись целого числа, то вывести 1
Дана строка. Если она представляет собой запись целого числа, то вывести 1; если вещественного (с...

5
62 / 62 / 39
Регистрация: 18.11.2016
Сообщений: 561
06.04.2017, 21:51 2
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
int check (std::string strm){
    for (int i(0); i!=strm.size(); i++)
        if(strm[i] == '.')
            return 1;
        else
            return 0;
}
 
 
int main(){
    SetConsoleCP (1251);
    SetConsoleOutputCP (1251);
    
    std::string strm;
    std::cout << "Enter number: ";
    std::cin >> strm;
 
    if(!check(strm)){
        std::cout << "double or float" << std::endl;
    }
    else{
        std::cout << "int or short or long long" << std::endl;
    }
 
 
    system ("pause");
    return 0;
}
0
491 / 205 / 69
Регистрация: 27.05.2016
Сообщений: 541
06.04.2017, 22:09 3
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
#include <iostream>
#include <algorithm>
#include <limits>
#include <cctype>
 
enum class NUMB_TRAITS {INTEGER, FLOAT_POINT, NOT_NUMBER};
 
NUMB_TRAITS is_integer_or_float_point(const std::string& val)
{
    if (std::any_of(val.cbegin(), val.cend(), isalpha))
        return NUMB_TRAITS::NOT_NUMBER;
    try {
        return std::stold(val) - std::stol(val) > std::numeric_limits<long double>::epsilon() ?
               NUMB_TRAITS::FLOAT_POINT : NUMB_TRAITS::INTEGER; }
    catch (std::invalid_argument&) { return NUMB_TRAITS::NOT_NUMBER; }
    catch (std::out_of_range&) { return NUMB_TRAITS::NOT_NUMBER; }
}
 
std::ostream& operator << (std::ostream& os, NUMB_TRAITS n)
{
    return os << (n == NUMB_TRAITS::INTEGER ? "integer" : n == NUMB_TRAITS::FLOAT_POINT ? "float point" : "not number")
             << std::endl;
}
 
int main()
{
    std:: cout << is_integer_or_float_point("42.000000001");
    std:: cout << is_integer_or_float_point("42");
    std:: cout << is_integer_or_float_point("4a4");
}
0
480 / 361 / 232
Регистрация: 24.02.2017
Сообщений: 1,309
07.04.2017, 10:13 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream.h>
 
int main()
{
int chislo;
char stroka[10],s[10];
 
cin>>stroka;
chislo=atoi(stroka);
itoa(chislo,s,10);
if(strcmp(stroka,s)==0)
     cout<<"chislo celoe"<<"\n";
else
    cout<<"chislo drobnoe"<<"\n";
 
system("pause");
    return 0;
}
Добавлено через 12 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream.h>
#include <string.h>
int main()
{
int chislo;
string stroka;
char s[10];
 
getline(cin,stroka);
chislo=atoi(stroka.c_str());
itoa(chislo,s,10);
if(strcmp(stroka.c_str(),s)==0)
     cout<<"chislo celoe"<<"\n";
else
    cout<<"chislo drobnoe"<<"\n";
 
system("pause");
    return 0;
}
Добавлено через 11 часов 41 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream.h>
#include <string.h>
 
int main()
{
string stroka,n;
char s[10];
 
getline(cin,stroka);
if(stroka.compare(n=itoa(atoi(stroka.c_str()),s,10))==0)
     cout<<"chislo celoe"<<"\n";
else
    cout<<"chislo drobnoe"<<"\n";
 
system("pause");
    return 0;
}
0
797 / 527 / 157
Регистрация: 27.01.2015
Сообщений: 3,025
Записей в блоге: 1
07.04.2017, 10:30 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
 
int main()
{
    string str;
    cin >> str;
 
    istringstream ist(str);
    double x;
 
    cout << (ist >> x ? "N" : "Not a n") << "umber" << endl;
 
    system("pause");
}
0
Форумчанин
Эксперт CЭксперт С++
8159 / 5007 / 1436
Регистрация: 29.11.2010
Сообщений: 13,458
07.04.2017, 16:42 6
C++
1
2
3
4
5
6
7
8
9
#include <iostream>
#include <regex>
#include <string>
 
int main()
{
    const std::string str = "1.23";
    std::cout << (std::regex_match(str, std::regex("\\d+\\.\\d+")) ? "Float" : std::regex_match(str, std::regex("\\d+")) ? "Integer" : "Nothing");
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.04.2017, 16:42

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Если строка представляет собой запись целого числа, то вывести 1
Подскажите: дана строка. Если она представляет собой запись целого числа, то вывести 1; если...

Дана строка. Если она представляет собой запись целого числа, то вывести 1
IX.Символы и строки 6. Дана строка. Если она представляет собой запись целого числа, то вывести...

Дана строка. Если она представляет собой запись целого числа, то вывести 1
. Дана строка. Если она представляет собой запись целого числа, то вывести 1; если вещественного...

Дана строка. Если она представляет собой запись целого числа, то вывести 1
Дана строка. Если она представляет собой запись целого числа, то вывести 1; если вещественного (с...


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

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

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