Любое трехзначное число вида "abc" можно представить как выражение 100a+10b+c Тогда: 100a+10b+c - 100c+10b+a
99(a-c) Значение, равное 99(a-c), равно трехзначному числу, составленному из тех же самых цифр a, b, c. Три цифры можно расставить шестью но два из них мы уже использовали, поэтому остается проверить четыре остальные расстановки, что и делает приведенная программа. qBASIC CLS FOR a = 1 TO 9 FOR b = 0 TO 9 FOR c = a - 1 TO 1 STEP -1 k = 99 * (a - c) k2 = 100 * a + 10 * c + b k3 = 100 * c + 10 * a + b k4 = 100 * b + 10 * a + c k5 = 100 * b + 10 * c + a IF k = k2 OR k = k3 OR k = k4 OR k = k5 THEN PRINT a; b; c; " - "; c; b; a; " = "; k END IF NEXT c NEXT b NEXT a Результат выполнения программы: 9 5 4 - 4 5 9 = 495
Bsn1704
09.08.2021
Обычно решают на Pascal, но я напишу на C++, он мне роднее)). Я конечно немножко по-другому реализовал (в плане ввода значений), но поставленную задачу выполняет. 1) #include <stdio.h> #inlcude <conio.h> #include <iostream> using namespace std; int main() { long a, b, i, sum=0; cin>>a; // Вводишь число a cin>>b; // Вводишь число b for (i=a;i<=b;i++) { sum=sum+(i*i); } cout<<sum; // выводим сумму квадратов чисел _getch(); }
2) #include <stdio.h> #inlcude <conio.h> #include <iostream> using namespace std; int main() { long a,b,c,d,i; bool z=false; cin>>a; cin>>b; cin>>c; cin>>d; for (i=10000; i<=99999; i++) { if (i % a==b && i % c==d) {z=true; cout<<i<<" ";} } if (z==false) {cout<<"-1";} // Выводится если нет чисел _getch(); }
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Подсчитать количество вхождений в текст слога "ро". нужна блок схема и программу паскаль