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

function - C++

Восстановить пароль Регистрация
 
 
kasadi
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 65
12.02.2014, 19:27     function #1
Всем привет! Начал изучать функции и возникла проблема
Что должно возвращать функция maxim?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <Windows.h>
using namespace std;
int maxim(int a, int b) {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    cout << "Введите 2 числа";
    cin >> a >> b;
    if (a > b) {
        cout << "Максимальное число: " << a;
    }
    else cout << b;
    return;
}
int main()
{
    int x, y;
    cin >> x >> y;
    cout << maxim(x, y);
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2014, 19:27     function
Посмотрите здесь:

C++ C:\Dev-Cpp\lib\vector.h `ostream' is neither function nor member function; cannot be declared friend
C++ function
const function C++
C++ struct function
friend function C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
12.02.2014, 19:55     function #21
Сообщение было отмечено автором темы, экспертом или модератором как ответ
а так если?
C++
1
2
3
4
5
6
7
8
9
int maxim(int a, int b, int c) {
    if (a > b && a > c) {
        return a;
    }
    if (b > a && b> c) {
        return b;
    }
    return c;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kasadi
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 65
12.02.2014, 19:58  [ТС]     function #22
Выводится последняя заданная цифра =\

Добавлено через 1 минуту
Цитата Сообщение от mustimur Посмотреть сообщение
а так если?
C++
1
2
3
4
5
6
7
8
9
int maxim(int a, int b, int c) {
    if (a > b && a > c) {
        return a;
    }
    if (b > a && b> c) {
        return b;
    }
    return c;
}
Точно, что то ступил, спасибо
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
12.02.2014, 19:58     function #23
Цитата Сообщение от kasadi Посмотреть сообщение
Выводится последняя заданная цифра =\
и на мой код тоже?
kasadi
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 65
12.02.2014, 19:59  [ТС]     function #24
Цитата Сообщение от mustimur Посмотреть сообщение
и на мой код тоже?
Да я написал это до обновления страницы. С Вашим кодом все прошло гладко
petyahohlov
27 / 22 / 5
Регистрация: 31.07.2013
Сообщений: 119
12.02.2014, 20:00     function #25
Цитата Сообщение от ValeryS Посмотреть сообщение
ну у меня его нет
но открой его и скорее всего увидишь
C++
1
2
#include <iostream>
using namespace std;
этих заглушек в современном компиляторах уже нет
переучивайся пока не поздно
чему в универе учат то и учу)
ValeryS
Модератор
6375 / 4841 / 443
Регистрация: 14.02.2011
Сообщений: 16,044
12.02.2014, 20:04     function #26
Цитата Сообщение от kasadi Посмотреть сообщение
if (a > b > c) {
return a;
}
что ты хочешь этим получить?
хочешь я тебе раскажу что происходит
сначала сравниваются a > b 4>5 результат ЛОЖЬ(0)
потом этот ноль сравнивается с 1 ЛОЖЬ условие не исполняется
тоже и со вторым условием, в результате остается строчка return c
она и возвращает 1

Добавлено через 2 минуты
Цитата Сообщение от petyahohlov Посмотреть сообщение
чему в универе учат то и учу)
там методички времен царя Гороха
работать то потом тебе, а не преподу
kasadi
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 65
12.02.2014, 20:04  [ТС]     function #27
Цитата Сообщение от ValeryS Посмотреть сообщение
что ты хочешь этим получить?
хочешь я тебе раскажу что происходит
сначала сравниваются a > b 4>5 результат ЛОЖЬ(0)
потом этот ноль сравнивается с 1 ЛОЖЬ условие не исполняется
тоже и со вторым условием, в результате остается строчка return c
она и возвращает 1
Спасибо за разъяснение
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
12.02.2014, 20:07     function #28
Цитата Сообщение от ValeryS Посмотреть сообщение
#include <iostream.h>
Если приглядеться то постах это нет нет да и проскользнет.... Действительно интересно для каких компиляторов это?
petyahohlov
27 / 22 / 5
Регистрация: 31.07.2013
Сообщений: 119
12.02.2014, 20:09     function #29
а если я буду в visual C++ 6
c
C++
1
#include <iostream.h>
писать using namespace std;
ничего страшного?
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
12.02.2014, 20:13     function #30
Цитата Сообщение от ValeryS Посмотреть сообщение
там методички времен царя Гороха
работать то потом тебе, а не преподу
А Вы попробуйте попишите-ка чтоб они актуальными все время оставались, да и деньги на издательство повыбивайте, не говоря про корректоров, которые к каждой запятой придираются (не везде, но у нас так)

Добавлено через 3 минуты
Цитата Сообщение от petyahohlov Посмотреть сообщение
писать using namespace std;
ничего страшного?
не всегда была здесь одна тема суть проблемы была такова:
было так (лишнее выкинул)
C++
1
2
3
4
5
using name space std;
int main()
{
int count;
}
т.е. было пересечение имени переменной и объекта std и программа не запускалась..
kasadi
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 65
12.02.2014, 20:16  [ТС]     function #31
А тут в чем фейл?)) Точнее будет спросить "как расписать все это"? Суть в том что сперва надо сравнить 2 цифры, потом еще 2, а потом высшие из 4-ых.
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
#include <iostream>
#include <Windows.h>
using namespace std;
int maxim1(int a, int b) {
    if (a > b) {
        return a;
    }
    return b;
}
    int maxim2(int c, int d) {
        if (c > d) {
            return c;
        }
        return d;
    }
    int maxim(int maxim1,int maxim2) {
        if (maxim1 > maxim2) {
            return maxim1;
        }
        return maxim2;
    }
    int main() {
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
        int e, f, g, h;
        cout << "Введите 4 цифры \n";
        cin >> e >> f >> g >> h;
        cout << "Макс. значение: " << maxim(e, f, g, h);
        return 0;
    }
petyahohlov
27 / 22 / 5
Регистрация: 31.07.2013
Сообщений: 119
12.02.2014, 20:20     function #32
Цитата Сообщение от kasadi Посмотреть сообщение
А тут в чем фейл?)) Точнее будет спросить "как расписать все это"? Суть в том что сперва надо сравнить 2 цифры, потом еще 2, а потом высшие из 4-ых.
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
#include <iostream>
#include <Windows.h>
using namespace std;
int maxim1(int a, int b) {
    if (a > b) {
        return a;
    }
    return b;
}
    int maxim2(int c, int d) {
        if (c > d) {
            return c;
        }
        return d;
    }
    int maxim(int maxim1,int maxim2) {
        if (maxim1 > maxim2) {
            return maxim1;
        }
        return maxim2;
    }
    int main() {
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
        int e, f, g, h;
        cout << "Введите 4 цифры \n";
        cin >> e >> f >> g >> h;
        cout << "Макс. значение: " << maxim(e, f, g, h);
        return 0;
    }
мне кажется ошибка в вызываемых параметрах функции
C++
1
maxim
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
12.02.2014, 20:21     function #33
Цитата Сообщение от kasadi Посмотреть сообщение
А тут в чем фейл?))
А тут караулнапример так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <Windows.h>
using namespace std;
int maxim(int a, int b) {
    if (a > b) {
        return a;
    }
    return b;
}
  
    int main() {
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
        int e, f, g, h;
        cout << "Введите 4 цифры \n";
        cin >> e >> f >> g >> h;
        cout << "Макс. значение: " << maxim( maxim(e, f),  maxim(g, h));
        return 0;
    }
Все остальное в корзину!
kasadi
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 65
12.02.2014, 20:21  [ТС]     function #34
Ну да, там у меня 4 значения в maxim. Как раз я не могу додуматься как это разобрать
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
12.02.2014, 20:23     function #35
Цитата Сообщение от "petyahohlov;5773908"[CPP
]int maxim(int maxim1,int maxim2) {
* * * * if (maxim1 > maxim2) {
* * * * * * return maxim1;
* * * * }
* * * * return maxim2;[/CPP]
* * }
Функция требует двух переменных, а вы в нее 4 запихиваете....
kasadi
0 / 0 / 0
Регистрация: 13.01.2014
Сообщений: 65
12.02.2014, 20:23  [ТС]     function #36
Цитата Сообщение от mustimur Посмотреть сообщение
А тут караулнапример так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <Windows.h>
using namespace std;
int maxim(int a, int b) {
    if (a > b) {
        return a;
    }
    return b;
}
  
    int main() {
        SetConsoleCP(1251);
        SetConsoleOutputCP(1251);
        int e, f, g, h;
        cout << "Введите 4 цифры \n";
        cin >> e >> f >> g >> h;
        cout << "Макс. значение: " << maxim( maxim(e, f),  maxim(g, h));
        return 0;
    }
Все остальное в корзину!
Здорово, жаль я не додумался о двойном maxim. (я просто сонный с занятий, а надо бы c++ зубрить)
ValeryS
12.02.2014, 20:23
  #37

Не по теме:

Цитата Сообщение от mustimur Посмотреть сообщение
А Вы попробуйте попишите-ка чтоб они актуальными все время оставались, да и деньги на издательство повыбивайте, не говоря про корректоров, которые к каждой запятой придираются (не везде, но у нас так)
выход то в чем?
Ничего не делать?
иногда в поисках решения проблемы, лажу по интернету и нахожу методички
достаточно современные
Томск Новосибирск Москва ну и т.д.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2014, 20:28     function
Еще ссылки по теме:

virtual ~Function(); virtual function(); C++
Friend function C++
C++ 'pf' cannot be used as a function

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

Или воспользуйтесь поиском по форуму:
mustimur
268 / 222 / 57
Регистрация: 22.11.2013
Сообщений: 832
Записей в блоге: 1
12.02.2014, 20:28     function #38
Цитата Сообщение от ValeryS Посмотреть сообщение
выход то в чем?
Ничего не делать?
иногда в поисках решения проблемы, лажу по интернету и нахожу методички
достаточно современные
Томск Новосибирск Москва ну и т.д.

Не по теме:

Не спорю, бить надо не повортливость! Я сам доцент готовлю будущих инженеров (правда не по информатике) Но вы и нас поймите в образовательных стандартах иногда такое написано, что и Задорнову в самых смелых снах не приснится а мы им обязаны следовать, а нам бы при новых реформах дай бог азы хоть дать..

Yandex
Объявления
12.02.2014, 20:28     function
Ответ Создать тему
Опции темы

Текущее время: 23:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru