
1) Переводим 1100111112 в десятичную систему:
1100111112 = 1·28+1·27+0·26+0·25+1·24+1·23+1·22+1·21+1·1 = 41510
2)Переводим целую часть 29710 в 2-ую систему последовательным делением на 2:
297/2 = 148, остаток: 1
148/2 = 74, остаток: 0
74/2 = 37, остаток: 0
37/2 = 18, остаток: 1
18/2 = 9, остаток: 0
9/2 = 4, остаток: 1
4/2 = 2, остаток: 0
2/2 = 1, остаток: 0
1/2 = 0, остаток: 1
29710 = 1001010012
3)Переводим 4758 в десятичную систему:
4758 = 4·82+7·81+5·1 = 31710
Переводим целую часть 31710 в 2-ую систему последовательным делением на 2:
317/2 = 158, остаток: 1
158/2 = 79, остаток: 0
79/2 = 39, остаток: 1
39/2 = 19, остаток: 1
19/2 = 9, остаток: 1
9/2 = 4, остаток: 1
4/2 = 2, остаток: 0
2/2 = 1, остаток: 0
1/2 = 0, остаток: 1
31710 = 1001111012
4)Окончательный ответ: 11101(2) + 110011(2) = 1010000(2)
5)Окончательный ответ: 100110011(2) * 1001101(2) = 101110001010111(2)
6)Окончательный ответ: 1111011(2) - 111011(2) = 1000000(2)
Программа:
type Student=record
FIO:string;
year:integer;
obj:string;
mark:integer;
end;
var
i:integer;
objec:string;
s: array [1..3] of Student;
BEGIN
// 1-ый студент
s[1].FIO:= 'Петров П.П.';
s[1].mark:= 3;
s[1].obj:= 'Математика';
s[1].year:= 1997;
// 2-ой студент
s[2].FIO:= 'Иванов И.И.';
s[2].mark:= 5;
s[2].obj:= 'Математика';
s[2].year:= 1999;
// 3-ий студент
s[3].FIO:= 'Сидоров С.С.';
s[3].mark:= 5;
s[3].obj:= 'Математика';
s[3].year:= 1998;
write('Введите предмет: ');
readln(objec);
writeln('Список студентов по заданным параметрам:');
for i:=1 to 3 do
if (s[i].obj = objec) and (s[i].mark = 5) then
writeln(s[i].FIO, ' - ' , s[i].year)
END.