Var N,M,R,S:Array[1..20] of integer; i,min,q,k,max:integer; begin Randomize; max:=-200; min:=200; writeln('1 массив'); for i:=1 to 20 do begin N[i]:= random(100)-50;write(N[i]:4);end;writeln; writeln('2 массив'); for i:=1 to 20 do begin M[i]:= random(100)-50; write(M[i]:4);end;writeln; writeln('массив Суммы'); for i:=1 to 20 do begin S[i]:= N[i]+M[i]; if max < S[i] then begin max:=S[i];q:=i;end; write(s[i]:4);end; writeln; writeln('массив Разности'); for i:=1 to 20 do begin R[i]:= N[i]-M[i]; if min > S[i] then begin min := S[i];k:=i;end; write(R[i]:4);end;writeln; writeln('максимальный ' , max, ' его индекс ',q); writeln;writeln('минимальный ' , min, ' его индекс ',k); end.
#include <stdio.h> #include "stdafx.h" #include "iostream" #include "conio.h" #include "locale.h" using namespace std; int main() { int x; cin >> x; int a = x; x = (x & 0x55) << 1 | (x & 0xAA) >> 1; x = (x & 0x33) << 2 | (x & 0xCC) >> 2; x = (x & 0x0F) << 4 | (x & 0xF0) >> 4; int s, k; k = 1; s = 0; while (x > 0) { s += k*(x % 2); k *= 10; x /= 2; } int p, o; p = 1; o = 0; while (a > 0) { o += p*(a % 2); p *= 10; a /= 2; } cout << o; cout << "\n" << s; getchar(); getchar(); return 0; } получает случайное целое типа int, выводит его двоичное представление на экран, Изменить порядок следования битов в числе на обратный