Автор | Сообщение |
|
Отправлено: 28.03.21 16:57. Заголовок: егэ17-68
68) (А.Г. Минак) Рассматривается множество целых чисел, принадлежащих числовому отрезку [2079; 43167], которые делятся на 7 и обязательно имеют в своей записи цифры 0, 2 и 5. Найдите количество таких чисел и минимальное из них. В ответе запишите два целых числа: сначала количество, затем минимальное число. Программа: var i,k,n,c,x,min:integer; begin k:=0; for i:= 43167 downto 2079 do begin if (i mod 7 =0) then begin x:=i; c:=0; while x>0 do begin if (x mod 10 =0)then c+=1; if (x mod 10 =2)then c+=1; if(x mod 10 =5) then c+=1; x:=x div 10; end; if (c>=3) then begin k+=1; min:=i; end; end; end; println(k,min); end. В чём ошибка???
|
|
|
Ответов - 2
[только новые]
|
|
|
Отправлено: 28.03.21 17:40. Заголовок: Ответ
Здравствуйте, Павел Ефимович! Исправление ошибки: цитата: | c1:=0; c2:=0; c3:=0; while x>0 do begin if (x mod 10 = 0) then c1+=1; if (x mod 10 = 2) then c2+=1; if (x mod 10 = 5) then c3+=1; x:=x div 10; end; if (c1>0) and (c2>0) and (c3>0) then begin |
| или так: цитата: | if (i mod 7 =0) then begin x:=i.ToString; if ('0' in x) and ('2' in x) and ('5' in x) then begin k+=1; |
|
|
|
|
|
Отправлено: 29.03.21 08:47. Заголовок: polyakovss , Спасибо..
polyakovss , Спасибо огромное! Второй вариант интересный... ☺
|
|
|
|