Нечётная прогрессия Известны количество и сумма нескольких подряд идущих нечётных чисел. Нужно найти эти числа.
Input Со стандартного устройства ввода вводятся 2 натуральных числа – N и S, не превосходящих 2000, – количество и сумма.
Output Нужно выдать на стандартное устройство вывода через пробел N искомых целых нечётных чисел. ПРОБЕЛ В КОНЦЕ СТРОКИ НЕ СТАВИТЬ.
Input: 5 35
Output: 3 5 7 9 11
Input: 1 49
Output: 49
На C
на земле существует пока что 2 вида информации аналоговая и цифровая. Аналоговая – это та информация которую воспринимаем мы посредством наших сенсоров (видим, нюхаем, трогаем, пробуем на вкус, слышим), цифровая – это информация отраженная в зашифрованном виде. Компьютер работает с цифровой информацией. То есть для того чтобы передать нам рисунок он должен сначала его закодировать в набор чисел, а потом уже раскодировать обратно чтобы вывести на экран монитора. Возьмем к примеру обычные символы. Например когда мы набираем какой-нибудь текст то каждый символ (буква, цифра, знак) имеет свой код. Ведь не надо придумывать несколько сотен тысяч символов для каждого символа каждого языка отдельно. Язык цифр может упростить все. Даже у каждого цвета есть своя цифра, а человеческий глаз может отличит около 16 миллионов цветов. Так что вот почему компьютеры пользуются цифровой информацией. Теперь подробнее о измерения информации. Длину мерят метрами и километрами, вес граммами, килограммами и тоннами, надо же информацию чем то мерить вот и придумали специальные единицы измерения биты, байты, килобайты и т.д. Бит (от английского binary digit - двойной разряд, соответственно 0 и 1) означает самую маленькую единицу измерения.
1 байт - 8 бит
1 КБ (Килобайт) - 1024 Байт
1 МБ (Мегабайт) - 1024 КБ
1 ГБ (Гигабайт) - 1024 МБ
1 ТБ (Терабайт) - 1024 ГБ
Компьютерная система исчисления немного отличается от обычной. В компьютерной системе все исчисления происходят по двоичной системе, т.е. 2-4-8-16-32-64-128-256-512-1024. Вот поэтому ученые и взяли за основу цифру 1024.
Информация единицы измерения количества информации служат для измерения объёма информации — величины, исчисляемой логарифмически. Чаще всего информация единицы измерения количества информации касается объёмакомпьютерной памяти и объёма данных, передаваемых по цифровым каналам связи. Единица — бит — является основой исчисления информации в цифровой технике. Особое название имеет 4 бита — ниббл (полубайт, тетрада, четыре двоичных разряда), которые вмещают в себя количество информации, содержащейся в одной шестнадцатеричной цифре. Итак, информация о единицах измерения количества информации будет выглядеть следующим образом: байт, килобайт, мегабайт, гигабайт. Понятия информация и единицы измерения количества информации и качество информации тесно связаны между собой. Вопрос выбора информации, единицы измерения количества информации фактически равнозначен выбору основания для логарифма количества состояний. Следует также заметить, что информация, единицы измерения количества информации случайной величины точно равна логарифму количества состояний лишь при равномерном распределении. Во всех прочих случаях количество информации будет меньше.
И конечно система счисления – это записи (изображения) чисел. Различные системы счисления, которые существовали раньше и которые используются в настоящее время, делятся на две группы:
· Позиционные;
· Непозиционные.
Наиболее совершенными являются позиционные системы счисления – системы записи чисел, в которых вклад каждой цифры в величину числа зависит от ее положения (позиции) в последовательности цифр, изображающей число.
Наша привычная десятичная система является позиционной.
В числе 34 цифра 3 обозначает количество десятков и «вносит» в величину числа 30: 3×10 + 4 = 34
В числе 304 цифра 3 обозначает количество сотен и «вносит» в величину числа 300: 3×100 + 4 = 304
Позиционные системы счисления – результат длительного исторического развития непозиционных систем счисления.
1)В первом варианте программа выдает неверный ответ, если в числе есть хотя бы один ноль.
var
a, n, i, min, tmp, m: integer;
begin
m := 1;
read(a);
tmp := a;
n := 0;
min := 10;
while tmp > 0 do
begin
n := n + 1;
if(tmp mod 10 < min) then min := tmp mod 10;
tmp := tmp div 10;
end;
for i := 1 to n do
m := m * 10;
a := a + (min * m);
a := a * 10;
a := a + min;
write(a);
end.
2)Второй вариант с использованием строки:
var
s: string;
i, min: integer;
begin
readln(s);
min := 10;
for i := 1 to length(s) do
if(strtoint(s[i]) < min) then min := strtoint(s[i]);
s := s + inttostr(min);
s := inttostr(min) + s;
writeln(s);
end.