Дано целое число N(>1). Вывести наибольшее из целых чисел K, для которых сумма 1+2+…+K будет меньше или равна N, и саму эту сумму — Pascal(Паскаль)

uses crt;
var
k,n,i,sum:integer;
begin clrscr;
write('n=');
read(n);
sum:=0;
k:=0;
while sum<=n do
 begin
  k:=k+1;
  sum:=sum+k;
 end;
writeln;
writeln('k=',k-1);
writeln('sum=',sum-k);
 
end.

Следующий вариант

uses crt;
var
k,n,i,sum:integer;
begin clrscr;
write('n=');
read(n);
sum:=0;
k:=0;
while sum<=n do
 begin
  k:=k+1;
  sum:=sum+k;
 end;
for i:=1 to k-1 do
write(i,'+');
write(k);
write('>',n);
writeln;
writeln;
writeln('k=',k);
writeln('sum=',sum);
writeln;
writeln(sum,'>',n);
readkey;
end.

Следующий вариант

uses crt;
var
 n,k,i:integer;
begin
 clrscr;
 write('n=');
 readln(n);
 k:=1;i:=0;
 while k+i<n do
  begin
   i:=i+1;
   k:=k+i;
  end;
 write('k=',k);
 readln
end.

Leave a Comment

84 + = 86