ОЧЕНЬ СДАВАТЬ ЧЕРЕЗ 5МИНУТ составить по примеру из презентации, алгоритм «следования» из повседневной жизни и из литературного произведения сказка «Репка») Нарисовать 2 блок-схемы.
Произведение делится на 7, но не делится на 49, если один из сомножителей делится на 7 (но не на 49), а второй - не делится на 7.Произведение будет больше, если каждый из сомножителей будет больше
Получаем такую идею: будем хранить максимальное из всех чисел, делящихся на 7, но не делящихся на 49, и максимальное из чисел, не делящихся на 7. Их произведение будет ответом.
Вот решение
Сори за транслит, мой компьютер не может по нормальному поддерживать русский язык
1)
#include <iostream>
using namespace std;
// Если у тебя макс не определен, то вот определение
template<typename T>
T max(T a, T b) {
if (a > b) return a;
return b;
}
int main() {
setlocale(LC_ALL, "Russia");
cout << "Введите 3 целых числа\n";
int a, b, c;
cin >> a >> b >> c;
int Max = max(a, b);
Max = max(Max, c);
cout << "Макс = " << Max << endl;
}
2)
#include <iostream>
using namespace std;
// translit one love
int main() {
cout << "Vvedity nomer ";
string num;
cin >> num;
int sum = 0;
for (int i = 0; i < num.length(); i++) {
if (num[i] >= '0' && num[i] <= '9')
sum += int(num[i]) - int('0');
}
if (sum % 3 == 0) cout << "chislo " << num << " delitsya na 3 potomy cto summa chifr = " << sum << endl;
else cout << "chislo " << num << " ne delitsya na 3 potomy cto summa chifr = " << sum << endl;
}
3)
#include <iostream>
using namespace std;
// translit one love
int main() {
cout << "Vvedity nomer ";
string mouth[12] = { "Yanvar", "Fevral", "Mart", "Aprel",
"May", "Iun", "Iul", "Avgust",
"Sentyabr", "Oktabr", "Noyabr", "Decabr", };
int num = 0;
cin >> num;
cout << "Mesyac is " << mouth[(num + 11) % 12] << endl;
}
Два соображения:
Произведение делится на 7, но не делится на 49, если один из сомножителей делится на 7 (но не на 49), а второй - не делится на 7.Произведение будет больше, если каждый из сомножителей будет большеПолучаем такую идею: будем хранить максимальное из всех чисел, делящихся на 7, но не делящихся на 49, и максимальное из чисел, не делящихся на 7. Их произведение будет ответом.
Реализация (Python 3.8.1)
max_div_7 = 0
max_not_div_7 = 0
while (x := int(input())) != 0:
if x % 7 != 0:
max_not_div_7 = max(max_not_div_7, x)
elif x % 7 == 0 and x % 49 != 0:
max_div_7 = max(max_div_7, x)
if max_div_7 == 0 or max_not_div_7 == 0:
print(1)
else:
print(max_div_7 * max_not_div_7)