легенда гласит, что карл фридрих гаусс, учась в школе, смог быстро посчитать
сумму целых чисел от 1 до 100, заметив, что 1 + 100 = 2 + 99 = … = 50 + 51. теперь решите
посложнее: можно ли перед каждым из чисел от 1 до n расставить знаки «+» или «–»
так, чтобы сумма получившихся чисел была равна 0? например, для n = 3 сумма –1 –2 +3
будет равна 0, а для n = 2 этого сделать нельзя.
программа получает на вход целое неотрицательное число n, не превосходящее 10в(5)степени.
программа должна вывести последовательность из n символов «+» или «–»,
соответствующих знакам, которые нужно расставить перед числами от 1 до n так, чтобы
сумма получившихся чисел была равна 0. если имеет несколько решений, нужно
вывести один (лобой) ответ. если не имеет решения для данного n, нужно вывести
одно слово «impossible».
ввод:
3
2
вывод:
--+
impossible
примечание:
правильным ответом будет также «++-»
ответ:
1) для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
a9e16 = 162*10 + 161*9 + 160*14 = 2560 + 144 + 14 = 2718
для перевода дробной части необходимо разделить разряд числа на соответствующую ему степень разряда.
116 = 16-1*1 = 0.0625
в итоге получаем число 2718.0625
ответ: a9e.116=2718.0625
2) для перевода необходимо умножить разряд числа на соответствующую ему степень разряда.
2fa16 = 162*2 + 161*15 + 160*10 = 512 + 240 + 10 = 762
ответ: 2fa16=762
3) для перевода необходимо умножить разряд числа на соответствующую ему степень разряда.
2fb16 = 162*2 + 161*15 + 160*11 = 512 + 240 + 11 = 763
ответ: 2fb16=763
4) для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
2f16 = 161*2 + 160*15 = 32 + 15 = 47
для перевода дробной части необходимо разделить разряд числа на соответствующую ему степень разряда.
a16 = 16-1*10 = 0.625
в итоге получаем число 47.625
ответ: 2f.a16=47.625
5) для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
ad16 = 161*10 + 160*13 = 160 + 13 = 173
для перевода дробной части необходимо разделить разряд числа на соответствующую ему степень разряда.
316 = 16-1*3 = 0.1875
в итоге получаем число 173.1875
ответ: ad.316=173.1875
ответы были подсмотрены здесь:
если что, пользуйтесь этим сервером, удобный)
объяснение:
Поделитесь своими знаниями, ответьте на вопрос:
Нужна ! решить по информатике в программе pascal. в первый месяц курс доллара составил a рублей. в каждый следующий месяц он падал на 3%. каким будет курс доллара во второй, третий, n-ный день? (цикл for) урез сколько месяцев он будет ниже b рублей? (цикл while)
первая часть
program dollar;
var dl: real; mn: integer;
function cd(a: real; m: integer): real; - функция вычисления курса доллара a на указаный месяц m
var i: integer;
if a> 0 then for i: =1 to m do a: =a*0.97;
cd: =a;
end;
begin
writeln('введите начальный курс доллара');
readln(dl);
writeln('введите число месяцев');
readln(mn);
write('курс будет равен');
writeln(cd(dl,mn));
end.