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

Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр - C++

Восстановить пароль Регистрация
 
yana11111
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 12
17.10.2013, 21:06     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #1
помогите , пожалуйста , доделать ))а то все перепробовала , а выводиться не то что нужно))


Условие : Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр. (10<m<50)
вот что у меня получилось))


C++
1
2
3
4
5
6
7
8
9
10
11
#include<stdio.h>
void main()
{
int m, i,j,k;
scanf ("%d",&m);
for( i=0; i<=10 ; i++)
for( j=0; j<=10-i ; j++)
 
if(i+j*3+(10-i-j)*5==m) printf ("chiclo %d razlozit mozno\n",m);
else printf ("chiclo %d razlozit nelzya\n",m);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.10.2013, 21:06     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр
Посмотрите здесь:

C++ Можно сделать так чтобы каждый раз не вводить матрицу?
как можно откопилировать программу на C++ так, чтобы получить "чистый бинарный файл"? C++
C++ Задача на циклы: Можно ли разменять m рублей
C++ 6. Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр. (10<m<50)
C++ Переставить цифры в этом числе так, чтобы получить наименьшее из чисел
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,428
17.10.2013, 21:10     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
bool check(const int x)
{
    for (int i=0; i <= 10; i++)
        for (int j=0; j <= 10; j++)
            for (int k=0; k <= 10; k++)
                if (i + j*3 + k*5 == x && i + j + k == 10)
                    return true;
    return false;
}
 
int main()
{
    int x; // наше число
    std::cin >> x;
    std::cout << (check(x) ? "Yes\n" : "No\n");
}
yana11111
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 12
17.10.2013, 21:16  [ТС]     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #3
Цитата Сообщение от MrGluck Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
bool check(const int x)
{
    for (int i=0; i <= 10; i++)
        for (int j=0; j <= 10; j++)
            for (int k=0; k <= 10; k++)
                if (i + j*3 + k*5 == x && i + j + k == 10)
                    return true;
    return false;
}
 
int main()
{
    int x; // наше число
    std::cin >> x;
    std::cout << (check(x) ? "Yes\n" : "No\n");
}


спасибо, нодело в том , что я совсем новичок, только месяц, мне нужно как-то очень просто , спростыми фунуциями, а то преподаватель не примет))
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,428
17.10.2013, 21:20     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #4
yana11111, где здесь сложные функции?
Проще задачку не решите
yana11111
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 12
17.10.2013, 21:23  [ТС]     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #5
Цитата Сообщение от MrGluck Посмотреть сообщение
yana11111, где здесь сложные функции?
Проще задачку не решите



спасибо))попытаюсь так сдать))
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,428
17.10.2013, 21:30     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #6
Цитата Сообщение от yana11111 Посмотреть сообщение
попытаюсь так сдать))
а если попробовать понять?
Тут единственная нетривиальная с точки зрения синтаксиса для новичка вещь - тернарный оператор, и то, если он с ним раньше не встречался, да и это легко понять по литералам в выводе.
yana11111
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 12
17.10.2013, 21:38  [ТС]     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #7
Цитата Сообщение от MrGluck Посмотреть сообщение
а если попробовать понять?
Тут единственная нетривиальная с точки зрения синтаксиса для новичка вещь - тернарный оператор, и то, если он с ним раньше не встречался, да и это легко понять по литералам в выводе.


у нас было 7 занятий , прошли if ,switch ,for , do while и while.
все кроме 5-8, 13 и 15 строки мне не знакомо, не проходили
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4927 / 2670 / 243
Регистрация: 29.11.2010
Сообщений: 7,428
17.10.2013, 21:50     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream> // заголовочный файл для ввода/вывода
 
bool check(const int x) // объявляем функцию check, которая принимает один параметр: константное(неизменяемое) число типа int. функция возвращает тип bool - истину, если разменять можно и ложь, если нельзя 
{ // все, что в фигурных скобках - тело функции
    for (int i=0; i <= 10; i++) // вложенные циклы for, их вы вроде проходили
        for (int j=0; j <= 10; j++)
            for (int k=0; k <= 10; k++)
                if (i + j*3 + k*5 == x && i + j + k == 10)
                    return true; // возвращаем истину (если разменять удалось)
    return false; // если перепробовали все возможные комбинации, но так и не вернули истину, то возвращаем ложь
}
 
int main()
{
    int x; // наше число
    std::cin >> x; // считываем число с клавиатуры
    std::cout << (check(x) ? "Yes\n" : "No\n"); // выводим на экран либо Yes, если функция с аргументом x вернула истину, или No иначе. Используем тернарный оператор. Аналог записи if-else. if(check(x)) "Yes" else "No"
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.10.2013, 21:57     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр
Еще ссылки по теме:

Есть сумма, нужно подобрать так купюры, чтобы разменять эту сумму без остатка C++
Покупатель должен заплатить в кассу 5 руб. У него имеются купюры по 1, 5, 10, 50, 100, 500, 1000 и 10000 руб C++
C++ Можно ли сделать так чтобы к классу можно было бы одновременно обращаться как к массиву

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

Или воспользуйтесь поиском по форуму:
yana11111
0 / 0 / 0
Регистрация: 17.10.2013
Сообщений: 12
17.10.2013, 21:57  [ТС]     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр #9
Цитата Сообщение от MrGluck Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream> // заголовочный файл для ввода/вывода
 
bool check(const int x) // объявляем функцию check, которая принимает один параметр: константное(неизменяемое) число типа int. функция возвращает тип bool - истину, если разменять можно и ложь, если нельзя 
{ // все, что в фигурных скобках - тело функции
    for (int i=0; i <= 10; i++) // вложенные циклы for, их вы вроде проходили
        for (int j=0; j <= 10; j++)
            for (int k=0; k <= 10; k++)
                if (i + j*3 + k*5 == x && i + j + k == 10)
                    return true; // возвращаем истину (если разменять удалось)
    return false; // если перепробовали все возможные комбинации, но так и не вернули истину, то возвращаем ложь
}
 
int main()
{
    int x; // наше число
    std::cin >> x; // считываем число с клавиатуры
    std::cout << (check(x) ? "Yes\n" : "No\n"); // выводим на экран либо Yes, если функция с аргументом x вернула истину, или No иначе. Используем тернарный оператор. Аналог записи if-else. if(check(x)) "Yes" else "No"
}
спасибо)) вроде начинаю понимать))
Yandex
Объявления
17.10.2013, 21:57     Можно ли разменять m руб. на рублёвые, трёхрублёвые, пятирублёвые купюры так, чтобы получить всего 10 купюр
Ответ Создать тему
Опции темы

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