Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/13: Рейтинг темы: голосов - 13, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 24.01.2014
Сообщений: 7
1

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

24.01.2014, 14:01. Показов 2367. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите написать программу перевода введенной с клавиатуры строки в массив вещ-ых чисел, не используя scanf.
Чем больше пишу, тем больше ересь какая-то получается.
Числа отделяются друг от друга пробелом
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.01.2014, 14:01
Ответы с готовыми решениями:

Из строки получить массив вещественных чисел
Здравствуйте! Завтра экзамен, а мыслей нет... на СИ надо написать простенькую программу используя...

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

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

Перевод символьной строки в число функцией atoll
Добрый день. Может кто сталкивался. Я хотела перевести строку в long long с помощью функции atoll....

5
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
24.01.2014, 14:24 2
Цитата Сообщение от Bright Color Посмотреть сообщение
не используя scanf.
используйте std::istream
0
Mobile Software Engineer
Эксперт С++
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
24.01.2014, 14:29 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
#include <iostream>
#include <sstream>
#include <string>
 
int main()
{
    std::string userString;
    std::cout << "Input the string: ";
    std::getline(std::cin, userString);
 
    std::string currentStringNumber;
    std::stringstream stream(userString);
 
    size_t arrayIndex = 0;
    double *array = new double [std::count(userString.begin(), userString.end(), ' ') + 1];
    std::cout << "Array: " << std::endl;
    while (stream >> currentStringNumber) {
        array[arrayIndex] = atof(currentStringNumber.c_str());
        std::cout << array[arrayIndex++] << ' ';
    }
    std::cout << std::endl;
    delete [] array;
    array = nullptr;
 
    std::system("pause");
    return 0;
}
1
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
24.01.2014, 14:32 4
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
#include <iostream>
#include <vector>
 
int main() {
 
    std::vector<double> v;
 
    for(;;) // Ввод
    {
        double d = 0;
        std::cin >> d;
        if( !std::cin ) break;
        v.push_back(d);
    }
    
    // Вывод
    for( const auto& d : v )
    {
        std::cout << d << " ";
    }
    std::cout << '\n';
    
    return 0;
}
0
1 / 1 / 0
Регистрация: 24.01.2014
Сообщений: 7
24.01.2014, 15:58  [ТС] 5
Ev[G]eN, Спасибо. Не могли бы вы объяснить подробно вот этот момент
C++
1
2
3
while (stream >> currentStringNumber) {
        array[arrayIndex] = atof(currentStringNumber.c_str());
...}
?
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
24.01.2014, 16:17 6
C++
1
2
3
while (stream >> currentStringNumber) { // Чтение из строкового потока в строку пока есть данные
array[arrayIndex] = atof(currentStringNumber.c_str()); // Перевод из Си-строки в число с плавающей точкой и сохранение в массиве
...}
P.S. По возможности, лучше не заморачиваться с сишными строками, а использовать std::string.
И stod для преобразования в частности
2
24.01.2014, 16:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2014, 16:17
Помогаю со студенческими работами здесь

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

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

Считывание строки и перевод в массив чисел
Работаю над аглоритмом длинной арифметики (умножение чисел). Сам алгоритм готов, возникла проблема...

CLR перевод строки в массив чисел
записано в Label числа через пробел. туда они считываются из файла. мне надо их записать в массив...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru