|
Вопрос # 1 202/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты! Помогие, пожалуйста, написать программу на Pascal:
условие: дано натуральное число N, необходимо перевести его в 8-ричную систему счисления и проверить, есть ли в таком представлении хотя бы одна семерка.
Заранее спасибо.
 |
Вопрос задала: s_ksuha (статус: Посетитель)
Вопрос отправлен: 16 декабря 2007, 16:03
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Николай Рубан
Здравствуйте, s_ksuha!
Вот решение Вашей задачи:
var oct,c:string;
dec,i:integer;
begin
write('DEC=');readln(dec); {вводим число в десятичной системе счисления}
oct:='';
while dec>0 do {болк в котором переводим число в восьмиичную систему}
begin
i:=dec mod 8;
dec:=dec div 8;
str(i, c);
oct:=c+oct;
end;
writeln('OCT=',oct); {выводим число в 8-чной системе счисления}
writeln(pos('7',oct)<>0); {выводим TRUE, если в числе содержится
хотя бы одна цифра 7 и FALSE в противном случае}
readln;
end.
Good Luck!!!
 |
Ответ отправил: Николай Рубан (статус: 10-ый класс)
Время отправки: 16 декабря 2007, 16:43
|
Мини-форум вопроса
Всего сообщений: 1; последнее сообщение — 16 декабря 2007, 16:53; участников в обсуждении: 1.
|
Николай Рубан (статус: 10-ый класс), 16 декабря 2007, 16:53 [#1]:
Да, еще немного можно сократить код... Видоизменив болк в котором переводим число в восьмиичную систему.
while dec > 0 do
begin
str(dec mod 8, c);
oct:=c+oct;
dec:=dec div 8;
end;
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|