Var
a:array[1..10]of array[1..10] of integer;
i, j ,P: Integer;
Begin
randomize;
writeln('Массив:');
for i := 1 to 10 do
begin
for j := 1 to 10 do
begin a[i][j]:=random(21)-10;
write(a[i][j]:5);
end;
writeln;
end;
for i := 1 to 10 do
if a[i][i] < 0 then
begin P:=1;
for j := 1 to 10 do
P:=P*a[i][j];
writeln(i,'-я строка, П=',P);
end;
writeln;
<span>End.</span>
В цикле посчитать количество чисел при делении на которые не остаётся остатка от деления. Т.е. деление нацело происходит.
#include <stdio.h>
void main(void) {
int qty=0;
int x = 30000;
for (int i=1; i<=x; i++) { //Организовываем цикл от 1 до значения числа x
// Если x делится без остатка, значит число - натуральный <span>делитель.</span>
if (x % i==0)
qty++;
}
printf("количество натуральных делителей %i", qty);
}
Не менее должен содержать 256
Сначала переведём в десятичную систему счисления, а затем в остальные из неё.
В качестве цифр шестнадцатеричной системы счисления используются цифры от 0 до 9 и латинские буквы от A до F. Буквы A = 10, B = 11, C = 12,
D = 13, E = 14, F = 15.
B25₁₆<span> = 11*16</span>²+2*16¹+5*16° = 2816+32+5 = 2853₁₀
2853/2 = 1426 (целое частное) + (1) - остаток
1426/2 = 713 + (0)
713/2 = 356 + (1)
356/2 = 178 + (0)
178/2 = 89 + (0)
89/2 = 44 + (1)
44/2 = 22 + (0)
22/2 = 11 + (0)
11/2= 5 + (1)
5/2 = 2 + (1)
2/2 = 1 + (0)
1
Поднимаемся снизу вверх записывая слева направо.
B25₁₆ = 101100100101₂
2853/8 = 356 + (5)
356/8 = 44 + (4)
44/8 = 5 + (4)
5
B25₁₆ = 5445₈
C3₁₆<span> = 12*16</span>¹+3*16⁰ = 192+3 = 195₁₀
195/2 = 97 + (1)
97/2 = 48 + (1)
48/2 = 24 + (0)
24/2 = 12 + (0)
12/2 = 6 + (0)
6/2 = 3 + (0)
3/2 = 1 + (1)
1
C3₁₆ = 11000011₂
195/8 = 24 + (3)
24/8 = 3 + (0)
3
C3₁₆ = 303₈
Минимальная длина дорог = 7+8+5+4+10+6 = 40
Решение - в прилагаемом файле