0 / 0 / 0
Регистрация: 11.03.2015
Сообщений: 4
1

Перевод числа в массив.

06.04.2015, 01:08. Показов 3113. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В программе есть функция, которая принимает на вход целое число и символьный массив(строку). Нужно сделать так, чтобы она превратила число в символьную запись(с завершающим символом '\0'). Затем в main эту функцию вызываем для какого-нибудь числа. и нужно сравнить результат с результатом стандартной функции sprinif(str, "%d", value).

есть код, но он нерабочий

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
#include <iostream>
 
using namespace std;
 
void funct(int n, char mas[])
{
    int x = n;
    char digits[10] = {'0','1','2','3','4','5','6','7','8','9'};
    int i = 0;
    while (n != 0)
    {
        mas[i] = digits[n % 10];
        n = n / 10;
        i++;
    }
    while (x != 0)
    {
        cout << mas[i-1];
        x = x / 10;
        i--;
    }
}
 
int main()
{
    int n;
    char mas[10];
    cout << "Enter n\n";
    cin >> n;
    funct(n, mas);
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2015, 01:08
Ответы с готовыми решениями:

Перевод числа в массив
Здравствуйте. У такой меня вопрос: могу ли я перевести n-значное число в массив из n элементов....

перевод из числа в прописной вид не массив
Здравствуйте товарищи!Нужна ваша помощь в исправлении кода. Что нужно мне изменить в коде что бы...

Функция: перевод числа с плавающей точкой в текст (массив char-ов)
Задача звучит так написать функцию перевода числа с плавающей точкой(double) в текст (массив...

Перевод числа в массив символов
Помогите пожалуйста сделать несколько лаб по ассемблеру, вот например такое задание: Разработать...

1
32 / 32 / 14
Регистрация: 30.11.2013
Сообщений: 139
06.04.2015, 02:19 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
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <iostream>
 
int pow(int base, int p){
    if (p = 0)
        return 1;
    for (int i = 1; i < p; i++)
        base *= base;
    return base;
}
 
void foo(int number, char *str){
    if (number == 0){
        *(str++) = '0';
        *str = '\0';
    }
    else{
        int i=0,j=0;
        bool isPositive = number>0 ? true : false;
        if (!isPositive)
            number *= -1;
        char *tmp=new char[100];
        while (number > 0){
            tmp[i++] = (number % 10) + '0';
            number /= 10;
        }
        if (!isPositive)
            str[j++] = '-';
        while (i>0)
            str[j++] = tmp[--i];
    str[j] = '\0';
    }
}
 
using namespace std;
int main()
{
    int a = -5655;
    char b[100];
    foo(a, &b[0]);
    cout<<b<<endl;
}
конечно не так круто как это но сойдёт)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.04.2015, 02:19
Помогаю со студенческими работами здесь

Перевод большого числа в массив
есть число int i = 233123; надо перевести вот в такой массив int k = 2,3,3,1,2,3; Как это...

Перевод числа в массив его цифр
Возможно ли сделать из числа массив чисел например дано число 753 а на выходе массив 7,5,3

По заданному X нужно в массив записать следующие числа записанные в массив раздельно по каждой цифре числа
Помогите сделать следующее или посоветуйте как сделать это иначе. Пример: Пусть X=3. Мне по...

Перевод числа из 10сс в 2сс,8сс и 16сс с заданием числа вещественного типа
Здраствуйте. Помогите с решением задачи. Задание: перевести число из десятичной системы счисления в...

Перевод числа из одной с.с. в другую, манипуляции с цифрами числа
Здравствуйте! У меня такая проблема... Есть программа, выполняющая определенные операции с...

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru