Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 02.05.2011, 12:28
cash cash вне форума
Прохожий
 
Регистрация: 15.03.2011
Сообщения: 35
Репутация: 10
По умолчанию Циклы

Помогите пожалуйста. Решил задачу. Ну не совсем правильно, помогите найти ошибку.
Условие задачи:
Найти все натуральные числа , не превосходящие заданного n, которые делятся на каждую из своих цифр.
Код HTML:
var x,n,i:integer; begin write('Vvedite chislo n: '); readln(n); for i:=1 to n do begin x:=i; while x<>0 do begin if (x mod 10=0)or(i mod(x mod 10)<>0) then else writeln(i); x:=x div 10; end; end; readln; end.
Он у меня после десяток начинает нужные цифры показывать по 2 раза, а ненужные 1 раз. Как убрать этот дубликат?
Ответить с цитированием
  #2  
Старый 02.05.2011, 19:38
Аватар для march
march march вне форума
Начинающий
 
Регистрация: 04.05.2009
Сообщения: 110
Репутация: 18
По умолчанию

Код:
var
 n,i,meter:integer;
 s:string;
 b:boolean;
begin
 write('Vvedite chislo n: ');
 readln(n);
 for i:=1 to n do
  begin
   s:=inttostr(i);
   b:=true;
   for meter:=1 to length(s) do
    begin
     if b=true then
      if strtoint(copy(s,meter,1))<>0 then //как поступать с нулем?
                                                       //здесь ноль игнорируем
       if (i mod strtoint(copy(s,meter,1)))<>0 then
        b:=false;
    end;
   if b=true then
    writeln(i);
  end;
 readln;
end.
Вроде должно работать.
__________________
От корректности формулировки поставленной задачи зависят:
качество, скорость и желание её реализации!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 18:45.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025