Первое
var
a:array[1..100] of integer;
i,j:integer;
procedure swap(var x,y: integer);
var t: integer;
begin
t := x;
x := y;
y := t
end;
begin
for i:=1 to 100 do a[i]:=random(100);
for j:=1 to 99 do
for i:=1 to 100-j do if a[i] > a[i+1] then swap(a[i],a[i+1]);
for i:=2 to 99 do if (a[i]=a[i+1]) or (a[i]=a[i-1]) then writeln('a[',i,']=',a[i]);
end.
Второе
var
a:array[1..100] of integer;
i,j:integer;
procedure swap(var x,y: integer);
var t: integer;
begin
t := x;
x := y;
y := t
end;
begin
for i:=1 to 100 do a[i]:=random(100);
for j:=1 to 99 do
for i:=1 to 100-j do if a[i] > a[i+1] then swap(a[i],a[i+1]);
if a[1]<>a[2] then writeln('a[1]=',a[1]);
for i:=2 to 99 do if (a[i]<>a[i+1]) and (a[i]<>a[i-1]) then writeln('a[',i,']=',a[i]);
if a[100]<>a[99] then writeln('a[100]=',a[100]);
end.
Ответ: 1001011000
Все просто. Постоянно делите на 2
Вычисление разности происходит следующим образом:
X - Y = X + (-Y) = X + допкод(Y).
Перевод в допкод - проинвертировать число и добавить к нему 1.
Видим, что единица добавляется позже. Тогда A = B = проинвертированный предпоследний разряд второго числа = 1. 11101111 + 1 = 11110000. С = 1, D = 0
Ответ: (2)
<span>#include <iostream>
</span><span>#include <iomanip>
</span><span>using namespace std;
</span>void inmas(int* ms,int n) {
<span> for (int i=0; i<n; i++) cin>>ms[i];
</span><span>}
</span>float smas(int* ms,int n) {
<span> int s=0;
</span><span> for (int i=0; i<n; i++) s+=ms[i];
</span><span> return float(s);
</span><span>}
</span>void rezm(int* a, int* b, float* c, float* s, int n) {
<span> for (int i=0; i<n; i++)
</span><span> c[i]=*s/(a[i]+b[i]);
</span><span>}
</span>int main() {
<span> int n;
</span><span> cout<<"n = "; cin>>n;
</span><span> int a[n],b[n];
</span><span> float c[n];
</span><span> float s;
</span><span> cout<<"massiv a: ";
</span><span> inmas(a,n);
</span><span> cout<<"massiv b: ";
</span><span> inmas(b,n);
</span><span> s=smas(a,n);
</span><span> cout<<"summa = "<<s<<endl;
</span><span> rezm(a,b,c,&s,n);
</span><span> cout<<"massiv c: ";
</span><span> for (int i=0; i<n; i++)
</span><span> cout<<setprecision(3)<<c[i]<<" ";
</span><span> cout<<endl;
</span><span> system("pause");
</span><span> return 0;
</span><span>}
</span>n = 8
<span>massiv a: 1 2 3 4 5 6 7 8
</span><span>massiv b: 5 6 7 8 9 10 11 12
</span><span>summa = 36
</span><span>massiv c: 6 4.5 3.6 3 2.57 2.25 2 1.8
</span>