Series36. Дано целое число $$K$$, а также $$K$$ наборов ненулевых целых чисел. Каждый набор содержит не менее двух элементов, признаком его завершения является число 0. Найти количество наборов, элементы которых возрастают.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
program Series35; var K,Ki,A,A1,Count:Integer; Check:Boolean; begin Write('K: '); Readln(K); Count:=0; for Ki:=1 to K do begin Write('A: '); Readln(A); Check:=True; repeat A1:=A; Write('A: '); Readln(A); if (A1>A) and (A<>0) then Check:=False; until A=0; Writeln('---'); If Check then Count:=Count+1; end; Writeln(Count); end. |
Другие задачи из раздела Series можно посмотреть здесь.
var k,c:integer;
begin
write(‘Количество наборов чисел k= ‘);
read(k);
c:=0;
write(‘Введите ‘,k,’ наборов чисел : ‘); //наборы разделяет 0
for var i:=1 to k do
begin
var a:=ReadSeqIntegerWhile(x->x0).ToArray.Println;
If a.SequenceEqual(a.Sorted) then
c:=c+1;
end;
writeln(‘Количество наборов, элементы которых возрастают = ‘,c);
end.
//uses PT4;
var
k,a,b,rez,p,c: integer;
//b:boolean;
begin
//Task(‘Series36’);
read(k);
for var i:=1 to k do
begin
a:=1;
p:=1; // изначально считаем, что условия возрастания в наборе соблюдается
while a0 do // чтоб условие выполнялось, прежде А приравняли 1 (см.выше)!
begin
readln(a);
inc(c); //счётчик, чтоб не сравнивать первое введенное число!
if (b>a) and (a0) and (c1) then p:=0; //т.е. после 2 введенного числа нет возрастания, то набор засчитываться в сумму не будет.
b:=a; // чтоб было с чем сравнивать после 2 введения числа в наборе.
end;
rez:=rez+p; // если условие выполняется прибавляем набор в результат
c:=0; // обнуляем счетчик для прогонки следующего набора
end;
writeln(rez);
end.