В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
menyaylo56
menyaylo56
13.09.2021 08:03 •  Информатика

3. составьте программы возведения натурального числа во вторую и третью степень, не используя операцию умножения, учитывая закономерность: 12 = 1 22 = 1 + 3 32= 1 + 3 + 5 42 = 1 + 3 + 5 + 7 … 13 = 1 23 = 3 + 5 33 = 7 + 9 + 11 43 = 13 + 15 + 17 + 19 …

Показать ответ
Ответ:
McBlanse
McBlanse
12.01.2022 09:23

//PascalABC.NET версия 3.4.2.1991 от 03.03.19

//Если программа не запускается, то обновите версию

const

   handsfree = true;

   nmax = 100;

   random_min = -50;

   random_max = 50;

var

   a: array[1..nmax] of real;

   i, n, count: integer;

procedure QuickSort(first, last: Integer);{ Быстрая сортировка массива A[] , использует массив как глобальную переменную}

var

   i, j: integer;

   x, y: real;

begin

   i := first;

   j := last;

   x := a[(first + last) div 2];

   repeat

       while (A[i] < x) do inc(i);

       while (x < A[j]) do dec(j);

       if (i <= j) then

       begin

           y := A[i]; a[i] := a[j]; a[j] := y;

           inc(i); dec(j);

       end;

   until (i > j);

   if (first < j) then QuickSort(first, j);

   if (i < last) then QuickSort(i, last);

end;

begin

   {ввод массива}

   n := nmax;

   if handsfree then begin

       n := random(nmax - 5) + 5;

       for i := 1 to n do

       begin

           a[i] := random(random_max - random_min) + random_min;

           write(a[i], ' ');

       end

   end

   else begin

       write('n = ');

       readln(n);

       for i := 1 to n do

           readln(a[i]);

   end;

   writeln();

   

   QuickSort(1, n);

   

   {вывод массива}

   writeln('Вывод массива[', n, ']:');

   for i := 1 to n do

       write(a[i], ' ');

   writeln();

   

   {подсчет разных}

   count := 1; {первый элемент точно разный}

   for i := 2 to n do

       if a[i] <> a[i - 1] then

           count := count + 1;

   writeln('Разных элементов = ', count);

end.

0,0(0 оценок)
Ответ:
nosalyaik
nosalyaik
11.10.2022 08:45
Program Program1;
var i, j, n: integer;
Arr: array [1..255] of integer;
FileArr: text;
procedure swap(var x, y: integer);
var t: integer;
begin
t := x; x := y; y := t
end;
begin
assign(FileArr, 'Array.txt');
rewrite(FileArr);
randomize;
write('Введите значение N: ');
readln(n);
for i := 1 to n do
begin
Arr[i] := random(100);
end;
for j := 1 to n - 1 do
for i := 1 to n - j do
if Arr[i] > Arr[i + 1] then
swap(Arr[i], Arr[i + 1]);
for i := 1 to n do
begin
writeln(Arr[i]);
end;
for i := 1 to n do
begin
writeln(FileArr, Arr[i]);
end;
close(FileArr);
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота