Вопрос № 89000: Помогите плиз!! нужно написать: Программу деления чиссел в p-ичной системе исчисления! при том что p - не больше 16!!! заранее благодарю!...Вопрос № 89028: Помогите пожалуйста!
Определить все представления нечетного числа n в виде суммы трех простых чисел.
Все работает,только вместо суммы трех простых чисел он выдает все возможные варианты, помогите исправить.
var
n: inte...
Вопрос № 89.000
Помогите плиз!! нужно написать: Программу деления чиссел в p-ичной системе исчисления! при том что p - не больше 16!!! заранее благодарю!
Отвечает: Решетник Д
Здравствуйте, Антон Ульянов!
Если числа даны в 10-й системе, то просто делите,а результат переводите в систему.
Можете переводить в 10-у, делить, а потом возвращать назад в Р-систему.
А можете написать алгоритм по аналогии деления "столбиком". Думаю, не нужно объяснять, как это )
--------- Жизнь коротка, чтобы писать на ассемблере
Ответ отправил: Решетник Д (статус: Студент)
Ответ отправлен: 28.05.2007, 23:45 Оценка за ответ: 1 Комментарий оценки: наверно, если я прошу написать мне программу, то нужно именно написать мне программу а не дать сопутствующие советы которые еще раз дают мне понять что я нихрина в этом паскале не понимаю!!!
Вопрос № 89.028
Помогите пожалуйста!
Определить все представления нечетного числа n в виде суммы трех простых чисел.
Все работает,только вместо суммы трех простых чисел он выдает все возможные варианты, помогите исправить.
var
n: integer;
c: array[1..100] of integer;
print: boolean;
const
diapazon: set of byte = [1, 2, 3, 5];
procedure find(num,k,len: integer);
var i: integer;
begin
if num=0 then begin
print := true;
for i := 1 to pred(len) do
if not (c[i] in diapazon) then print := false;
if print then begin
for i:=1 to len-1 do write(c[i],' '); writeln
end;
end
else begin
for i:=1 to k do
if num-i>=0 then begin
c[len]:=i;
find(num-i,i,len+1);
end;
end;
end;
begin
writeln('введите число');
readln(n);
find(n,n,1);
readln
end.
Отвечает: Shao
Здравствуйте, Серов Алексей Евгеньевич!
Все просто.
Заменяем строку "if print then begin" на "if (print)and(len-1=3) then begin".
Т.е. вставляем проверку на кол-во слогаемых, которых у нас должно быть 3.
С ув., Shao.
Ответ отправил: Shao (статус: 1-ый класс)
Ответ отправлен: 29.05.2007, 01:18