Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Написать программу для вычисления значения функции Составить программу вычисления значения функции Нарушение правил форума п. 5.4 Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п. Нарушение правил форума... https://www.cyberforum.ru/ cpp-beginners/ thread1416870.html Помощь с написанием класса List C++
Здравствуйте, помогите пожалуйста с задачей. Реализуйте класс List, представляющий список, элементами которого являются целые числа. Класс должен содержать следующие открытые (public) методы: ...
C++ Шаблон параллельных вычислений Имеется задача, состоящая из подзадач разной сложности. Хочется решать эти подзадачи параллельно. Пусть имеется итератор подзадач. Нужно сделать так, чтобы когда один процессор завершает свою... https://www.cyberforum.ru/ cpp-beginners/ thread1416834.html C++ Решение задач методом дихотомии https://www.cyberforum.ru/ cpp-beginners/ thread1416827.html
Решите уравнение x^4-2x^3+1=0 методом дихотомии. Написать программу для решения.
Вычислить сумму элементов после первой строки и произведение элементов последнего столбца C++
Помогите пожалуйста с задачей по программированию пожалуйста,Дана матрица А,вычислить сумму элементов после первой строки и произведение элементов последнего столбца.
C++ Составить программу вычисления выражений. третье и второе сверху и снизу листка https://www.cyberforum.ru/ cpp-beginners/ thread1416737.html
Составить программу вычисления выражений. Неизвестные вводятся с клавиатуры. Для ввода выражений пользуйтесь редактором формул внизу страницы!
C++ Укажите на ошибки в алгоритме программы https://www.cyberforum.ru/ cpp-beginners/ thread1416649.html
Доброго времени суток. Прошу указать на ошибки алгоритма. После ввода всех требуемых данных ничего не происходит, программа не вычисляет результат. Ниже моя попытка реализовать решение уравнения...
Передача двухмерного массива в функцию C++
Добрый вечер! Возникла задача, в которой необходимо передавать двумерные массивы в функцию. Размер массивов заранее не известен, размерность определяется через template. Только начинаю учиться и...
C++ Заменить элементы в матрице Дана матрица 6*27, состоящая из 0 и 1. Заполненная случайным образом. Нужно сделать так что бы в каждом столбике было не больше 2 единиц. И хотелось что бы это было тоже случайно. Есть код... https://www.cyberforum.ru/ cpp-beginners/ thread1416618.html C++ Как сделать чтобы в постфиксной записи кроме цифр выводились еще и обычные символы Есть код который делает конвертацию например 1 + 2 * 3 -->123*+ но а + b* c -->с -- то есть лиш последний введеный символ что здесь не так и что надо сделать? Проблема наверное в методе bool... https://www.cyberforum.ru/ cpp-beginners/ thread1416596.html
C++ В столбцах с отрицательным элементом на главной диагонали найти сумму всех элементов
В столбцах с отрицательным элементом на главной диагонали найти сумму всех элементов. Если на главной диагонали отрицательных элементов нет, то выдать об этом сообщение. #include <iostream>...
C++ Перезапись чисел в файле https://www.cyberforum.ru/ cpp-beginners/ thread1416583.html
Нужно написать программу, которая будет считывать из файлового потока число, изменять его и заменять в файле старое число на новое. Чисел в файле может быть несколько. Допустим, в файле: 15 16 20 18...
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 67
0

Переделать из класса в функцию - C++ - Ответ 7456937

09.04.2015, 12:25. Показов 415. Ответов 0
Метки (Все метки)

Здравствуйте, я всё со своей проблемой с переводом в 18 Систему . Операция с длинными числами
Создаю их так
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
void vvod(char *ar, int  &n)
{
    int i=0, j=0;
    int r1=0; // если введен минус
    bool l = true;
    bool u = true;
    while(true)
    {
        int i=0, j=0,r1=0;
        printf("\n Введите число: ");
        ar[i]=getchar();
        if(ar[i]=='-')
        {   
            ar[0]=r1;
        }
        while(ar[i]!='\n')
        {
            i++;
            ar[i]=getchar();    
        }
        n=i;
        l= isNumber(ar,n);
        u= bolshe(ar,n);
        if (l||u) 
            printf("\n Некорректное значение. Повторите ввод. \n");
        else break; 
    }
    if(ar[0]==0)
    {
        for(i=1; i<n; i++) 
        ar[i]-=48;
    }
    else {
            for(i=0; i<n; i++) 
            ar[i]-=48;
         }
}
Знакомый дал свой метод перевода, но у него классы, а моё примитивное использование языка программирование не под силу понять . Я загуглила некоторые строчки, которые он использовал, но не понимаю как применить в своей программе.
Вот его метод:
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
string LongNumber::toSevntnBase()
{
    string divident = digits;   // ������� ������� ������ �������� �������� � 17-��
    string result;              // ����� � 17-�� �������
 
    unsigned int currDigit = 0;
    int currDivident = 0;       // ������� ������� ������ �������� ������� 
 
    string div;                 // ������� ������� ������ �������� �������
        
    while (!divident.empty())
    {
        for (currDigit = 0; currDigit < divident.size(); currDigit++)
        {
            // �������� � ������� ������� ��������� ����� � ���������� ���������� �������
            currDivident = currDivident * 10 + (int)divident[currDigit] - 48;
            // ���� ������� ������� ������ ��������� ��, ��������� 0 � ������� �������
            if (currDivident < 17)
            {
                // ���� ������� ������� ������, �� 0 ��������� �� ����
                if (div.size() != 0)
                {
                    div.append("0");
                }
            }
            else
            {
                // ��������� ��������� �������������� ������� � �������� ��������
                div = div + (char)(currDivident / 17 + 48);
                // �������������� ������� ������� �������� �������������� �������
                currDivident = currDivident % 17;
            }
        }
        // ���� ����� ������������ ������, �� ��� ���������� ����� ����������� 
        // ��� ������� �� 55, ����� �� 48
        if (currDivident > 9)
        {
            result = (char)(currDivident + 55) + result;
        }
        else
        {
            result = (char)(currDivident + 48) + result;
        }
        divident = div;
        div.erase();
        currDivident = 0;
    }
 
    return (result);
}
Вот что я учудила
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
void perevod_v_18(char a[], int na)
{
    char div[200];
    char rez[200];
    int divSize;
    unsigned int i;
    int p=0;
    int ost=0;
                for(i=0;i<na;i++)
                {
                    ost = ost*10 + (int)(a[i]) - 48;
                    if(ost<18)
                    {
                        if(divSize!=0)
                        {
                        ///????
                        }
                        else 
                        {
                            div[i]=div[i]+(char)(ost/18 + 48);
                            ost = ost%18;
                        }
                    }
                    if(ost>9)
                    {
                                            rez[i]= (char)(ost +55) + rez[i];
                    }
                    else
                    {
                        rez[i] = (char)(ost+48) + rez[i];
                    }
            }
    
}
Я не смыслю ничего в этом и наверное то , что я перевела можно считать бредом
Помогите разобраться. Ну или хотя бы сказать , возможно ли переделать под мою функцию?

Вернуться к обсуждению:
Переделать из класса в функцию C++
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2015, 12:25
Готовые ответы и решения:

Как обраиться к функции класса через другую функцию класса (друга)?
Пример кода: #include &lt;iostream&gt; using namespace std; class Sasha; class Petya { public:...

Создать объект внутри класса, который может вызывать функцию этого класса
Ребята помогите уже несколько дней мучаюсь. Хочу сделать программу в консоле демонстрации работы...

Что происходит когда передается в функцию базового класса аргумент с типом производного класса?
Есть функция перегруженного оператора&quot;+&quot; в производном классе и в базовом классе который принимает...

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

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2015, 12:25
Помогаю со студенческими работами здесь

Как вызвать виртуальную функцию из дочернего класса, если она определена и вызывается в конструкторе РОДИТЕЛЬСКОГО класса?
Ну то есть так: есть родительский и дочерний класс, в родительском определен виртуальная функция и...

Переменные из функции класса в функцию другого класса
Подскажи пожалуйста,как с класса Convector передать в класс Filter одержанный Bitmap и переменные?...

Передача значения класса в функцию внутри класса
Всем привет. Вот столкнулся с таким вопросом Как передать значение класса в функцию внутри класса?...

Как запихнуть функцию-член класса в глобальную функцию в качестве параметра ?
class A { public : float f(float); float f2(float); }; class B { public : float f(float);...

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