function SumDig(a: Vector): integer; var i, m, d, s, max: integer; begin s := 0; for i := 1 to n do begin m := a[i]; max := -1; repeat d := (m mod 10); if max < d then max := d; m := m div 10 until m = 0; s := s + max end; SumDig := s end;
var i: integer; M: Vector;
begin Writeln('Введите ', n, ' чисел:'); for i := 1 to n do Read(M[i]); Writeln('Сумма максимальных цифр всех чисел равна ', SumDig(M)) end.
Тестовое решение: Введите 10 чисел: 613 269 839 10 575 569 812 56 401 616 Сумма максимальных цифр всех чисел равна 65
begin Write('тормозной путь, определенного для данного места при полном служебном торможении = '); readln(a); Write('тормозной путь для на 120 км/ч для пассажирских поездов = '); readln(b); if b < a then a := b; Write('тормозной путь для на 80 км/ч для грузовых поездов = '); readln(b); if b < a then a := b; Write('тормозной путь при экстренном торможении с учетом пути, проходимого поездом за время, необходимое для воздействия устройств автоматической локомотивной сигнализации на тормозную систему поезда = '); readln(b); if b > a then a := b; Write('участок, где видимость сигналов менее 400 м? да-1/нет-0 '); readln(b); if (b = 1) and (a < 1000) then a := 1000; Write('железнодорожная линия, вновь оборудуемая автоблокировкой? да-1/нет-0 '); readln(b); if (b = 1) and (a < 1000) then a := 1000; writeln(a); end.
const n=10; var x,y:array[1..n] of integer; sx,sy,i:integer; begin Randomize; Write('X: '); sx:=0; for i:=1 to n do begin x[i]:=Random(101)-50; Write(x[i],' '); sx:=sx+x[i] end; Writeln; Write('Y: '); sy:=0; for i:=1 to n do begin y[i]:=Random(101)-50; Write(y[i],' '); sy:=sy+y[i] end; Writeln; Writeln('Сумма х= ',sx,', сумма y= ',sy); if sx>sy then for i:=1 to n do y[i]:=0 else for i:=1 to n do x[i]:=0; Write('X: '); for i:=1 to n do Write(x[i],' '); Writeln; Write('Y: '); for i:=1 to n do Write(y[i],' '); Writeln end.
n = 10;
type
Vector = array[1..n] of integer;
function SumDig(a: Vector): integer;
var
i, m, d, s, max: integer;
begin
s := 0;
for i := 1 to n do
begin
m := a[i];
max := -1;
repeat
d := (m mod 10);
if max < d then max := d;
m := m div 10
until m = 0;
s := s + max
end;
SumDig := s
end;
var
i: integer;
M: Vector;
begin
Writeln('Введите ', n, ' чисел:');
for i := 1 to n do Read(M[i]);
Writeln('Сумма максимальных цифр всех чисел равна ', SumDig(M))
end.
Тестовое решение:
Введите 10 чисел:
613 269 839 10 575 569 812 56 401 616
Сумма максимальных цифр всех чисел равна 65