Олимпиада по информатике 8 класс, 10 задание. Какой рисунок нарисует челтёжник после выполнения алгоритма?
Использовать чертёжник
алг квадрат
нач
иц 2 раз
ПРОЦЕД_КВАДРАТ
сместиться на вектор (2,2)
ПРОЦЕД_квадрат
сместиться на вектор (1,1)
кц
кон
алг ПРОЦЕД_КВАДРАТ
нач
опуситить перо
сместиться на вектор (0, 2)
сместиться на вектор (2, 0)
сместиться на вектор (0, -2)
сместиться на вектор (-2, 0)
поднять перо
кон
алг ПРОЦЕД_квадрат
нач
Опустить перо
сместиться на вектор (0, 1)
сместиться на вектор (1, 0)
сместиться на вектор (0, -1)
сместиться на вектор (-1, 0)
поднять перо
кон
#include <cstdlib>
#include <ctime>
int main()
{
using namespace std;
cout << "Enter size of array: ";
int N;
cin >> N;
int * ARR = new int[N];
srand(time(0));
int i;
for (i = 0; i < N; ++i)
ARR[i] = rand() % 100 + 1;
cout << "Here is an original array:\n";
for (i = 0; i < N; ++i)
cout << ARR[i] << " ";
cout << endl;
int temp = ARR[N - 1];
for (i = N - 1; i > 0; --i)
ARR[i] = ARR[i - 1];
ARR[0] = temp;
cout << "\nHere is a new array:\n";
for (i = 0; i < N; ++i)
cout << ARR[i] << " ";
cout << endl;
return 0;
}
Python
Объяснение:
код:
import random
n = random.randint(10, 100)
t = []
p = []
for i in range(1, n):
if n % i == 0:
i = str(i)
t += i
i = int(i)
for k in range(2, i):
if i % k == 0:
i = str(i)
p += i
break
t = list(map(int, t))
p = list(map(int, p))
for x in p:
if x in t:
t.remove(x)
t.remove(1)
if len(t) == 0:
t.append(n)
print(*t)
else:
s = [str(x) for x in t]
print('simple', '(', n, ')', '=', *s)