ПОМОГИТЕ ПОЖАЛУЙСТАНа изученном вами языке программирования составьте программу для замены в данном тексте всюду: части ДЕТЕКТИВ
ПОМОГИТЕ ПОЖАЛУЙСТА
На изученном вами языке программирования составьте программу для замены в данном тексте всюду: части ДЕТЕКТИВ на часть РОМАН
Например, текст ДЕТЕКТИВ БЕЗ ПОГОНИ - ЭТО НЕ ДЕТЕКТИВ должен стать таким: РОМАН БЕЗ ПОГОНИ - ЭТО НЕ РОМАН, а из текста НЕ МОГУ ЗАСНУТЬ БЕЗ ДЕТЕКТИВА должен получиться текст НЕ МОГУ ЗАСНУТЬ БЕЗ РОМАНА.
/* * * Программа решает задачу: Дана строка символов. Группы символов, * разделенные пробелами (одним или несколькими) и не содержащие пробелы * внутри себя, будем называть словами. * Заменить в строке слова S на слова W ( S, W - заданы). * * */
Дописываем немного код для перебора и проверяем вывод var x, a, b, t: longint;
begin for t := -1000 to 1000 do begin x := t; a := 0; b := 1; while x > 0 do begin if x mod 2 > 0 then a := a + x mod 8 else b := b * (x mod 8); x := x div 8; end; if (a = 2) and (b = 12) then writeln(t); end; end. Вывод 598 626 654 689 906 913 т.е. минимальное число 598
Аналитическое решение: имеем дело с 8ричным числом. Перебираем его цифры. Если цифра нечетная то сумируем ее к А, а четные перемножаем с В В = 12 это произведение 12 = 2*6 = 3*4 = 1*12, но нужно чтоб все числа были четные потому 2*6 А = 2. 2 = 2 = 1+1 , поскольку числа нечетные, то 2 = 1+1 Значит у нас есть 4 8ричные цифры 2,6,1,1 Минимальное число которое может из них получиться 1126(8) = 598(10)