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

ооочень проект "Подари яблоко". У Асель есть N яблок (0 <N <10000). Вес яблок - массив (b <1000). Асель хочет подарить своей сестре Гаухар самое большое яблоко K (0 << N). Подготовьте проект, чтобы Ассель выбрать самое большое яблоко,N=int(input('Almalardyn sany=')) K=int(input('Silaytyn almalar sany='))
B=[0]*N
for i in range(0,N):
B[i]=randint(1,100)
print('Almalardyn salmagy')
print(B)
qSort(B,0,N-1)
print('Alma salmaktarynyn kemy retimen ornalasuy')
print(B)
print('Silaityn almalary')
print(B[:K])

Показать ответ
Ответ:
Mocket
Mocket
26.09.2022 13:51

36 25 24 13 12  1

35 26 23 14 11  2

34 27 22 15 10  3

33 28 21 16  9  4

32 29 20 17  8  5

31 30 19 18  7  6

Объяснение:

1)

const n=6;

var a:array[1..n,1..n] of integer;

i,j:integer;

begin

for i:=1 to n do

if i mod 2=1

 then for j:=1 to n do a[i,j]:=n*i-j+1

 else for j:=1 to n do a[i,j]:=n*(i-1)+j;

for i:=1 to n do

begin

for j:=1 to n do write(a[i,j]:3);

writeln;

end;

end.

Результат:

 6  5  4  3  2  1

 7  8  9 10 11 12

18 17 16 15 14 13

19 20 21 22 23 24

30 29 28 27 26 25

31 32 33 34 35 36

2)

const n=6;

var a:array[1..n,1..n] of integer;

i,j:integer;

begin

for j:=n downto 1 do

if (n+j) mod 2=0

then for i:=1 to n do a[i,j]:=n*(n-j)+i

else for i:=1 to n do a[i,j]:=n*(n-j+1)-i+1;

for i:=1 to n do

begin

for j:=1 to n do write(a[i,j]:3);

writeln;

end;

end.

Результат:

36 25 24 13 12  1

35 26 23 14 11  2

34 27 22 15 10  3

33 28 21 16  9  4

32 29 20 17  8  5

31 30 19 18  7  6

0,0(0 оценок)
Ответ:
Sagi511
Sagi511
21.03.2022 20:26

program balet;

uses

crt;

var

k, n, pc: integer;

var

pd: real;

begin

readln(n);

readln(k);

pd := (n - 3 * k) / 2;

pc := trunc(pd);

if (pd > pc) then

pc := pc + 1 ;

writeln(pc);

readln;

end.

Пояснения:

pc - целое число принятых

pd - дробное число принятых

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

Пример:

n=59

k=10

pd=14,5

pc=trunc(14,5)=14

{функция trunc полностью отбрасывает дробную часть (не округляет!)}

pd>pc?

Да!

Значит

pc=14+1=15

Считаем.

Если бы мы не добавили к pc единицу, то получилось бы:

\frac {10+14}{59+14}=0,32877...

А это немного не треть...

А так как мы добавили единицу, то получилось:

\frac {10+15}{59+15}=0,33784...

То что нам надо!

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