Const n=15; var s:array[1..n] of real; st,p:real; i,k:integer; begin Writeln('Введите ',n,' сумм остатков'); st:=0; for i:=1 to n do begin Read(s[i]); st:=st+s[i] end; Writeln('Удельные веса остатков по магазинам'); k:=0; for i:=1 to 15 do begin p:=s[i]/st*100; Writeln(i,' - ',p:0:1); if p>12 then Inc(k) end; Write('Количество магазинов с уд. весом остатков >12%, равно '); Writeln(k) end.
Полное решение по заданию находится в файле формата MS Word-2003
Vetroff-11
23.01.2021
У меня получилась такая программка:
uses Crt; const n=15; type Vec=array [1..n] of integer ; var i, SumOtr, ColOtr: integer; A: Vec ; begin ClrScr; Randomize; SumOtr:=0; ColOtr:=0; WriteLn (' Massiv A: '); for i:=1 to n do begin A[i]:=-10+random(20); if A[i]<0 then begin SumOtr:=SumOtr+A[i]; ColOtr:=ColOtr+1; end; Write (A[i]:4); end; WriteLn; WriteLn('ColOtr = ', ColOtr); WriteLn('SumOtr = ', SumOtr); WriteLn('SredOtr = ', SumOtr/ColOtr:4:2); ReadLn; end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Получите случайное число в диапазоне от 1 до 10.>>> from random import*> randint (1, 10)8>>> randint (1, 10)6
n=15;
var
s:array[1..n] of real;
st,p:real;
i,k:integer;
begin
Writeln('Введите ',n,' сумм остатков');
st:=0;
for i:=1 to n do
begin Read(s[i]); st:=st+s[i] end;
Writeln('Удельные веса остатков по магазинам');
k:=0;
for i:=1 to 15 do
begin
p:=s[i]/st*100;
Writeln(i,' - ',p:0:1);
if p>12 then Inc(k)
end;
Write('Количество магазинов с уд. весом остатков >12%, равно ');
Writeln(k)
end.
Тестовое решение:
Введите 15 сумм остатков
0.37 1.5 2.11 3.4 9.3 2.89 4 0.85 0 0.73 4.2 5.05 3.5 2.18 0.94
Удельные веса остатков по магазинам
1 - 0.9
2 - 3.7
3 - 5.1
4 - 8.3
5 - 22.7
6 - 7.0
7 - 9.8
8 - 2.1
9 - 0.0
10 - 1.8
11 - 10.2
12 - 12.3
13 - 8.5
14 - 5.3
15 - 2.3
Количество магазинов с уд. весом остатков >12%, равно 2
Полное решение по заданию находится в файле формата MS Word-2003