1)
IP 9. 102. 202. 52
маска 255. 255. 240. 0
адрес 9. 102. 192. 0
---------------------------------------------
в адрес сразу записываем выделенные полностью соответствующие байты (первый и второй байты) байтам маски =255 (255(10сс) = 1111 1111 (2сс))
последний байт маски =0, он "гасит" всё, и в адресе будет 0.
----------------------------------------------
остался один третий байт.
202 и 240
202 (10сс) = 128+64+8+2=2^7 + 2^6+2^3+2^1 = 1100 1010 (2cc)
240 (10cc) = 128+64+32+16=2^7+2^6+2^5+2^4=1111 0000 (2cc)
--------------------------------------------------
поразрядная конъюнкция:
1100 1010 * поразрядно
1111 0000
----------------
1100 0000 =2^7 +2^6 =128+64= 192 (10cc) - искомое значение третьего байта в 10сс.
Ответ:
Float a, skv, skb v;
Edit1.Text := StrtoInt(a) ;
skv := a * a;
skb := a * a *6;
v := a * a * a;
Label1.Caption := Площадь квадрата = InttoStr(skv) ;
Label2.Caption := Площадь Куба = InttoStr(skb) ;
Label2.Caption := Объём куба = InttoStr(v) ;
Объяснение:
Промотав последовательность действий в обратную сторону, мы получим ответ
1)
Program al;
var a: array[1..32000] of integer;
buf:integer;
i,n,min,max:integer;
begin
writeln('n=');
readln(n);
writeln('vvedite massiv=');
for i := 1 to n do
readln(a[i]);
min:=1;
max:=1;
for i:=2 to n do
begin
if a[min]>a[i] then
min:=i;
if a[max]<a[i] then
max:=i;
end;
buf:=a[min];
a[min]:=a[max];
a[max]:=buf;
writeln('Massiv posle obmena max<->min');
for i:=1 to n do
write(a[i]:4);
writeln;<span>
end.</span>
#include<stdio.h>
#include<iostream>
using namespace std;
int main(){
int arr[8];
for(int i=1;i<=8;i++){
cin>>arr[i];
}
for(int i=1;i<=8;i++){
if(i%2==0){
cout<<arr[i]<<" ";
}
return 0;
}
Код на c++