Інформатика9клас.Наступне число Прочитати ціле число та вивести наступне за ним число. Вхідні дані Одне ціле число n, що за модулем не більше 1018 Вихідні дані Вивести число на одиницю більше.
Если лень перебирать вручную, можно воспользоваться программой
var k,l,r,x,f:integer; begin f := 3001; l := 0; r := 65534; x := (l + r) div 2; k := 1; while (x <> f) and (l < r) do begin writeln(k,' ',l,' ',r,' ',x); k := k + 1; if f < x then r := x - 1 else l := x + 1; x := (l + r) div 2 end; writeln(k,' ',l,' ',r,' ',x); end.
Const n=10; var a:array[1..n+1] of integer; k,i:integer; b:boolean; begin Randomize; for i:=1 to n do begin a[i]:=random(21)-10; write(a[i]:4); end; writeln; write('Введите число: '); readln(k); b:=false; for i:=1 to n do if a[i]=k then b:=true; if not b then begin for i:=n+1 downto n div 2 + 1 do a[i]:=a[i-1]; a[n div 2]:=k; for i:=1 to n+1 do write(a[i]:4); writeln; end else writeln('Массив не изменился'); end.
1. 0..65534 -> 32767
2. 0..32766 -> 16383
3. 0..16382 -> 8191
4. 0..8190 -> 4095
5. 0..4094 -> 2047
6. 2048..4094 -> 3071
7. 2048..3070 -> 2559
8. 2560..3070 -> 2815
9. 2816..3070 -> 2943
10. 2944..3070 -> 3007
11. 2944..3006 -> 2975
12. 2976..3006 -> 2991
13. 2992..3006 -> 2999
14. 3000..3006 -> 3003
15. 3000..3002 -> 3001
Если лень перебирать вручную, можно воспользоваться программой
var k,l,r,x,f:integer;
begin
f := 3001;
l := 0;
r := 65534;
x := (l + r) div 2;
k := 1;
while (x <> f) and (l < r) do
begin
writeln(k,' ',l,' ',r,' ',x);
k := k + 1;
if f < x then r := x - 1
else l := x + 1;
x := (l + r) div 2
end;
writeln(k,' ',l,' ',r,' ',x);
end.
var a:array[1..n+1] of integer;
k,i:integer; b:boolean;
begin
Randomize;
for i:=1 to n do
begin
a[i]:=random(21)-10;
write(a[i]:4);
end;
writeln;
write('Введите число: '); readln(k);
b:=false;
for i:=1 to n do
if a[i]=k then b:=true;
if not b then
begin
for i:=n+1 downto n div 2 + 1 do a[i]:=a[i-1];
a[n div 2]:=k;
for i:=1 to n+1 do write(a[i]:4);
writeln;
end
else writeln('Массив не изменился');
end.
Пример:
6 10 -5 -3 -9 -8 -3 3 -9 7
Введите число: 4
6 10 -5 -3 4 -9 -8 -3 3 -9 7