1 / 1 / 0
Регистрация: 03.10.2011
Сообщений: 96
1

Определите, какая цифра в этом числе встречается чаще других

02.12.2011, 16:26. Показов 1420. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Условие: дано натуральное число P. Определите, какая цифра в этом числе встречается чаще других. Программа написана правильно, только нужно кое-что доделать. Когда вводишь к примеру 12345, то программа пишет, что повторяется больше всех цифра 1, а мне нужно, чтобы она в таких ситуациях выводила: Ни одна из данных цифр не повторяется ни разу. Что нужно дописать в программе?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Program L6_3;
{ Дано натуральное число P. Определите, какая цифра в этом числе встречается чаще других }
Var
    P: Word;
    Mas: Array [0..9] of Byte;
    i,k: Byte;
procedure zifra;
Begin
    Write('P='); Readln(P);
    for i:=0 to 9 do Mas[i]:=0;
    while (P>0) do begin
      i:=P mod 10;
      P:=P div 10;
      Mas[i]:=Mas[i]+1;
  end;
  k:=0;
  for i:=1 to 9 do
      if Mas[i]>Mas[k] then k:=i;
    Writeln('Цифра ',k);
End;
begin
zifra;
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.12.2011, 16:26
Ответы с готовыми решениями:

Процедуры. Дано натуральное число. Определите, какая цифра в этом числе встречается чаще других
Дано натуральное число P. Определите, какая цифра в этом числе встречается чаще других. Program...

Сколько раз минимальная цифра числа, встречается в этом числе
Сколько раз минимальная цифра числа, встречается в этом числе... Пожалуйста, не пересылайте на...

Дано двухзначное число и цифра. Определить, есть ли введенная цифра в этом числе
Дано двухзначное число и цифра. Определить, есть ли введенная цифра в этом числе.

Верно ли, что цифра a встречается в числе реже, чем цифра b?
Дано натурально число. Верно ли, что цифра a встречается в нем реже, чем цифра b?

9
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
02.12.2011, 22:15 2
незначительные изменения во второй части процедуры: надо проверять не только условие, что количество цифр больше, чем заданное, но и что количество цифр больше единицы.
Pascal
1
2
3
      if (Mas[i]>Mas[k]) and (Mas[i]>1) then k:=i;
    if k=0 then Writeln('Ни одна из данных цифр не повторяется ни разу')
    else Writeln('Цифра ',k);
1
1 / 1 / 0
Регистрация: 03.10.2011
Сообщений: 96
03.12.2011, 16:16  [ТС] 3
Спасибо, но появилась ещё одна проблема. Если вводишь, к примеру 222333, то выводит, что больше всего повторяется цифра 2. Надо чтоб выводила, что-то по типу: одинаковое число повторений у нескольких цифр.
0
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
03.12.2011, 16:19 4
сейчас подумаю
1
SuPeR XaKer
03.12.2011, 16:24
  #5
 Комментарий модератора 
VladosLancer,
Допишите программу, исходя из условия.
не очень то информативное название для темы.
1
1 / 1 / 0
Регистрация: 03.10.2011
Сообщений: 96
03.12.2011, 16:29  [ТС] 6
Sorry за название темы
0
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
03.12.2011, 16:29 7
тогда так, хотя код получился грубоватым, я понимаю...
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Program L6_3;
{ Дано натуральное число P. Определите, какая цифра в этом числе встречается чаще других }
Var
    P: integer;
    Mas: Array [0..9] of Byte;
    i,k,pov,kol: Byte;
 
procedure zifra;
Begin
    Write('P='); Readln(P);
    for i:=0 to 9 do Mas[i]:=0;
    while (P>0) do begin
      i:=P mod 10;
      P:=P div 10;
      Mas[i]:=Mas[i]+1;
  end;
  k:=0; pov:=0;
  for i:=0 to 9 do
if (Mas[i]>Mas[k]) and (Mas[i]>1) then
    begin
    k:=i;
    kol:=mas[i];
    end;
    if kol=0 then Writeln('Ни одна из данных цифр не повторяется ни разу')
    else
    begin
    for i:=0 to 9 do
        if (Mas[i])=kol then pov:=pov+1;
    if pov=1 then Writeln('Цифра ',k)
    else Writeln('Одинаковое число повторений у нескольких цифр');
    end;
End;
begin
zifra;
end.
1
1 / 1 / 0
Регистрация: 03.10.2011
Сообщений: 96
03.12.2011, 16:33  [ТС] 8
всё работает, спасибо
0
1 / 1 / 0
Регистрация: 03.10.2011
Сообщений: 96
05.12.2011, 01:11  [ТС] 9
И последний момент, если мы вводим не натуральное число, к примеру -3452, то нужно, чтобы выводило: данное число не натуральное.
0
trainspotting
1086 / 486 / 384
Регистрация: 11.11.2010
Сообщений: 773
05.12.2011, 01:23 10
Pascal
1
2
3
4
5
6
repeat
  Write('P='); 
  Readln(P);
  if p<1 then
    writeln('Oshibka vvoda. Vy vveli ne naturalnoe chislo.');
until p>0;
0
05.12.2011, 01:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.12.2011, 01:23
Помогаю со студенческими работами здесь

какая цифра в числе встречается реже всего
составить программу, определяющую, какая цифра в числе встречается реже всего. Если таких цифр...

Верно ли, что цифра A встречается в заданном числе реже, чем цифра B?
помогите пожалуйста решить две задачи очень срочно нужно 1. дан массив. Переписать его...

Проверить какая из букв или встречается чаще
Задан текст. Проверить какая из букв ‘k’ или ‘w’ встречается чаще. Помогите пожалуйста. Зарание...

Какая из букв, «Е» или «О», встречается в предложении чаще.
Составьте программу, определяющую, какая из букв, «Е» или «О», встречается в предложении чаще.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru