Для нахождения минимума из четырёх чисел, можно использовать метод для нахождения минимума из двух чисел. Таким образом код будет намного яснее и компактнее. И вместо присваивания значения переменным m4 и m2 лучше сразу возвращать результат.
static int min2(int a, int b)
<span>{
</span><span> if(a < b)
</span><span> {
</span><span> return a;
</span><span> }
</span><span> else
</span><span> return b;
</span><span>}
static int min4(int a, int b, int c, int d)
<span>{
</span><span> return min2(min2(a, b), min2(c, d));
</span><span>}</span></span>
Расширение первого файла третьей буквой может иметь только символ С, а во втором случае абсолютно любой и необязательно один. Поэтому нельзя сказать, что приведенные записи одинаковые и найдут одинаковые файлы
<h2>Задание 1</h2>
1⁵ 0⁴ 1³ 0² 1¹ 0⁰ = 1 · 2⁵ + 0 · 2⁴ + 1 · 2³ + 0 · 2² + 1 · 2¹ + 0 · 2⁰ = 32 + 0 + 8 + 0 + 2 + 0 = 42₁₀
<h2>Задание 2</h2>
35 = 32 + 2 + 1 = 2⁵ + 2¹ + 2⁰ = 100 000 + 10 + 1 (в столбик - двоичное сложение) = 100011₂
<h2>Задание 3</h2>
Стоит помнить, что:
1 + 1 = 10
1 + 1 + 1 = 11
1 + 1 + 1 + 1 = 100
Это происходит, потому что в 2-й системе счисления всего два числа - 0 и 1. В 10-й системе счисления это выглядело бы примерно так:
...
1 + 9 = 10
...
1 + 19 = 20
...
1 + 99 = 100
То есть переполнение числа приводит к тому, что цифра слева увеличивается на единицу. В случае, если есть девятка - то цифра слева увеличивается на 1.
999 + 1 = 1 0 0 0
Решение:
120Гб = 122880 Мб
122880/ 700 ≈ 176 дисков понадобится
Var
n1,n2,r,k,i:integer;
begin
Randomize;
k:=0;
for i:=1 to 7 do
begin
n1:=random(90)+10;
n2:=random(90)+10;
write(n1,' + ',n2,' = ');
readln(r);
if r=n1+n2 then k:=k+1;
end;
writeln('k = ',k);
end.
Пример:
98 + 59 = 157
18 + 99 = 117
23 + 47 = 70
16 + 21 = 35
38 + 62 = 100
16 + 81 = 97
54 + 28 = 82
k = 6