Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2014, 19:46   #1
Flower2
Пользователь
 
Регистрация: 27.10.2013
Сообщений: 22
По умолчанию Задача паскаль про число

Дано натуральное число, найти максимальную цифру и посчитать ее количество. Я смогла сделать, чтобы искало макс число и выводило на экран. Только как посчитать ее количество не знаю.
Код:
var n,k:integer;

begin
writeln('Число ');
readln(n);

k:=n mod 10;

while n>0 do begin

      n:=n div 10;

      if k<(n mod 10) then k:=n mod 10;

      if k=9 then break;

end;

writeln(k);

end.
n введённое число, k максимальное
Flower2 вне форума Ответить с цитированием
Старый 01.06.2014, 20:07   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Цитата:
посчитать ее количество
Что означает количество цифры?
Может быть, количество цифр в числе?
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 01.06.2014, 20:11   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Если в один цикл, то держать счетчик найденных цифр, в виде массива например array Conts[0..9] of Byte. И прибавлять 1 по соответствующему индексу

Если в два цикла, то вторым прогоном просто посчитать количество вхождений нужной цифры
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 01.06.2014, 20:19   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
{ c:integer;}
{.......}
c:=0;
while n>0 do begin
if k=(n mod 10) then c:=c+1;
n:=n div 10;
end;
writeln(c);
{...........}
end.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 01.06.2014, 20:24   #5
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Код:
var
  m,i,n,k:integer;
begin
  writeln('Число ');
  readln(n);
  m:=n;
  k:=n mod 10;
  while n>0 do
    begin
      n:=n div 10;
      if k<(n mod 10) then
        k:=n mod 10;
    end;
  writeln(k);
  i:=1;
  n:=m;
  k:=n mod 10;
  while n>0 do
    begin
      n:=n div 10;
      if k=(n mod 10) then
        inc(i);
    end;
  writeln(i);
  readln;
end.
ZX Spectrum-128 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача про матрицу паскаль kat1438 Паскаль, Turbo Pascal, PascalABC.NET 10 05.12.2012 01:27
задача про N городов(паскаль)помогайте советом angel.-.smerti Помощь студентам 4 24.12.2011 12:51
Задача про шахматную доску, Паскаль Locksmaster Помощь студентам 2 02.11.2011 12:45
Задача про шары в шляпах [Паскаль] t2skler Помощь студентам 1 05.12.2010 11:13
Задача про округление объёма проданной газировки [Паскаль] balla Помощь студентам 0 04.12.2010 11:24