Var n, k: longint; begin write('введите натуральное число: '); readln(n); k : = 0; if n > 1 then begin repeat if n mod 2 = 1 then k : = k + 1; n : = n div 2 until n < 2 end; writeln('количество единиц в двоичном представлении равно ', k + 1) end. тестовое решение: введите натуральное число: 152 количество единиц в двоичном представлении равно 3
// 33 const n = 2; type student = record f: string; p1, p2, p3: integer; end; var a: array[1..n] of student; m: array[1..n]of real; i: integer; s: real; begin s : = 0; for i : = 1 to n do begin writeln('введите фамилию ', i, ' ученика '); readln(a[i].f); writeln('оценки по 3 предметам '); readln(a[i].p1, a[i].p2, a[i].p3); if (a[i].p1 + a[i].p2 + a[i].p3) / 3 > = s then begin s : = (a[i].p1 + a[i].p2 + a[i].p3) / 3; m[i] : = s; end; end; if m[1] = m[2] then writeln('средний учащихся одинаков') else if m[1] > m[2] then writeln(a[1].f, ' учится лучше') else writeln(a[2].f, ' учится лучше') end. тест №1 введите фамилию 1 ученика иванов оценки по 3 предметам 3 4 5 введите фамилию 2 ученика петров оценки по 3 предметам 4 4 4 средний учащихся одинаков тест №2 введите фамилию 1 ученика иванов оценки по 3 предметам 3 4 4 введите фамилию 2 ученика петров оценки по 3 предметам 5 5 5 петров учится лучше // 34 var a,b,c,min,max: integer; begin readln(a,b,c); min: =a; max: =a; if b< min then min: =b; if b> max then max: =b; if c< min then min: =c; if c> max then max: =c; writeln(max-min); end.