главная     электронная почта

Решение задачи

{Дана лин. таб содерж. группы одинаковых подряд идущих положит. чисел.Вывести на экран "число-кол-во чисел в группе,число-кол-во чисел в группе, ... "}


uses crt;
var a : array [1..100] of longint;
 {кол.эл.не больше 100}
    m,n,i : longint;
begin
  clrscr;
  write('введите кол-во элм. таб. a,n=');
  readln(n);
  for i:=1 to n do
  begin
    write('a[',i,']=');readln(a[i]);
  end;
  i:=1; m:=1;(*кол. одинак.эл.*)
  while i<=n do
  begin
    if a[i]<>a[i+1]
    then begin
(*если подряд идущие эл.разные 
то печать стоящий первым
и их кол. брать новое i для 
выполнения команды пока и счетчик m
опять взять =1 для 
подсчета других чисел*)
write('число: ',a[i]);
writeln(' кол-во ',m);
i:=i+1;
m:=1;
end {сдесь ; не ставить}
else
(*если подряд идущие эл.одинаковые
 то их считаем и берем
новое i для выполнения команды пока*)
    begin
          i:=i+1;
          m:=m+1;
         end;
  end;
  readln;
end.


Hosted by uCoz