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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
9cbka
2 / 2 / 0
Регистрация: 13.10.2012
Сообщений: 60
#1

Преобразование типов: строки в double - C++

04.03.2013, 00:32. Просмотров 855. Ответов 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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include "stdafx.h"
#include <iostream>
#include <string>
#include <conio.h>
#include <stdlib.h>
 
using namespace std;
 
void main()
{
    const int MAX=100;
    cout << "Vvedite stroku: ";
 
    char *s;
    s = new char[MAX];
    s[0]='\0';
 
    cin >> s;
 
    char *news;
    news = new char[MAX];
    news[0]='\0';
    
    unsigned int i=0, k=0;
 
    for(i=0;i<strlen(s);i++)
    {
        if(s[i]>='0' && s[i]<='9')
        {
            news[k++] = s[i];
        }
    }
    
    news[k]='\0';
 
    double p;
    p=atof(news);
 
    k=0;
    while(p>=10)
    {
        p /= 10;
        k++;
    }
 
    s[0]='\0';
 
    gcvt(p,10,s);
 
    cout << s;
 
    _getch();
}
Не работает функция gcvt(); причины не вижу...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2013, 00:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Преобразование типов: строки в double (C++):

Строковые потоки. Преобразование типов (как сделать чтобы из строки число полностью преобразовывалось в double без потери чисел) - C++
Всем привет я перевожу string в double следующим образом double fromString(const std::string&amp; s) { std::istringstream iss(s); ...

Преобразование типов. Откуда берётся double? - C++
Доброго времени суток всем.Объясните кто-нибудь почему компилятор в предупреждениях пишет : &quot;warning C4244: =: преобразование &quot;double&quot; в...

Преобразование типов string->double c заданной точностью*? - C++
Есть входящая строка 123456 или 00546.. или любая другая. Как преобразовать в тип double, чтобы на выходе я получил: 123.456 ...

Некорректное преобразование double в int (приведение типов) - C++
Не совсем очевидно. https://ideone.com/7P0EhY #include &lt;iostream&gt; #include &lt;math.h&gt; int main() { float y = pow(64, 1.0...

Преобразование типов double в int для задания размерности массива - C++
Объясните, пожалуйста. Не объявляется массив, хотя его размеры объявил как константы. // #ifndef M_PI #define M_PI...

Преобразование строки в double - C++
Собственно есть код: #include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; double atof(const char *nPtr) ...

3
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
04.03.2013, 12:40 #2
Зачем используется new, если размер строк известен при компиляции?
Чего Вы хотите добиться переводом строки в число (atof) и обратно числа в строку (gcvt)?
0
9cbka
2 / 2 / 0
Регистрация: 13.10.2012
Сообщений: 60
05.03.2013, 16:05  [ТС] #3
Использую new, потому что не знаю как по другому сделать.
Когда использую atof() и gcvt() я хочу к строке дописать к преобразованной строку(получиться после while() <10), +-Е10. где 10 степень числа.

Добавлено через 18 часов 24 минуты
Поднимаю!
0
9cbka
2 / 2 / 0
Регистрация: 13.10.2012
Сообщений: 60
06.03.2013, 22:21  [ТС] #4
Поднимаю!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2013, 22:21
Привет! Вот еще темы с ответами:

Преобразование строки в long double - C++
Друзья, в Лафоре есть задача номер 7 в главе 7. Её суть: пользователь вводит строку, программа должна считывать только цифры и символ...

Перевод типов в double - C++
Здравствуйте! Потскажите пожалуйста, можно ли в кусочке моей программы сделать так, что бы Результат(рубли и копейки) вывести как тип...

Ошибки error C2296: -: недопустимо, левый операнд имеет тип "double (__cdecl *)(double,double,double - C++
Думаю из-за polp #include&lt;iostream&gt; #include&lt;cmath&gt; #include&lt;cstdlib&gt; using namespace std; double polp(double af,double...

Конфликт типов (int, double, bool) - C++
Есть простейший класс class A { public: A( long ) {} A( double ){} A( bool ) {} } и при создании обьекта new...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
06.03.2013, 22:21
Ответ Создать тему
Опции темы

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