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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.09.2011, 19:38   #1
StoneGod
Пользователь
 
Регистрация: 13.09.2011
Сообщений: 15
По умолчанию объясните как решить задачу

Дан массив из 10 чисел, найти максимальное количество одинаковых элементов.
Делать на до както так но я где ошибся.
Код:
program fgdf;
var a:array [1..10] of integer;
j,k,i,p:integer;
begin
writeln('vvedi massiv');
for i:=1 to 10 do
readln(a[i]);
p:=0;
k:=1;
for i:=1 to 9 do
for j:=i+1 to 10 do
if a[i]=a[j]
then k:=k+1;
if p<k then p:=k;
writeln('p=',p);
readln;
end.

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 28.09.2011 в 01:16.
StoneGod вне форума Ответить с цитированием
Старый 27.09.2011, 19:47   #2
MyLastHit
Очень суровый
Участник клуба
 
Аватар для MyLastHit
 
Регистрация: 17.12.2009
Сообщений: 1,988
По умолчанию

Условие непонятное. Наверное как-то так..
Код:
program fgdf;
var a,b:array [1..10] of integer;
j,i,max:integer;
begin
  writeln('vvedi massiv');
  for i:=1 to 10 do
  begin
    readln(a[i]);
    b[i]:=1;
  end;
  for i:=1 to 10 do
  begin
    for j:=1 to 10 do
    if a[i]=a[j] then 
    inc(b[i]);
  end;
  max:=b[1];
  for i:=2 to 10 do
  if b[i]>max then 
  max:=b[i];
  writeln('Max=',max);
  readln;
end.
Ненавижу быть как все, но люблю, чтобы все были как я.

Последний раз редактировалось MyLastHit; 27.09.2011 в 19:51.
MyLastHit вне форума Ответить с цитированием
Старый 27.09.2011, 20:33   #3
StoneGod
Пользователь
 
Регистрация: 13.09.2011
Сообщений: 15
По умолчанию

Спасибо!!Я маленько подредактировал теперь выглядит так
Код:
program fgdf;
var a,b:array [1..10] of integer;
j,i,max:integer;
begin
  writeln('vvedi massiv');
  for i:=1 to 10 do
  readln(a[i]);
  b[i]:=0;
  for i:=1 to 10 do
  for j:=1 to 10 do
  if a[i]=a[j] then
  inc(b[i]);
  max:=b[1];
  for i:=2 to 10 do
  if b[i]>max then
  max:=b[i];
  writeln('Max=',max);
  readln;
end.

________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 28.09.2011 в 01:16.
StoneGod вне форума Ответить с цитированием
Старый 27.09.2011, 20:54   #4
MyLastHit
Очень суровый
Участник клуба
 
Аватар для MyLastHit
 
Регистрация: 17.12.2009
Сообщений: 1,988
По умолчанию

b[i] нужно проинициализировать по всем i.
Цитата:
for i:=1 to 10 do
begin
readln(a[i]);
b[i]:=0;
end;
Ненавижу быть как все, но люблю, чтобы все были как я.
MyLastHit вне форума Ответить с цитированием
Старый 27.09.2011, 20:58   #5
StoneGod
Пользователь
 
Регистрация: 13.09.2011
Сообщений: 15
По умолчанию

программа в обоих случаях работает одинаково. во всяком случае на маём паскале
StoneGod вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите как решить задачу andrey_94 Общие вопросы C/C++ 4 18.12.2009 23:57
Как решить такую задачу? BBOBAHH Общие вопросы Delphi 5 22.10.2009 11:15
как решить задачу по QBasic pavelewseew Помощь студентам 2 27.01.2009 14:27
как решить задачу по Delphi? Defender42 Помощь студентам 1 27.12.2008 18:24
Как решить задачу? BETONOMESHALKA Общие вопросы Delphi 8 04.11.2007 00:19