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

Дан одномерный массив целых чисел. Выбрать из массива все числа на нечётных позициях и упорядочить эти числа по убыванию.
[Пример: вход: 1, 2, 3, 4, 5; выход: 5, 3, 1]
Выполнить на PascalABC.NET

Показать ответ
Ответ:
BroKeNxHeArT
BroKeNxHeArT
20.10.2021 16:28

Есть пара неясностей в условии. Если допускается такое, что единица и само число тоже являются делителями, то берите первый вариант решения, иначе - берите второе.

И еще кое-что: если нужно хотя бы 4 делителя, то оставьте все как есть, а если нужно ровно четыре делителя, в строчке if k>=4 then write(i:3); уберите знак > .

 

1 вариант.

program zadacha;

var n, i, j, k : byte;

begin

write('введите число N');

for i:= 1 to n do begin

k:=0;

for j:= 1 to i do

if i mod j =0 then k:=k+1;

if k>=4 then write(i:3);

 

2 вариант.

program zadacha;

var n, i, j, k : byte;

begin

write('введите число N');

for i:= 1 to n do begin

k:=0;

for j:= 2 to (i-1) do

if i mod j =0 then k:=k+1;

if k>=4 then write(i:3);

 

0,0(0 оценок)
Ответ:
nastya2742
nastya2742
30.09.2022 19:40

1)

var

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

i,n:byte;

Sn:real; 

begin 

 write('Введите количество элементов массива: ');readln(n);

for i:=1 to n do

begin

write('a[',i,']= '); readln(a[i]);

end;

clrscr; 

writeln('Исходный массив:'); 

/* Вывод в строчку через запятую*/

for i:=1 to n-1 do write(a[i]:5:3,', '); write(a[n]:5:3,'.');

/*Простой вывод в столбик*/

for i:=1 to n do writeln(a[i]:5:3);

/*Сумма элементов, стоящих на четных местах*/ 

Sn:=0;

while i<=n do

begin

  if odd(i)=false then Sn:=Sn+a[i];

  i:=i+1;

end; 

/*Вывод ответа*/

writeln('Сумма элементов, стоящих на четных местах: ',Sn:5:3);

end. 

 

2)

var

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

i:byte; 

begin

 write('Введите количество элементов массива: ');readln(n);

for i:=1 to n do

begin

write('a[',i,']= '); readln(a[i]);

end;

clrscr; 

writeln('Исходный массив:'); 

/* Вывод в строчку через запятую*/

for i:=1 to n-1 do write(a[i]:5:3,', '); write(a[n]:5:3,'.');

/*количество элементов кратных 3*/

kol:=0; 

for i:=1 to n do

if a[i] mod 3 =0 then kol:=kol+1; 

/*Вывод ответа*/

writeln('Количество элементов массива, кратных трем: ',kol);

end. 

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота