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

Локи решил передать несколько магических книг в библиотеку Асгарда. Бережно упаковывая эти древние книги, он обвязал их бечевкой, как показано на рисунке.

Всего Локи упаковал четыре набора книг. В каждом наборе N книг, и все магические книги

в наборе имеют одинаковые размеры (L — длина, W — ширина, H — толщина в дюймах Локи определить, какой длины бечевка ему потребуется для каждого набора книг, если для

завязывания узла сверху необходимо по X дюймов бечевки с каждого ее конца.

Номер набора N L W H X

1 1 4 2 1 10

2 5 4 3 3 9

Показать ответ
Ответ:
SashaLaik
SashaLaik
06.07.2020 14:06

Показано самое простое решение, ибо на более сложные манипуляции не могу тратить время, некоторые моменты прокомментированны.

Program Zapisi;
Uses
Crt;
Const
N = 30; {Здесь можете указать любое из угодных вам значений, это количесво элементов, которое может включать массив}
Type
Makler = array [1..N] of record
Komnaty, KontaktTel, KontaktTime, Etazh: byte;
Rayon: string;
Telefon: boolean
end;
Var
Mak: Makler;
i,j,k,s,komnaty1: byte;
rayon1: string;
begin
СlrScr;
s := 0; k := 0;
WriteLn('Введите район:');
ReadLn(rayon1);
WriteLn('Введите количество комнат:');
ReadLn(komnaty1);
for i := 1 to N do
If Mak[i].Rayon = rayon1 then

{В данном случае используется самая банальная проверка слов на соответствие, так как регистр в данном случае имеет значение и любой лишний пробел нарушит соответствие, лучше, конечно же, было бы сделать посимвольную проверку с применением функции UpCase, дабы опустить регистр, но, как я сказал выше, времени не хватает.}
k := k + 0;
for j := 1 to N do
If Mak[j].Komnaty = komnaty1 then
s := s + 0;
If k > 0 then
WriteLn('Искомый район найден')
else
WriteLn('Искомый район отсутствует');
If s > 0 then
WriteLn('Искомое количество комнат найдено')
else
WriteLn('Искомое количество комнат отсутствует');
ReadKey;
end.

0,0(0 оценок)
Ответ:
568500
568500
04.03.2021 08:57

ну смотри переменная m в начале равна 10

затем идет цикл а именно: нужно повторить какоето действие с 1 до 10 раз(тоесть 10 раз) Это действие включает в себя условие если Dat[k] <m (Dat[k] где к это каждый шаг цикла: если к=1 то Dat[k]=Dat[1] а это равно 7 и так далее, к=2 к=3 до 10)так вот каждый раз подставляется новое число и сравнивается с m (m тоже число в начале которое равно 10), вот шаг 

1) при k=1, если 7 меньше 10 то m теперь будет равно 7

2)при k=2 (тоесть Dat[2]) если 9 меньше 7, не меньше а значит m остаётся без изменений m=7

3)при k=3 (тоесть Dat[3]) если 10 меньше 7, не меньше а значит m остаётся без изменений m=7

4)при k=4 (тоесть Dat[4]) если 5 меньше 7, то m=5

5)при k=5 (тоесть Dat[5]) если 6 меньше 5, не меньше а значит m остаётся без изменений m=5

6)при k=6 (тоесть Dat[6]) если 7 меньше 5, не меньше а значит m остаётся без изменений m=5

7)при k=7 (тоесть Dat[7]) если 9 меньше 5, не меньше а значит m остаётся без изменений m=5

8)при k=8 (тоесть Dat[8]) если 8 меньше 5, не меньше а значит m остаётся без изменений m=5

9)при k=9 (тоесть Dat[9]) если 6 меньше 5, не меньше а значит m остаётся без изменений m=5

10)при k=10 (тоесть Dat[10]) если 9 меньше 5, не меньше а значит m остаётся без изменений m=5

В конце идет вывод числа переменной m, которая равна 5, а значит будет выведено 5

 

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