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

Написать функцию, которая принимает два числа и возвращает

21.03.2011, 15:27. Показов 10216. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Решите пожалуйста!!!!!!!!!!!





4 ) число, которое получается, если к первому числу приписать справа второе (например,
для чисел 123 и 456 результатом будет 123456)
************************************************************************
5 ) число, которое получается, если ко второму числу приписать справа первое
(например, для чисел 123 и 456 результатом будет 456123)
**************************************************************************
6 ) разность суммы цифр первого и второго чисел (например, для чисел 123 и 456
результатом будет (1 + 2 + 3) - (4 + 5 + 6) = -9)
**************************************************************************
8 ) число, получаемое путем сортировки цифр произведения исходных чисел по
убыванию (например, для чисел 123 и 321 результатом будет число 98433, т.к. 123 *
321 = 39483, после чего цифры отсортированы по убыванию)
*************************************************************************
9 ) число, получаемое путем приписывания к частному от деления большего из чисел на
меньшее, остатка от этого деления (например, для чисел 123 и 456 результатом будет
387, т.к. 456 / 123 = 3, а 456 % 123 = 87)
*************************************************************************
10 ) число, получаемое путем выписывания цифр исходных чисел по возрастанию
(например, для чисел 351 и 624 результатом будет 123456)
*************************************************************************
11 ) число, получаемое путем умножения цифр суммы исходных чисел (например, для
чисел 123 и 456 результатом будет 27, т.к. 123 + 456 = 579, а 5 * 7 * 9 = 315)
*************************************************************************
12 ) число, получаемое путем сортировки цифр произведения исходных чисел по
возрастанию (например, для чисел 123 и 321 результатом будет число 33489, т.к. 123 *
321 = 39483, после чего цифры отсортированы по возрастанию)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.03.2011, 15:27
Ответы с готовыми решениями:

Написать функцию, которая принимает два числа и возвращает
Режить все !!!Буду благодарин!!Заранее спасибо!!

Напишите функцию которая принимает два действительных числа и возвращает true
3. Напишите функцию которая принимает два действительных числа и возвращает true, если абсолютные...

Напишите функцию, которая принимает два целых числа n и k и возвращает число, содержащее k первых цифр числа n
Напишите функцию, которая принимает два целых числа n и k и возвращает число, содержащее k первых...

Напишите функцию, которая принимает два целых числа n и k и возвращает число, содержащее k первых цифр числа n
Помогите решить задание. Вот условие: Напишите функцию, которая принимает два целых числа n и k и...

18
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
21.03.2011, 15:42 2
Цитата Сообщение от lleeoo Посмотреть сообщение
4 ) число, которое получается, если к первому числу приписать справа второе (например,
для чисел 123 и 456 результатом будет 123456)
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <math.h>
 
#define DIGITS(a) (floor(log10(a)) + 1)
 
int test(int _1, int _2){
  return _1 * pow(10.0, DIGITS(_2)) + _2;
}
 
int main(void){
  int a = test(123, 456);
  printf("%d", a);
  return 0;
}
Добавлено через 52 секунды
Цитата Сообщение от lleeoo Посмотреть сообщение
5 ) число, которое получается, если ко второму числу приписать справа первое
(например, для чисел 123 и 456 результатом будет 456123)
Аналогично к первому.
0
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 25
21.03.2011, 15:47  [ТС] 3
#define DIGITS(a) (floor(log10(a)) + 1)
мы такое не изучали!!
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
21.03.2011, 15:47 4
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от lleeoo Посмотреть сообщение
мы такое не изучали!!
Сочувствую.
3
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 25
21.03.2011, 16:26  [ТС] 5
Вот так на подобе это 3 !!




#include <iostream>

using namespace std;

int compare (int a, int b)
{
int f[10] = {-1};
int s[10] = {-1};
int a1 = a;
int b1 = b;
int i = 0;
while (a1)
{
f[i] = a1%10;
a1 /= 10;
i++;
}
i = 0;
while (b1)
{
s[i] += b1%10;
b1 /= 10;
i++;
}
int startPosF;
int startPosS;
for (int i = 9; i >= 0; i--)
if (f[i] != -1)
{
startPosF = i;
break;
}
for (int i = 9; i >= 0; i--)
if (s[i] != -1)
{
startPosS = i;
break;
}
if (startPosF > startPosS)
return a;
if (startPosS > startPosF)
return b;
for (int i = startPosF; i >= 0; i--)
if (f[i] > s[i]) return a;
return b;
}

int main()
{
int a, b;
cin >> a >> b;
cout << compare (a, b) << endl;
return 0;
}

Добавлено через 55 секунд
или вот 7!!!!!
#include <iostream>

using namespace std;

int compare (int a, int b)
{
int mult = a*b;
int sum = 0;
while (mult)
{
sum += mult%10;
mult /= 10;
}
return sum;
}

int main()
{
int a, b;
cin >> a >> b;
cout << compare (a, b) << endl;
return 0;
}

Добавлено через 37 минут
Ну решите мне пожалуйста!!!!!!!!!!Вам чо сложна!!!!!!!
0
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
21.03.2011, 16:41 6
4:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
using namespace std;
 
int main()
{
    int firstNumber, secondNumber, reversSecondNumber = 0;
    cout << "Input first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    while ( secondNumber ) {
        reversSecondNumber = reversSecondNumber * 10 + secondNumber % 10;
        secondNumber /= 10;
    }
    while ( reversSecondNumber ) {
        firstNumber = firstNumber * 10 + reversSecondNumber % 10;
        reversSecondNumber /= 10;
    }
    cout << endl << firstNumber << endl;
}
5:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
using namespace std;
 
int main()
{
    int firstNumber, secondNumber, reversFirstNumber = 0;
    cout << "Input first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    while ( firstNumber ) {
        reversFirstNumber = reversFirstNumber * 10 + firstNumber % 10;
        firstNumber /= 10;
    }
    while ( reversFirstNumber ) {
        secondNumber = secondNumber * 10 + reversFirstNumber % 10;
        reversFirstNumber /= 10;
    }
    cout << endl << secondNumber << endl;
}
6:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
using namespace std;
 
int main()
{
    int firstNumber, secondNumber, sumFirstNumber = 0, sumSecondNumber = 0;
    cout << "Input first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    while ( firstNumber ) {
        sumFirstNumber += firstNumber % 10;
        firstNumber /= 10;
    }
    while ( secondNumber ) {
        sumSecondNumber += secondNumber % 10;
        secondNumber /= 10;
    }
    cout << endl << sumFirstNumber - sumSecondNumber << endl;
}
1
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
21.03.2011, 16:43 7
11.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <ctime>
#include <cstdlib>
#include <iostream>
 
int main()
{
    srand(static_cast<unsigned>(time(NULL)));
    int n = rand() % 1000, m = rand() % 1000;
    std::cout << "First number: "  << n << std::endl;
    std::cout << "Second number: " << m << std::endl;
    int mul = 1, sum = n + m;
    while(mul *= sum % 10, sum /= 10);
    std::cout << "Transformed: " << mul;
    std::getchar();
    return 0;
}

Не по теме:


lleeoo, когда сами начнем писать?

0
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 25
21.03.2011, 16:57  [ТС] 8
думаю через недели 2!!спс те а ещё решиш!!

Добавлено через 12 минут
vitaska, А ещё решиш пожалуйста!!!!!!!
0
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
21.03.2011, 17:02 9
9:
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
#include <iostream>
#include <cmath>
 
using namespace std;
 
int main()
{
    int firstNumber, secondNumber, res, remain;
    cout << "Input first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    if ( firstNumber > secondNumber ) {
        res = firstNumber / secondNumber ;
        remain = firstNumber % secondNumber;
    }
    else {
        res = secondNumber / firstNumber;
        remain = secondNumber % firstNumber;
    }
    int digits = 0, temp = remain;
    while ( temp ){
        digits++;
        temp /= 10;
    }
    res = res * ( int ) pow( 10.0, digits ) + remain;
    cout << endl << res << endl;
}
1
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 25
21.03.2011, 17:04  [ТС] 10
#include <cmath>
мы не изучали заменить можна както?
0
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
21.03.2011, 17:18 11
Цитата Сообщение от lleeoo Посмотреть сообщение
#include <cmath>
мы не изучали заменить можна както?
по старому это <math.h>, но согласно нового стандарта нужно писать <cmath>
1
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 25
21.03.2011, 17:20  [ТС] 12
реши остальные 8 10 11 12
0
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
21.03.2011, 17:24 13
Цитата Сообщение от lleeoo Посмотреть сообщение
реши остальные 8 10 11 12
ща ваяю)) но я не метеор
1
Эксперт С++
623 / 467 / 57
Регистрация: 28.01.2011
Сообщений: 605
21.03.2011, 17:29 14
vitaska, поправочка: math.h - это заголовочный файл стандартной библиотеки языка Си, а cmath - заголовочный файл, принадлежащий стандартной библиотеке Си++( по сути конечно просто обертка над math.h но разница в мелочах всё же есть), так что о стандарте тут в принципе говорить не стоит, смотря, на каком языке пишет человек.
0
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 25
21.03.2011, 17:30  [ТС] 15
лучшеб помог дорешать!!!!!!
0
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
21.03.2011, 17:36 16
Цитата Сообщение от Ma3a Посмотреть сообщение
vitaska, поправочка: math.h - это заголовочный файл стандартной библиотеки языка Си, а cmath - заголовочный файл, принадлежащий стандартной библиотеке Си++( по сути конечно просто обертка над math.h но разница в мелочах всё же есть), так что о стандарте тут в принципе говорить не стоит, смотря, на каком языке пишет человек.
я ж не спорю но в теме было С++, я потому так и ответил
0
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 25
21.03.2011, 17:58  [ТС] 17
vitaska, Ты реши мне остальные пожалуйста!!!!
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
21.03.2011, 18:07 18
Лучший ответ Сообщение было отмечено как решение

Решение

lleeoo, у вас совесть вообще есть?
Мало того, что вы выложили кучу однотипных простых заданий и сами даже не попробовали решить, дак вы еще сейчас всех подгоняете.
4
101 / 101 / 15
Регистрация: 04.02.2010
Сообщений: 162
21.03.2011, 20:31 19
Получай остаток:
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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
#include <iostream>
#include <cmath>
 
using namespace std;
//-----------------------------------------------------------------------------------
// Подсчет количества цифр в числе
//-----------------------------------------------------------------------------------
int digitsCount( int num )
{
    int digits = 0;
    while ( num ) {
        digits++;
        num /= 10;
    }
    return digits;
}
//-----------------------------------------------------------------------------------
// Определения позиции цифры в заданном числе
//-----------------------------------------------------------------------------------
int digitPos( long num, int key )
{
    int digPos = 0;
    while ( num ) {
        if ( key > num % 10 )
            break;
        digPos++;
        num /= 10;
    }
    return digPos;
}
//-----------------------------------------------------------------------------------
//Сортировка числа по возрастанию
//-----------------------------------------------------------------------------------
int sortNumber( int num )
{
    int res = 0;
    int devizor, remain;
    while ( num ) {
        devizor = ( int ) pow ( 10.0, digitPos( res, num % 10 ) );
        remain = res % devizor;
        if ( res == 0 )
            res = num % 10;
        else 
            res = ( ( res / devizor ) * 10 + num % 10 ) * ( int ) pow ( 10.0, digitsCount( remain ) ) + remain;         
        num = num  / 10;
    }
    return res;
}
//-----------------------------------------------------------------------------------
// Число наоборот
//-----------------------------------------------------------------------------------
int reversNumber( int num )
{
    int res = 0;
    while ( num ) {
        res = res * 10 + num % 10;
        num /= 10;
    }
    return res;
}
//-----------------------------------------------------------------------------------
// Объединение двух чисел в одно
//-----------------------------------------------------------------------------------
int blindNumbers ( int num1, int num2 )
{
    return num1 * ( int ) pow( 10.0, digitsCount( num2 ) )  + num2;
}
//-----------------------------------------------------------------------------------
// Произведение цифр числа
//-----------------------------------------------------------------------------------
int increaseDigits( int num )
{
    int res = 1;
    while ( num ) {
        res = res * ( num % 10 );
        num /= 10;
    }
    return res;
}
 
int main()
{
    int firstNumber, secondNumber;
    //-----------------------------------------------------------------------------------
    // number 8
    //-----------------------------------------------------------------------------------
    cout << "Input first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    cout << endl << reversNumber ( sortNumber( firstNumber * secondNumber ) ) << endl;  
    //-----------------------------------------------------------------------------------
    // number 10
    //-----------------------------------------------------------------------------------
    cout << "\n\nInput first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    firstNumber = blindNumbers( firstNumber, secondNumber );
    cout << endl << sortNumber( firstNumber ) << endl;
    //-----------------------------------------------------------------------------------
    // number 11
    //-----------------------------------------------------------------------------------
    cout << "\n\nInput first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    cout << endl << increaseDigits( firstNumber + secondNumber ) << endl;
    //-----------------------------------------------------------------------------------
    // number 12
    //-----------------------------------------------------------------------------------
    cout << "\n\nInput first number: ";
    cin >> firstNumber;
    cout << "Input second number: ";
    cin >> secondNumber;
    cout << endl << sortNumber( firstNumber * secondNumber ) << endl;
}
1
21.03.2011, 20:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.03.2011, 20:31
Помогаю со студенческими работами здесь

Напишите функцию которая принимает два целых числа и возвращает значение меньшего из них
Протестируйте написанную функцию

Напишите программу, содержащую функцию, которая принимает два числа в качестве аргументов и возвращает их произведения.
Напишите программу, содержащую функцию, которая принимает два числа в качестве аргументов и...

Написать функцию, которая принимает массив 32-ых битных целых чисел и возвращает 16-ые битные целые числа
Доброго времени суток! Знаю, тема возможно избитая и есть на форуме. У меня в условиях задачи дан...

Написать функцию, которая сравнивает два целых числа и возвращает результат сравнения
Кто знает как решить данную задачу на С++? Написать функцию, которая сравнивает два целых числа и...


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

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