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

Разработать программу, выполняющую сортировку массива методом Шелла. Кроме классической реализации на базе вставки, также сделать вариант на базе обмена ("пузырька").объясните задачу,можно с объяснением

Показать ответ
Ответ:
jonni0203
jonni0203
07.10.2020 20:37

Алгоритм:

Должна быть переменная с суммой всех чисел (я её буду использовать как S)

1. Запрашиваем число (я его буду использовать как X)

2. Проверяем если S + X > 15 то (конец) иначе (повторяем 1 и 2 ещё раз)

Примеры на разных языках:

JavaScript:

var s = 0;

while (s < 15) {

s += input() //тут функция которая запрашивает и возвращает число

}

// действия после того как S > 15

Python:

s = 0

while s < 15:

   s += input('Введите число: ') //тут функция которая запрашивает и возвращает число

// действия после того как S > 15

P.S. Если что-то не понятно, я постараюсь объяснить подробнее.

0,0(0 оценок)
Ответ:
ееее70
ееее70
21.10.2021 20:22

ответ

4,0/5

2

SilverWind

   середнячок

   8 ответов

   2.6 тыс. пользователей, получивших

1. вывести на экран 6 раз своё имя

program imya;

const n=6;

var i:integer;

begin

for i:=1 to n do

writeln('ваше имя');

end.

Пояснения: делала с цикла (можно было написать и шесть раз writeln, но так удобнее). Переменную n ввела для быстрого изменения значений (если нужно будет написать имя не 6, а, к примеру, 8 раз, нужно было заменить только вначале). Ещё хочу отметить, что имя вводится по-английски и нельзя терять апострофы ( ' ).

2. program sum;

var sum:integer;

m:array[1..4] of integer;

i:integer;

begin

m[1]:=6

for i:=2 to 4 do begin

m[i]:=m[i-1]+1;

end;

sum:=m[1];

for i:=2 to 4 do begin

sum:=sum+m[i];

end;

writeln(sum);

end.

Пояснения: можно было делать и по-другому, но так тоже верно. Тут использовалось два цикла и массив. А блок-схему сами сделайте)))

3. program n!;

var n:real;

c:integer;

m:array[1..n] of integer;

begin

readln(n)

m[1]:=1;

for i:=2 to n do begin

m[i]:=m[i-1]+1;

end;

c:=m[1]

for i:=1 to n do begin

c:=c*m[i];

end;

writeln('n!',c);

end.

Если что не понятно, пишите, объясню

Объяснение:

сосиска

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