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

Как поменять цифры в числе местами? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нуждаюсь в проверки программиста. http://www.cyberforum.ru/cpp-beginners/thread363709.html
Добрый вечер! Я учусь в институте на специальности, информационная безопасность, начали проходить с++, т.к. мало чего еще понимаю, хотелось что бы проверили мой тест который задали по предмету. ответы и условие прикрепил. Буду благодарен если укажите на ошибки. Условие: http://rghost.ru/24872911 Ответы: http://rghost.ru/24875821
C++ Файл произвольного доступа Читаю Дейтелов, про файлы произвольного доступа. Написал вроде как по примеру, но что-то идет не так. Идея такая - создается файл, в нем забивается места на 100 записей, я остановился пока на этом этапе, решил проверить, так ли это. Выводит только 25 записей почему-то. struct dataFile { int number; char name; char surname; double balance; }; http://www.cyberforum.ru/cpp-beginners/thread363698.html
Составить программу вычисления точного значения n^n (Нужна помощь) C++
вотзадание Составить программу вычисления точного значения n^n, где n > 10 Программа на C должна быть ,помогите если не сложно. Заранее спасибо
Вывод контейнера map C++
Подскажите пожалуйста как вывести на экран значение карты. Программа такая: надо создать карту, где ключ - это фамилия семьи, а значение карты - это вектор. Сам вектор состоит из пар, содержащих имя ребёнка и его возраст. Т.е. под одной фамилией есть несколько детей (с указанным возрастом). Программа написана, всё вроде работает кроме смого главного... не знаю как вывести на экран значение карты...
C++ задача в с++,помогите http://www.cyberforum.ru/cpp-beginners/thread363690.html
вы не моглибы мне помоч? мне нужно создать в с++ команду,которая создаёт матрицу8*9,находит максимумы по строкам и столбцам,упорядочивает их по уменьшению
C++ Выбивает 1.#IND Вот задача:протабулировать функцию от х до b вот мой код: // help.cpp: определяет точку входа для консольного приложения. // #include"Stdafx.h" #include <iostream> #include <conio.h> #include <cmath> using namespace std; void main() подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
10.10.2011, 14:03     Как поменять цифры в числе местами?
Вот мой вгляд на проблемму. Сущность алгоритма такова - разбили число на разряды и занесли их в массив, а затем выводим сочетания из цифр разрядов
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <iostream>
#include <conio.h>
using namespace std;
 
int SplitNum(int val, int * arr)
{
    int n = 0;
    do
    {
        arr[n] = val % 10;
        n++;
    }
    while(0 < (val /= 10));
    return n;//Возвратим число цифр в числе
}
 
int GetNum(int beg, int end, int n, int * arr)
{
    //beg - с какого начинать
    //end - какое делать последним
    int ret = arr[beg];
        if(ret == 0)
        ret = 1;
    for(int i = beg + 1; i < n; i++)
    {
        if(i != end)
        {
            ret *= 10;
            ret += arr[i];
        }
    }
    for(i = 0; i < beg; i++)
    {
        if(i != end)
        {
            ret *= 10;
            ret += arr[i];
        }
    }
    ret *= 10;
    ret += arr[end];
    return ret;
}
 
int main()
{
    int arr[100];//Буффер под циифры числа
    int val;
    int i,j,n;//Содержит в себе кол-во разрядов числа
    do
    {
        std::cout<<"Enter number : ";std::cin>>val;
        std::cout<<"\tGenerated numbers\n";
        
        n = SplitNum(val, arr);
        for(i = 0;     i < n; i++)
        for(j = i + 1; j < n; j++)
        {
            std::cout<<(val = GetNum(j, i, n, arr))<<" ";
            if(val % 6 == 0)
                std::cout<<" % 6 == 0!";
            std::cout<<"\n";
        }
        std::cout<<"Press Y for new input\n";
    }
    while(toupper(getch()) == 'Y');
    return 0;
}
Скрывать не буду писал и тестировал быстро поэтому если будут баги пишем в топик...
Миниатюры
Как поменять цифры в числе местами?  
 
Текущее время: 08:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru