Создается, так сказать, массив, длину которого вводите вы. Затем вы его заполняете. В цикле происходит сортировка чисел массива от меньшего к большему(если число слева больше числа справа, то поменять их местами) и выводится на экран первые два числа, то есть 2 наименьших числа массива.
Однако тупо реализовано создание массива. Неважно сколько вы впишете длину массива(<100), он все равно будет занимать память на 100 символов, а это очень глупо. Для создания динамических массивов(массивы , размеры которых РЕАЛЬНО указываете вы сами) используйте указатели.
1010101-2^6+2^4+2^2+2^0=85
1031=1100000111
Например так
#include <iostream>
#include <math.h>
using namespace std;
int main(void)
{
int n,count=1,i=2;
cin>>n; int a[n+1]; a[0]=2;
while(count<n)
{
bool b=true;
for(int j=0;j<count;j++)
if(a[j]>sqrtl(i)+1) break;
else
{
if(i\%a[j]==0) b=false;
if(b) {a[count]=i; count++;}
i++;
}
}
for(int i=0;i<n;i++) cout<<a[i]<<" ";
return 0;
}
ускорил работу еще немного
Так?
uses Robot;
begin
Task('if1');
right;
if WallFromUp then
begin
down;
right;
up;
end;
if wallfromdown then
begin
up;
right;
down;
end;
paint;
end.
Код буквы трехзначный, начинающийся с 1, или однозначный (0 для С).
8СF8(16) = 1000 1100 1111 1000(2)
100 - К
0 - С
110 - О
0 - С
111 - Л
110 - О
0 - С
0 - С
Получается КСОСЛОСС, т.е. ответ номер 3.