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

Все возможные a и b по формуле с вложенными циклами - C++

Восстановить пароль Регистрация
 
deepLulz
 Аватар для deepLulz
4 / 4 / 0
Регистрация: 12.02.2012
Сообщений: 46
04.03.2012, 14:37     Все возможные a и b по формуле с вложенными циклами #1
Само задание:
Любое натуральное число N (N>7) можно получить по формуле n = 3a + 5b, где a и b - натуральные числа. Исходя из полученного N найти все a и b.

К сожалению я не могу понять самой сути задания. Может кто растолкует. И еще: как выполнить проверку на вводимое значение? Я попытался реализовать это вот так:
C++
1
2
3
4
5
6
7
8
9
main(){
    int n, a, b;
    while (n > 7){
        printf("Enter N (N > 7) = ");
        scanf("%i",&n);
        if (n <= 7) printf("Wrong number");
    }
 
}
При вводе числа меньше 7ми мне выдает "Wrong number" и на этом программа завершается.
P.S. Желательно помогите решить проблему с основным заданием, так как проверка не обязательна
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2012, 14:37     Все возможные a и b по формуле с вложенными циклами
Посмотрите здесь:

Воспользуйтесь вложенными циклами C++
Воспользуйтесь вложенными циклами C++
Все возможные комбинации 5 чисел C++
C++ разложение на все возможные слагаемые
C++ Все возможные комбинации из 4 цифр
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Hack_ERR
5 / 5 / 0
Регистрация: 03.03.2012
Сообщений: 18
04.03.2012, 15:07     Все возможные a и b по формуле с вложенными циклами #2
Может так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include <conio.h>
 
int main()
{
int a,b,n;
std::cin>>n;
for (b=1;b<n;b++){
if (((n-5*b)%3==0)&&((n-5*b)/3)>0){
    std::cout<<"a="<<(n-5*b)/3<<"b="<<b<<std::endl;
}
}
getch();
return 0;
}
deepLulz
 Аватар для deepLulz
4 / 4 / 0
Регистрация: 12.02.2012
Сообщений: 46
04.03.2012, 15:21  [ТС]     Все возможные a и b по формуле с вложенными циклами #3
Цитата Сообщение от Hack_ERR Посмотреть сообщение
Может так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include <conio.h>
 
int main()
{
int a,b,n;
std::cin>>n;
for (b=1;b<n;b++){
if (((n-5*b)%3==0)&&((n-5*b)/3)>0){
    std::cout<<"a="<<(n-5*b)/3<<"b="<<b<<std::endl;
}
}
getch();
return 0;
}
Спасибо, но нет. В условии задания сказано, что нужно использовать вложенные циклы.
Hack_ERR
5 / 5 / 0
Регистрация: 03.03.2012
Сообщений: 18
04.03.2012, 15:34     Все возможные a и b по формуле с вложенными циклами #4
Вот с вложенным)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "stdafx.h"
#include <conio.h>
 
int main()
{
int a,b,n;
std::cin>>n;
for (b=1;b<n;b++){
    for (a=1;a<n;a++){
        if ((a==(n-5*b)/3)&&((n-5*b)%3==0)) std::cout<<"a="<<a<<" b="<<b<<std::endl;
    }
}
getch();
return 0;
}
deepLulz
 Аватар для deepLulz
4 / 4 / 0
Регистрация: 12.02.2012
Сообщений: 46
04.03.2012, 15:44  [ТС]     Все возможные a и b по формуле с вложенными циклами #5
Цитата Сообщение от Hack_ERR Посмотреть сообщение
Вот с вложенным)
Огромное спасибо!

Добавлено через 6 минут
Проверку на вводимое значение реализовал следующим образом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
main(){
    int n, a, b;
    printf("Enter N (N>7) = ");
    do{
        scanf("%i",&n);
        if (n <= 7){
            printf("Incorrect number. Please re-enter N (N>7) = ");
        }
    } while (n <= 7);
    getch ();
    return 0;
}
Может кому пригодиться.
Hack_ERR
5 / 5 / 0
Регистрация: 03.03.2012
Сообщений: 18
04.03.2012, 15:47     Все возможные a и b по формуле с вложенными циклами #6
Вам нужно, чтобы проверка велась до тех пор, пока не будет введено число, большее 7? Тогда так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <conio.h>
 
int main()
{
int a,b,n;
n = 0;
while (n<=7){
std::cin>>n;
if (n<=7){
    std::cout<<"Wrong"<<std::endl;
}
}
for (b=1;b<n;b++){
    for (a=1;a<n;a++){
        if ((a==(n-5*b)/3)&&((n-5*b)%3==0)) std::cout<<"a="<<a<<" b="<<b<<std::endl;
    }
}
getch();
return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2012, 15:52     Все возможные a и b по формуле с вложенными циклами
Еще ссылки по теме:

C++ Все возможные комбинации длины k из 0 и 1
Массивы. Вычислить по формуле и вывести на экран все возможные комбинации сумм чисел C++
Все возможные комбинации из 10 цифр по n C++

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

Или воспользуйтесь поиском по форуму:
deepLulz
 Аватар для deepLulz
4 / 4 / 0
Регистрация: 12.02.2012
Сообщений: 46
04.03.2012, 15:52  [ТС]     Все возможные a и b по формуле с вложенными циклами #7
Hack_ERR, спасибо. Все работает!
Yandex
Объявления
04.03.2012, 15:52     Все возможные a и b по формуле с вложенными циклами
Ответ Создать тему
Опции темы

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