Вот такая задача: "Даны целое число л (1<=k<=180) и последовательность цифр 10111213...9898, в которой вписаны подряд все двухзначные числа. Определить k-ю цифру"
Помогите мне разобраться и решить эту задачу
http://forum.pascal.net.ru/index.php?showtopic=1557&hl=Определить++цифру#
AngeLL, все очень просто: все цифры в заданной тобой последовательности - двузначные. Что это значит? То, что ((k - 1) div 2) даст тебе порядковый номер числа в последовательности (начиная с нуля), из которого надо вытянуть первую цифру, если k - нечетное, и вторую - если k - четное...
То есть, делаем:
begin
readln(k);
number := ((k - 1) div 2) + 10; { <-- поскольку последовательность начинается с 10 }
if odd(k)
then writeln(number div 10) { <-- нечетный номер цифры - первая цифра в числе }
else writeln(number mod 10); { <-- четный номер - вторая цифра }
end.
М | Сообщение выделяется в отдельную тему |
Вообще-то, это дубликат: http://forum.pascal.net.ru/index.php?showtopic=19933
М | Тогда я просто объединяю эти две темы. |
levitra cialis generico
Cialis Grossesse