Const n=10; m=3; var a:array[1..n,1..m] of integer; i,j,s,k:integer; p:real; begin Randomize; writeln('Исходный массив:'); for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=random(81)+20; write(a[i,j]:4); end; writeln; end; s:=0; for i:=1 to n do for j:=1 to m do s:=s+a[i,j]; p:=s/n*0.8; writeln('p = ',p:5:2); writeln('Зачислены:'); k:=0; for i:=1 to n do begin s:=0; for j:=1 to m do s:=s+a[i,j]; if s>=p then begin write(i,' '); k:=k+1; end; end; writeln; writeln('k = ',k); end.
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016 begin var a:=ReadLines('m17.txt').JoinIntoString.ToIntegers; a.Println; var b:=a.Select((x,i)->Rec(x,i)).Where(x->x.Item1<0) .Select(x->x.Item2).ToArray; if b.Count<>2 then Writeln('Количество отрицательных элементов не равно двум') else begin a:=SeqFill(b[0],0).Concat(a.Skip(b[0]).Take(b[1]-b[0]+1)) .Concat(SeqFill(a.Length-b[1]-1,0)).ToArray; a.Println end end.
Файл с исходными данными имеет имя m17.txt. Тестовый файл находится во вложении. Разбивка на строки сделана по 5 значений, но может быть совершенно произвольной. Также нет привязки именно к 17 числам, главное - чтобы отрицательных чисел было ровно два, иначе будет выдано сообщение о их неверном количестве.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку