// PascalABC.NET 3.2, сборка 1417 от 28.03.2017 // Внимание! Если программа не работает, обновите версию!
procedure View(fams:array of string; balls:array[,] of integer); begin for var i:=0 to fams.Length-1 do begin Write(fams[i],': '); balls.Row(i).Println end end;
begin var n:=ReadlnInteger('Количество студентов:'); var m:=ReadlnInteger('Количество оценок у студента:'); var afam:=new string[n]; var aball:=new integer[n,m]; for var i:=0 to n-1 do begin afam[i]:=ReadlnString('Студент '+(i+1)+':'); Write('оценки студента: '); for var j:=0 to m-2 do Read(aball[i,j]); Readln(aball[i,m-1]); end; Writeln('*** Принятые сведения ***'); View(afam,aball); var s:=aball.Rows.Select(x->x.All(y->y=5)).Numerate .Where(x->not x[1]).Select(x->x[0]-1).ToArray; var n1:=s.Count; if n1>0 then begin var t:=new string[n1]; var t1:=new integer[n1,m]; for var i:=0 to n1-1 do begin t[i]:=afam[s[i]]; for var j:=0 to m-1 do t1[i,j]:=aball[s[i],j] end; afam:=Copy(t); aball:=copy(t1); Writeln('*** После удаления отличников ***'); View(afam,aball); end end.
Пример Количество студентов: 5 Количество оценок у студента: 3 Студент 1: Иванов И.И. оценки студента: 5 4 5 Студент 2: Петров П.П. оценки студента: 5 5 5 Студент 3: Сидорова Т.С. оценки студента: 5 5 5 Студент 4: Козлова К.К. оценки студента: 4 4 3 Студент 5: Макаров М.М. оценки студента: 4 5 4 *** Принятые сведения *** Иванов И.И.: 5 4 5 Петров П.П.: 5 5 5 Сидорова Т.С.: 5 5 5 Козлова К.К.: 4 4 3 Макаров М.М.: 4 5 4 *** После удаления отличников *** Иванов И.И.: 5 4 5 Козлова К.К.: 4 4 3 Макаров М.М.: 4 5 4
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку