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

Обработка числовых данных

27.11.2009, 21:11. Показов 1108. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
задача: Дано n-значное целое число типа longint. вывести на экран только повторяющиеся цифры и общее количество их повторений. помогите плиз
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.11.2009, 21:11
Ответы с готовыми решениями:

Обработка числовых данных
дано n-значное число типа longint.Подсчитать кол-во четных цифр в числе.ПОМОГИТЕ ПОЖАЛУЙСТА ОЧЕНЬ...

Обработка числовых данных
совершенно не понимаю с какой стороны подойти к этой задаче... Описать процедуру Minmax(A,B),...

Обработка числовых массивов
Определить минимальный элемент двухметрного массива и с помощью перестановок строк и столбцов...

Обработка числовых и символьных массивов
помогите, плиз, решить 2 задачки - очень надо( очень срочно. совсем не знаю, что делать(( тема:...

8
37 / 37 / 28
Регистрация: 23.11.2009
Сообщений: 103
27.11.2009, 21:22 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure kol(n1:longint);
var i,k,s:integer;
begin
for i:=1 to n1 do
begin
k:=n1 mod 10;
a[i]:=k;
n1:=n1 div 10;
inc(s);
end;
for i:=1 to s do
begin
for j:=i to s do
if a[i]=a[j] then inc(k);
writeln(a[i],k);
end;
end;
Вроде должна работать
1
0 / 0 / 0
Регистрация: 04.10.2009
Сообщений: 22
27.11.2009, 23:06  [ТС] 3
спасибо большое) попробую)

Добавлено через 1 час 39 минут
чет у меня не получаеться( нужно еще прописать в var a...не знаю конкретно как( помогите плиз(
0
37 / 37 / 28
Регистрация: 23.11.2009
Сообщений: 103
28.11.2009, 03:11 4
Pascal
1
2
3
4
5
6
7
8
9
uses crt;
var a:array[1..100] of integer;
{Потом вставляете всё то что было написано выше.}
Begin{Это начало главной программы}
clrscr;
readln(n);
kol(n);
readkey;
end.
Вот))
1
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
28.11.2009, 04:07 5
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
var
  n:longint;
  temp:string;
  i,j,nc,rc,cc:integer;
  m:set of char;
begin
  readln(n);
  str(n,temp);
  nc:=0;
  rc:=0;
  for i:=1 to length(temp) do
  begin
    if not (temp[i] in m) then
    begin
      m:=m+[temp[i]];
      cc:=0;
      for j:=1 to length(temp) do
        if temp[i]=temp[j] then
          inc(cc);
      if cc>1 then
      begin
        inc(nc);
        inc(rc,cc-1)
      end;
    end;
  end;
  writeln('Òàêèõ öèôð: ',nc,'. Ñóììà ïîâòîðîâ: ',rc)
end.
1
Платежеспособный зверь
8861 / 4290 / 1629
Регистрация: 28.10.2009
Сообщений: 11,451
28.11.2009, 14:28 6
Программа unlucky выдаёт полную фигню, а у Inadequate не даёт ответа на поставленную задачу: вывести повторяющиеся цифры и количество их повторений
Вот вариант, который сделан по условию
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
var
n:longint;
a,kol:array[1..20]of integer;
i,j,k,f:integer;
begin
repeat
writeln('vvedite chislo');
readln(n);
until n<=maxlongint;
while n>0 do
begin
inc(k);
a[k]:=n mod 10;
n:=n div 10;
end;
for i:=1 to k do
 for j:=1 to k do
  if a[i]=a[j] then inc(kol[i]);
  for i:=1 to k do
    begin
    f:=0;
        begin
        for j:=1 to i-1 do
        if a[j]=a[i]then f:=1;
       end;
    if (f=0)and(kol[i]>1) then writeln('cifra=',a[i],' povtorov= ',kol[i]);
   end;
   end.
2
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
28.11.2009, 14:53 7
alexevt, я почему то подумал что надо общую характеристику повторов и повторяющихся цифр... Ну чтобы было по условию, в моем варианте надо дописать всего одну строку, и много что убрать, так как задача становится проще... Вот я думаю будет не лишним:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var
  n:longint;
  temp:string;
  i,j,cc:integer;
  m:set of char;
begin
  readln(n);
  str(n,temp);
  writeln('Повторяющиеся цифры:');
  for i:=1 to length(temp) do
  begin
    if not (temp[i] in m) then
    begin
      m:=m+[temp[i]];
      write('Цифра ',temp[i],' повторяется ');
      cc:=0;
      for j:=1 to length(temp) do
        if temp[i]=temp[j] then
          inc(cc);
      writeln(cc,' раз(а)')
    end;
  end;
end.
1
Платежеспособный зверь
8861 / 4290 / 1629
Регистрация: 28.10.2009
Сообщений: 11,451
28.11.2009, 14:57 8
Я тоже хотел сначала делать как строку, но потом понял, что это уже не интересно
1
0 / 0 / 0
Регистрация: 04.10.2009
Сообщений: 22
28.11.2009, 15:42  [ТС] 9
мальчики спасибо вам огромное!!!
0
28.11.2009, 15:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.11.2009, 15:42
Помогаю со студенческими работами здесь

Обработка двумерных числовых массивов
Заполнить двумерный числовой массив В(5, 5) целыми числами. Столбец, содержащий минимальный...

Перевод из числовых данных в тип данных string и обратно
Мне надо написать алгоритм с составными числами. Из пяти и шести чисел чтобы получилась сумма из...

Обработка данных типа запись (комбинированный тип данных).
Вывести ФИО и отметки по физике студентов, имеющих средний балл, больше 4,5. Помоги...

Обработка данных
Создать в программе Блокнот текстовый файл. Написать программу, которая находит сумму всех чисел,...


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

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

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