решить :
1. Ввести число.Если оно больше нуля,то умножить его на 10,в противном случае умножить его на -10. 2.Ввести число.Если оно четное,то разделить его на 2,в противном случае вычтите из него единицу. 3.Ввести трехзначное положительное число.Если первая цифра больше третий цифры,то найди их разность(из первой цифры вычесть третью).
Пока мы просто составили выражение, перемножать не будем.
Каждый символ кодируется 8 битами, следовательно информационный объём статьи будет равен 8*40*32*16.
Перемножать пока, опять же, не будем. Чтобы ответ не был таким большим и пугающим, переведём всё а килобайты. Для этого полученное ранее выражение разделим на 8 (чтобы перевести в байты), затем на 1024 (чтобы перевести в килобайты).
Получаем выражение:
(8*40*32*16)/(8*1024)
Восьмёрки в числителе и знаменателе сокращаем. Получается:
(40*32*16)/1024
Сократим числитель и знаменатель на 32. Получаем:
(40*16)/32
16 и 32 тоже можно сократить до 1 и 2:
40/2=20
ответ: 20 килобайтов.
5,2,7,9,16,25 - это пример последовательности числа монет в сундуке, если в первый год монет пять, во второй - две.
2. Вот программка на АБС-Паскале, не оптимальная по ряду моментов, но рабочая. Из особенностей - выводит решения только если если во второй год монет становится меньше, чем в первый. Существуют решения при нулевом количестве взятых во второй год монет и при отрицательном. Если такие решения нужны - то условие в "if (j div n) < i then" надо изменить
Программка неэффективна, вместо решения диофантова уравнения по Евклиду используется тупой перебор, но по условиям он ограничен, и его можно себе позволить.
Выводятся также все решения, если нужно одно - прерывайте цикл по нахождению первого.
program БиллиБонс;
//
const
maxYear = 20;
maxMoney = 32767;
var
a, b: array [1..maxYear] of integer;
m, n, x, y: integer;
f1, f2: text;
s: string;
begin
assign(f1, 'input.txt'); // устанавливаем связь между файловой переменной и путем к файлу
reset(f1); // открытие на чтение файла
read(f1, x);
read(f1, y);
close(f1); // закрываем файл
// Заполняем массив коэффициентов
a[1] := 1;b[1] := 0;
a[2] := 0;b[2] := 1;
for var i := 3 to maxYear do
begin
a[i] := a[i - 1] + a[i - 2];
b[i] := b[i - 1] + b[i - 2];
end;
m := a[x];n := b[x];
// решаем уравнение m*s1 + n*s2 = y
// m,n - коэффициенты, зависящие от номера года
// s1,s2 - монет в первый и второй годы
assign(f2, 'output.txt'); // устанавливаем связь между файловой переменной и путем к файлу
rewrite(f2); // создание (перезапись) файла
for var i := 1 to y div m do
// цикл по s1
begin
var j := y - m * i;
if j mod n = 0 then
if (j div n) < i then
begin
writeln('s1=', i, ' s2=', j div n);
writeln(f2, i, ' ', j div n); // вывод данных в файл
end;
end;
close(f2); // закрываем файл
end.