#include <iostream>
using namespace std;
bool srav(int a, int b)
{
if (a > b)
return 1;
else
return 0;
}
int main()
int number = 0;
int AB = 1, CD = 1;
cout << "Input A , B\n";
//Произведение A на B
for (int i = 0; i <= 1; i++)
cin >> number;
AB *= number;
cout << "A*B = " << AB << endl;
CD *= number;
cout << "C*D = " << CD << endl;
if(srav(AB,CD))
cout<<"A*B > C*D";
cout << "C*D > A*B";
Объяснение:
Решение перебором АДЛТДТАТ
Для начала можно понять, что первая точка и продолжение подходит только для буквы А и в итоге остаётся: -...-..--..-.--, дальше у нас 2 варианта:
1) АД.-..--..-.-- >> 1 - АДА..--..-.-- 2 - АДЛ--..-.--
2)АТ...-..--..-.-- >> АТЖ..--..-.--
Продолжаем перебирать:
1) АДА..--..-.-- больше нельзя продолжить т.к букв из 2 точек вначале нету.
2) АДЛ--..-.-- >> АДЛТ-..-.-- >> 1)АДЛТД-.-- 2)АДЛТТ..-.--
3) АТЖ..--..-.-- >> нельзя продолжить из за двух точек.
Продолжаем:
1)АДЛТД-.-- >> АДЛТДТАТ - это ответ
2)АДЛТТ..-.-- нельзя продолжить из за двух точек.
#include <iostream>
using namespace std;
bool srav(int a, int b)
{
if (a > b)
return 1;
else
return 0;
}
int main()
{
int number = 0;
int AB = 1, CD = 1;
cout << "Input A , B\n";
//Произведение A на B
for (int i = 0; i <= 1; i++)
{
cin >> number;
AB *= number;
}
cout << "A*B = " << AB << endl;
for (int i = 0; i <= 1; i++)
{
cin >> number;
CD *= number;
}
cout << "C*D = " << CD << endl;
if(srav(AB,CD))
cout<<"A*B > C*D";
else
cout << "C*D > A*B";
return 0;
}
Объяснение:
Решение перебором АДЛТДТАТ
Объяснение:
Для начала можно понять, что первая точка и продолжение подходит только для буквы А и в итоге остаётся: -...-..--..-.--, дальше у нас 2 варианта:
1) АД.-..--..-.-- >> 1 - АДА..--..-.-- 2 - АДЛ--..-.--
2)АТ...-..--..-.-- >> АТЖ..--..-.--
Продолжаем перебирать:
1) АДА..--..-.-- больше нельзя продолжить т.к букв из 2 точек вначале нету.
2) АДЛ--..-.-- >> АДЛТ-..-.-- >> 1)АДЛТД-.-- 2)АДЛТТ..-.--
3) АТЖ..--..-.-- >> нельзя продолжить из за двух точек.
Продолжаем:
1)АДЛТД-.-- >> АДЛТДТАТ - это ответ
2)АДЛТТ..-.-- нельзя продолжить из за двух точек.