![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Дано натуральное число. Найти сколько раз в нем встречается каждая цифра.
![]() |
|
#2
|
|||
|
|||
|
Код:
Var
S:string;
i,k:integer;
c: array [0..9] of integer;
begin
{Ввести строку}
for i:=1 to Length(S) do
begin
for k:=0 to 9 do
if S[i] = IntToStr(k) then inc(c[i]);
end;
for i:=0 to 9 do
writeln(i,' = ',c[i]);
readln;
end.Последний раз редактировалось ChinYan, 22.12.2010 в 09:27. |
|
#3
|
||||
|
||||
|
Как в книге было написано, я так и переписал свой вариант. А число наверно можно поставить любое.
|
|
#4
|
|||
|
|||
|
Код:
const c='0123456789';
var i,j,k:integer;
s:string;
begin
write('s=');readln(s);
for i:=1 to length(c) do begin
k:=0;
for j:=1 to length(s) do
if c[i]=s[j] then Inc(k);
if k<>0 then writeln(c[i],'=',k);
end;
readln; |
|
#5
|
||||
|
||||
|
Stil и ChinYan вам огромное спасибо за помощь. А можно ли эту прогу сделать не под DOS, а под графический режим. Например кидаем на форму одну Edit1 и Memo1, потом вводим числа, нажимаем Enter и результаты выводятся на Memo1.
Заранее низский поклон за помощь. ![]() |
|
#6
|
|||
|
|||
|
Код:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
const c='0123456789';
var i,j,k:integer;
s:string;
begin
if Key=#13 then begin
s:=Edit1.Text;
memo1.Clear;
for i:=1 to length(c) do begin
k:=0;
for j:=1 to length(s) do
if c[i]=s[j] then Inc(k);
if k<>0 then Memo1.Lines.Add(c[i]+'='+IntToStr(k));
end;
end;
end;Последний раз редактировалось stil, 22.12.2010 в 10:05. |