![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
brahma |
![]() ![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Репутация: ![]() ![]() ![]() |
Доброго времени суток всем.
Перым своим сообщением на этом форуме прошу помочь решить следующую задачу : Дано натурально число N. Найти цифры, не входящие в десятичную запись числа N. Рекомендуется применить множественный тип языка прогр. Pascal. Спс за внимание,жду ответа.. |
Ozzя |
![]()
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
set1:=[];
readln(n);
while (n > 0) do
begin
digit := n mod 10;
include(set1,digit);
n := n div 10;
end;
for i:=0 to 9 do
if i not (in set1) then
write('Цифра', i , ' не входит')
|
klem4 |
![]()
Сообщение
#3
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
в программе есть недочет, если ввести n = 0, результат будет не верным.
+ компилятор это не пропустит: if i not (in set1) then
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
brahma |
![]()
Сообщение
#4
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Репутация: ![]() ![]() ![]() |
в программе есть недочет, если ввести n = 0, результат будет не верным. + компилятор это не пропустит: if i not (in set1) then
В любом случае говоря о натуральных числах нужно заранее оговаривать включен ли ноль в их состов или нет, о чем в условиях умалчивается. Как изменить программу для n=0 ? компилятор пропустит это : if not(i in set1) then
|
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата Как изменить программу для n=0 ? Хотя бы вот так:...
if n = 0 then set1 = [0]
else begin
set1 := [];
while (n > 0) do begin
digit := n mod 10;
include(set1, digit);
n := n div 10;
end;
end;
...
Сообщение отредактировано: volvo - |
brahma |
![]()
Сообщение
#6
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата volvo ..Точно.спасибо. |
Ozzя |
![]()
Сообщение
#7
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата в программе есть недочет, если ввести n = 0, результат будет не верным. Здесь тормознул. Виноват. Цитата компилятор это не пропустит:
if i not (in set1) then
Виноват дважды. Не проверял. Писал прямо тут. |
![]() ![]() |
![]() |
Текстовая версия | 21.04.2025 1:14 |