Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.87
Osman
1 / 1 / 0
Регистрация: 07.10.2012
Сообщений: 16
#1

Функция сравнения двух чисел - C++

04.11.2012, 15:04. Просмотров 3992. Ответов 7
Метки нет (Все метки)

Проверьте кто-нибудь код пожалуйста.

Задача : Написать программу, выводящую на экран результат сравнения двух чисел в виде: A=10 B=5: A>B. Основная программа запрашивает два числа, передает их в функцию и в зависимости от возвращенного значения выводит сообщение. Функция возвращает 1 если A больше B, 0 если A равно B, -1 если A меньше B.
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>
 
using namespace std;
 
 int Mycompare (int a, int b)
{
    if (a>b)
    {
        cout << "A = " << a << "\n";
        cout << "B = " << b << "\n";
        cout << "A > B " << "\n";
        return 1;
    }
 
    if (a<b)    {
        cout << "A = " << a << "\n";
        cout << "B = " << b << "\n";
        cout << "A < B \n" << "\n";
        return -1;
    }
 
    if (a == b)
        {
        cout << "A = " << a << "\n";
        cout << "B = " << b << "\n";
        cout << "A = B " << "\n";
        return 0;
        }
 
 
}
 
int main()
{    int A;
     int B;
    cout << "VVedite A: \n"; // Введите первое число
    cin >> A;
    cout << "Vvedite B: \n"; // Введите второе число
    cin >> B;
    Mycompare(A,B);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.11.2012, 15:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция сравнения двух чисел (C++):

Функция сравнения двух строк - C++
Написать функцию сравнения двух строк, используя указатели на них. Прошу помочь написать код программа для заданного условия

Перегруженная функция сравнения двух дат - C++
Как сократить функцию которая сравнивает две даты? Получилось кое-как, да и еще предупреждение показывает, что значение возвращается не...

Функция для сравнения двух массивов - C++
Функция нужна для ответа на вопрос задачи &quot;Верно ли, что все элементы 1-ой последовательности входят во 2-ю последовательность.&quot;...

Функция для сравнения двух символьных последовательностей - C++
С помощью поинтеров напишите функцию для сравнения двух символьных последовательностей ( без strcmp() ). плиз очень надо!

Объяснить код сравнения двух чисел без If - C++
int cmp(int a, int b) { return (a &lt; b ? -1 : (a &gt; b ? 1 : 0)); } Это сравнение двух чисел, Тут какая то скрытая конструкция...

Зацените программу сравнения двух чисел с помощью класса - C++
#include &lt;math.h&gt; #include &lt;stdlib.h&gt; #include &lt;iostream.h&gt; class MyClass{ int x,y; public: MyClass(int x1, int y1){ x =...

7
Catstail
Модератор
22832 / 11198 / 1812
Регистрация: 12.02.2012
Сообщений: 18,439
04.11.2012, 15:36 #2
Все хорошо... А пусть C++ проверит. Запусти и убедись!
0
hoob
20 / 12 / 1
Регистрация: 04.11.2012
Сообщений: 89
Записей в блоге: 1
04.11.2012, 16:10 #3
Я бы сделал эту функцию void, т.е той, которая после своего выполнения ничего не возвращает. Что бы упростить код, можно в функции вынести вывод чисел А и В за условный оператор. Получилось как-то так:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void Mycompare (int a, int b)
{
    cout << "A = " << a << "\n";
    cout << "B = " << b << "\n";
 
    if (a>b)
        cout << "A > B " << "\n";
 
    if (a<b)
        cout << "A < B \n" << "\n";
 
    if (a == b)
        cout << "A = B " << "\n";
 
 
}
0
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
04.11.2012, 16:18 #4
Цитата Сообщение от Osman Посмотреть сообщение
Функция возвращает 1 если A больше B, 0 если A равно B, -1 если A меньше B.
hoob, воидная ф-ция тут не нужна, читайте внимательнее первый пост.
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
04.11.2012, 16:21 #5
Цитата Сообщение от Catstail Посмотреть сообщение
Все хорошо... А пусть C++ проверит. Запусти и убедись!
Не совсем.
Цитата Сообщение от Osman Посмотреть сообщение
Основная программа запрашивает два числа, передает их в функцию и в зависимости от возвращенного значения выводит сообщение.
У Вас функция Mycompare выводит сообщения, а должна только сравнивать числа и возвращать необходимое значение. А выводом результата на экран должна заниматься функция main
1
hoob
20 / 12 / 1
Регистрация: 04.11.2012
Сообщений: 89
Записей в блоге: 1
04.11.2012, 16:35 #6
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
int Mycompare (int a, int b)
{
    cout << "A = " << a << "\n";
    cout << "B = " << b << "\n";
 
    if (a>b) 
         return 1;       
 
    if (a<b) 
         return -1;
 
    if (a == b) 
         return 0;
 }
int main()
{   
    int A,B,res;
    cout << "VVedite A: " << endl; // Введите первое число
    cin >> A;
    cout << "Vvedite B: " << endl; // Введите второе число
    cin >> B;
    res=Mycompare(A,B);
    if (res==1)
        cout << "A>B" << endl;
    if (res==-1)
        cout << "A<B" << endl;
    if (res==0)
        cout << "A=B" << endl;
}
0
Osman
1 / 1 / 0
Регистрация: 07.10.2012
Сообщений: 16
04.11.2012, 16:48  [ТС] #7
спасибо всем
0
Джек
5 / 5 / 0
Регистрация: 16.08.2011
Сообщений: 77
04.11.2012, 17:02 #8
Можно так.

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <conio.h>


//---------------------------------------------------------------------------

#pragma argsused
int MyCompare( int ,int );
int main()
{
int x=0;
int y=0;
cout<<"vvedite vashi danie:\n";
cin>>x>>y;

while(x!=00&&y!=00)
{
cout<<MyCompare(x,y);
cout<<endl;
cin>>x>>y;
}

return 0;
}
int MyCompare( int a,int b)
{
if(a>b)
{
cout<<"a>b..."<<endl<<"a=";
return a;}
if(b>a)
{
cout<<"b>a..."<<endl<<"b=";
return b;
}
if(a==b)
{cout<<"a=b..."<<endl;
cout<<"a=";
return a;
cout<<"b=";
return b;};

}

//---------------------------------------------------------------------------

Добавлено через 3 минуты
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <conio.h>


//---------------------------------------------------------------------------

#pragma argsused
int MyCompare( int ,int );
int main()
{
int x=0;
int y=0;
cout<<"vvedite vashi danie:\n";

while(cin>>x>>y)
{
cout<<MyCompare(x,y);
cout<<endl;
cin>>x>>y;
}

return 0;
}
int MyCompare( int a,int b)
{
if(a>b)
{
cout<<"a>b..."<<endl<<"a=";
return a;}
if(b>a)
{
cout<<"b>a..."<<endl<<"b=";
return b;
}
if(a==b)
{cout<<"a=b..."<<endl;
cout<<"a=";
return a;
cout<<"b=";
return b;};

}

//---------------------------------------------------------------------------
0
04.11.2012, 17:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.11.2012, 17:02
Привет! Вот еще темы с ответами:

Найти сумму двух чисел, полученных в результате сравнения чисел, полученных в результате вычисления выражений - C++
Даны действительные числа a, b, c. Найти: max(a+b, b+c) + min(a+c, b)

Функция сложения двух чисел - C++
здравствуйте все, сидящие на форуме в столь поздний час. Не могли бы вы мне чем нибудь помочь с заданием с института, а то я его совсем...

функция сложения двух чисел - C++
Написать функцию сложения двух чисел, используя только прибавление единицы.

Функция определения максимума двух чисел - C++
Не понимаю как написать. Для данных вещественных чисел x и y рассчитать, определив в программе функцию определения максимума двух...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru