Рассмотрим случай, когда запись числа 86 в системе счисления с основанием x состоит из 3 цифр.
В этом случае x должно быть таким, что x^2 <= 86 < x^3
Если x=3, то 3^2 <= 86 < 3^3 ⇒ 9 <= 86 < 27 - не выполняется
Если x=4, то 4^2 <= 86 < 4^3 ⇒ 16 <= 86 < 64 - не выполняется
Если x=5, то 5^2 <= 86 < 5^3 ⇒ 25 <= 86 < 125 - выполняется
86(10) = 321(5) - не подходит
Если x=6, то 6^2 <= 86 < 6^3 ⇒ 36 <= 86 < 216 - выполняется
86(10) = 222(6) - подходит (2*6^2+2*6+2 = 72+12+2 = 86)
Ответ: 6
#include <iostream>
#include <cmath>
using namespace std;
bool prost(int m){
int k = 0;
for (int i=2; i<=sqrt(m); i++)
if (m % i == 0) k++;
return k==0;
}
int main(){
int a, b;
cin >> a >> b;
for (int i=a; i<=b; i++)
if (prost(i)) cout << i << " ";
return 0;
}
Пример:
5 20
<span>5 7 11 13 17 19</span>
Program A;
var x,y:integer;
begin writeln('Введите два числа:'); readln(x); readln(y); if x > y then writeln(x * x) else writeln(y*y);end.
Program Mas;
Var a:array[1..100] of integer;
i, n: integer;
Begin randomize;
writeln('Введите размерность массива',n);
readln(n);
for i:=1 to n do
a[i]:=random(45)-1; readln;
for i:=1 to n do
begin if a[i]>15 then
write(' ',a[i]);
end;
readln;
End.
#include <stdio.h>
int main()
{
char c;
int k=0;
printf("Вводите символы (в конце '.')");
do {
scanf("%c",&c);
if ((c>='0')&&(c<='9')) k++;
}
while (c != '.');
printf("k = %d",k);
return 0;
}
Пример:
<span>Вводите символы (в конце '.')
сегодня 18 февраля 2017 г.
k = 6</span>