написать формулу. На картинке выдаёт ошибку. Предприятие производит мебель. При заказе на изготовление более 2 изделий из товарных групп «Диваны» или «Кресла» заказчику предоставляется скидка 10%; при заказе на изготовление более 10 изделий из товарной группы «Стулья» заказчику предоставляется скидка 5%; в других случаях скидка не предоставляется. Определить сумму скидки, предоставляемую заказчику.
Если число 49 записывается как 121, значит первый остаток от деления равен 1, то есть основанием системы счисления является число, кратное 48.
121 имеет 3 разряда, значит основание однозначно меньше 10 и больше 2. Подходят 3, 4, 6, 8.
Учитывая, что в числе 121 три разряда, значит число 48 делилось всего три раза. Число 8 не подойдет, т.к. 48/8=6, значит будет всего два деления. Число 3 не подойдет, т.к. 48/3 = 16, 16/3=5 - то есть тут будет больше трёх знаков. Число 4 не подойдет, т.к. 48/4=12, а 12 делится на 4 без остатка, но, судя по числу, во втором делении остаток должен быть равен 2. Остаётся число 6. Проверим
1.const N=10; type Vector = array [1..N] of integer; var B: vector; max :integer; procedure IntVector(N: integer; var a: vector); begin for var i := 1 to N do a[i] := random(100); end; procedure OutVector(N: integer; a: vector); begin for var i := 1 to N do begin write(a[i]:5); end; end; procedure Srav (a:vector; N,g:integer); begin g := a[1]; for var i:=1 to N do if (g < a[i]) then g:=a[i]; writeln (g); end; Begin IntVector(N, B); writeln; OutVector(N, B ); writeln; Srav(B,N, max); writeln; End. 2. const N = 10; type Vector = array [1..N] of integer; var B: vector; r,v : real; procedure IntVector(N: integer; var a: vector); begin for var i := 1 to N do a[i] := random(20); end; procedure OutVector(N: integer; a: vector); begin for var i := 1 to N do begin write(a[i]:5); end; end; function srednee(a: vector; N: integer): real; begin for var i := 1 to N do begin result := (result + a[i]); end; end; function kolvo(a: vector; g: real): real; begin for var i := 1 to N do if (a[i] < (srednee(a, N)/10)) then result := result + 1; end; begin IntVector(N, B); writeln; OutVector(N, B ); writeln; writeln ((srednee(B, N)/10):5:3); r := kolvo(B, v); writeln(r); end.
121 имеет 3 разряда, значит основание однозначно меньше 10 и больше 2. Подходят 3, 4, 6, 8.
Учитывая, что в числе 121 три разряда, значит число 48 делилось всего три раза.
Число 8 не подойдет, т.к. 48/8=6, значит будет всего два деления.
Число 3 не подойдет, т.к. 48/3 = 16, 16/3=5 - то есть тут будет больше трёх знаков.
Число 4 не подойдет, т.к. 48/4=12, а 12 делится на 4 без остатка, но, судя по числу, во втором делении остаток должен быть равен 2.
Остаётся число 6. Проверим
49/6=8 |1
8/6 = 1 |2
1/6=0 |1
121(6)
type Vector = array [1..N] of integer;
var B: vector;
max :integer;
procedure IntVector(N: integer; var a: vector);
begin
for var i := 1 to N do a[i] := random(100);
end;
procedure OutVector(N: integer; a: vector);
begin for var i := 1 to N do
begin write(a[i]:5);
end;
end;
procedure Srav (a:vector; N,g:integer);
begin
g := a[1];
for var i:=1 to N do
if (g < a[i]) then g:=a[i];
writeln (g);
end;
Begin
IntVector(N, B);
writeln;
OutVector(N, B );
writeln;
Srav(B,N, max);
writeln;
End.
2. const N = 10;
type Vector = array [1..N] of integer;
var B: vector;
r,v : real;
procedure IntVector(N: integer; var a: vector);
begin
for var i := 1 to N do
a[i] := random(20);
end;
procedure OutVector(N: integer; a: vector);
begin
for var i := 1 to N do
begin
write(a[i]:5);
end;
end;
function srednee(a: vector; N: integer): real;
begin
for var i := 1 to N do begin result := (result + a[i]);
end;
end;
function kolvo(a: vector; g: real): real;
begin
for var i := 1 to N do
if (a[i] < (srednee(a, N)/10)) then result := result + 1;
end;
begin
IntVector(N, B); writeln;
OutVector(N, B );
writeln;
writeln ((srednee(B, N)/10):5:3); r := kolvo(B, v);
writeln(r);
end.