Помогите с задачей по pascal - Вопросы по Pascal

Вопрос Помогите с задачей по pascal

Регистрация
13 Май 2013
Сообщения
71
Репутация
0
Спасибо
0
Монет
0
Дано задание:

Допустим у нас есть число которое содержится в переменной N. Нам нужно найти в N числа кратные трем и поменять их местами. Если таких чисел нет, выводим ноль. Если такое число только одно, выводим сообщение :'Число только одно. Его не с чем менять'

К примеру дано число 66713, после выполнения программа должна выдать : 36716
 
Регистрация
5 Янв 2013
Сообщения
69
Репутация
0
Спасибо
0
Монет
0
распределяешь ЦИФРЫ этого числа в массив (желательно сделать его большим). Далее цикл в цикле и ветвление с условием, которое проверяет, есть ли такие пары чисел, если есть, то поднимаешь флаги и используешь swap. флаги нужны для того что-бы сказать есть ли такие цифры, сколько их, и для исключения возможности повторения замены мест (если цикл будет без последнего условия, то цифры поменяются местами два раза, т.е. не поменяют положения).
 
Регистрация
7 Дек 2012
Сообщения
74
Репутация
0
Спасибо
0
Монет
0
вот прога, используй
program cifr; //цифры числа
uses crt;
var i,k,m,mn:Integer;
n:longint;
c:array[1..9] of integer;
begin
clrscr;
writeln(' Cifri chisla');
writeln('----------------------');
writeln;
write('Vvesti chislo ne bolee 9 cifr-->'); readln(n);
k:=0; //определение количества цифр
while n>0 do begin // и запись их в массив
k:=k+1;
c[k]:=n mod 10;
n:=n div 10;
end;
for i:=k downto 1 do
write(c:3);
writeln;
writeln('konec zadachi');
readln;
end.
 
Регистрация
1 Ноя 2013
Сообщения
78
Репутация
-3
Спасибо
0
Монет
0
Все не правильно вообще. Паскаль, это серия видеокарт GTX 1000 от куртки. Кстати, очень удачная
 
Сверху Снизу