0 / 0 / 0
Регистрация: 24.03.2016
Сообщений: 12
1

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

03.04.2016, 16:57. Показов 1615. Ответов 9
Метки нет (Все метки)

Разработать функцию типа int, что возвращает сумму остатка от деления первого и второго аргументов на 5, если сумма больше 20, иначе возвращает число 0. Помогите пжл, частично сделал, но конец не пойму как
Спасибо заранее))
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.04.2016, 16:57
Ответы с готовыми решениями:

Разработать функцию, возвращающую сумму первого и второго аргументов, если сумма больше 5, иначе - ноль
Разработать функцию типа int, что возвращает сумму первого и второго аргументов, если сумма большая...

Разработать функцию типа float, возвращающую абсолютное значение доли от деления первого аргумента на второй
Разработайте функцию типа float, что возвращает абсолютное значение доли от деления первого ...

Составьте пользовательскую функцию, возвращающую сумму или произведение аргументов
Пожалуйста помогите, нужно Составить пользовательскую функцию, возвращающую сумму чисел , если...

Дано целое число N(>0).используя операции деления нацело и взятия остатка от деления, найти количество и сумму его цифр
Дано целое число N(>0).используя операции деления нацело и взятия остатка от деления, найти ...

9
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
03.04.2016, 19:14 2
i_ZaDrOt,
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
//Разработать функцию типа int, что возвращает сумму остатка от деления первого и второго аргументов на 5, если сумма больше 20, иначе возвращает число 0
#include <iostream>
 
int ret(int,int);
 
int main()
{
    int a,b;
    std :: <<"Введите делимое и делитель через пробел: ";
    std :: cin>>a>>b;
    std :: cout<<ret(a,b);
    system("pause");
    return 0;
}
int ret (int a,int b)
{
    double suma=a/5;
    double sumb=b/5;
    int temp=sumb+suma;
    temp=static_cast<int>(sum);
    if (temp>20)
    return temp;
    else 
    return 0;
}
0
Вездепух
Эксперт CЭксперт С++
10431 / 5701 / 1552
Регистрация: 18.10.2014
Сообщений: 14,082
03.04.2016, 19:19 3
-ДоМоВоЙ-, задание прочитайте внимательнее. Не говоря уже о том, что ваш код содержит очевидные ошибки.
1
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
03.04.2016, 21:30 4
i_ZaDrOt, выше написанный код неверный... Вот этот если правильно понял задание верный...
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, что возвращает сумму остатка от деления первого и второго аргументов на 5, если сумма больше 20, иначе возвращает число 0
#include <iostream>
 
int ret(int,int);
 
int main()
{
    int a,b;
    std :: cout<<"Введите два числа через пробел: ";
    std :: cin>>a>>b;
    std :: cout<<ret(a,b);
    system("pause");
    return 0;
}
int ret (int a,int b)
{
    double suma=a/5.0;
    double sumb=b/5.0;
 
    double temp1=static_cast<int>(suma);
    double sum1=(suma - temp1)*10;
    double temp2=static_cast<int>(sumb);
    double sum2=(sumb - temp2)*10;
    sum1+=sum2;
    if (sum1>20)
    return sum1;
    else 
    return 0;
}
0
Вездепух
Эксперт CЭксперт С++
10431 / 5701 / 1552
Регистрация: 18.10.2014
Сообщений: 14,082
03.04.2016, 21:37 5
Цитата Сообщение от -ДоМоВоЙ- Посмотреть сообщение
C++
1
2
3
4
5
6
7
    double suma=a/5.0;
    double sumb=b/5.0;
 
    double temp1=static_cast<int>(suma);
    double sum1=(suma - temp1)*10;
    double temp2=static_cast<int>(sumb);
    double sum2=(sumb - temp2)*10;
Это вы так "остаток от деления вычисляете"? Во-первых, ваши загадочные вычисления даже близко не дают остатка от деления. Во-вторых, остаток отделения в С++ вычисляется оператором % в одно действие. И никакой плавающей арифметики в этой задаче и близко не должно быть.
0
1172 / 833 / 359
Регистрация: 26.02.2015
Сообщений: 3,743
03.04.2016, 21:44 6
Я так понимаю, что в задании говорится о сумме исходных чисел? Если их сумма больше 20, то выводим сумму остатков деления на 5, так? Ведь сумма остатков от деления на 5 никогда не может быть больше 20 вроде?
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
#include <iostream>
 
using namespace std;
 
int summRest(const int& a, const int& b);
 
int main() {
    setlocale(LC_ALL, "Russian");
 
    int firstNumber = 0, secondNumber = 0;
 
    cout << "Введите первое число: ";
    cin >> firstNumber;
    cout << "Введите второе число: ";
    cin >> secondNumber;
 
    cout << summRest(firstNumber, secondNumber) << endl;
 
    system("PAUSE");
    return 0;
}
 
int summRest(const int& a, const int& b) {
    if (a + b > 20) {
        return (a % 5) + (b % 5);
    } else {
        return 0;
    }
}
0
0 / 0 / 0
Регистрация: 24.03.2016
Сообщений: 12
03.04.2016, 21:52  [ТС] 7
Как мне объяснили то мы вводим 1 и 2 число, потом делим эти числа на 5, сумму этих значений прибавляем, если сумма не больше 20 возвращаем 0. Как-то так я сам не понял изначально задания((
0
1172 / 833 / 359
Регистрация: 26.02.2015
Сообщений: 3,743
03.04.2016, 21:58 8
Лучший ответ Сообщение было отмечено i_ZaDrOt как решение

Решение

i_ZaDrOt, просто остаток от деления на 5 не может быть больше 4... А исходя из этого можно предположить, что сумма остатков от деления на 5 двух чисел никогда не превысит 8, т.е. всегда будет выдавать 0 программа.
А вот если пытаться складывать сами числа, то результат может быть непредсказуемым. :-) В любом случае, если тебе надо так, то вот второй вариант.

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
#include <iostream>
 
using namespace std;
 
int summRest(const int& a, const int& b);
 
int main() {
    setlocale(LC_ALL, "Russian");
 
    int firstNumber = 0, secondNumber = 0;
 
    cout << "Введите первое число: ";
    cin >> firstNumber;
    cout << "Введите второе число: ";
    cin >> secondNumber;
 
    cout << summRest(firstNumber, secondNumber) << endl;
 
    system("PAUSE");
    return 0;
}
 
int summRest(const int& a, const int& b) {
    if ((a % 5) + (b % 5) > 20) {
        return (a % 5) + (b % 5);
    } else {
        return 0;
    }
}
0
165 / 164 / 124
Регистрация: 19.01.2016
Сообщений: 594
Записей в блоге: 1
03.04.2016, 22:11 9
i_ZaDrOt,
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
//Разработать функцию типа int, что возвращает сумму остатка от деления первого и второго аргументов на 5, если сумма больше 20, иначе возвращает число 0
#include <iostream>
 
int ret(int,int);
 
int main()
{
    int a,b;
    std :: cout<<"Введите два числа через пробел: ";
    std :: cin>>a>>b;
    std :: cout<<ret(a,b);
    system("pause");
    return 0;
}
int ret (int a,int b)
{
    int suma=a%5;
    int sumb=b%5;
 
    suma+=sumb;
    if (suma>20)
    return sum1;
    else 
    return 0;
}
Добавлено через 5 минут
i_ZaDrOt, TheCalligrapher, не правильно понял про остаток... Сейчас сообразил...
0
0 / 0 / 0
Регистрация: 24.03.2016
Сообщений: 12
05.04.2016, 19:20  [ТС] 10
Спасибо большое всем))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.04.2016, 19:20
Помогаю со студенческими работами здесь

Дано целое число N(>0).используя операции деления нацело и взятия остатка от деления, найти количество и сумму его цифр.
помогите, пожалуйста Дано целое число N(&gt;0).используя операции деления нацело и взятия остатка от...

Как определить, делится ли число на «3» без остатка, не используя деления и определения остатка от деления
Написать подпрограмму, которая определяет, делится ли число на «3» без остатка, не используя...

Написать функцию, возвращающую сумму элементов массива с индексами, которые делятся на 3 без остатка
Задан одномерный массив из 300 элементов. Написать программу, которая содержит: 1)Ф-ию заполнения...

Реализовать функцию find-number, возвращающую наименьшее число в интервале [a, b], которое без остатка делится на с
Реализуйте процедуру (find-number a b c), возвращающее наименьшее число в интервале , которое без...


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

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

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