[Logo] Форум DL
  [DL]  На главную страницу 
Индекс форума ->Общего плана ->Сообщения об ошибках в DL
Автор Сообщение
Александр Шанцев

Темы: 2
Сообщений: 117

Мой профиль
Вот сама та задача:

Входной файл: input.txt
Выходной файл: output.txt
Время на тест: 2 секунд

Подсчитайте количество различных чисел, встречающихся в целочисленном массиве А[1..10]. Повторяющиеся числа учитывать один раз.

Пример Пример ввода:
3
4
0
-5
9
0
0
4
20
30
Пример вывода:
7

Подсмотреть идею решения
Ввести массив A
B[1] = A[1] - где массив B - массив из различных чисел
n = 1 - количество чисел в массиве B
Цикл по i от 2 до 10
j = 1
Пока (j<=n) и (A[i]<>B[j]) делать Увеличить j на 1
Если j>n
то n = n+1, B[n] = A[i]
Вывести n

Вместо Цикл по i от 2 до 10 должно быть Цикл по i от 1 до 10, а то выдает результат меньший на единицу. Эта вспомогательная задача для 623 задачи(ОМ34.Различные числа)

Вот то решение которое прошло проверку и выдавала правильные результаты:
program p616;
var
   a,b   : array [1..10] of longint;
   i,j,n : longint;
begin
     assign(input,'input.txt'); reset(input);
     assign(output,'output.txt'); rewrite(output);
     for i:=1 to 10 do read(a[i]);
         for i:=1 to 10 do  begin
           j:=1;
           while (j<=n) and (a[i]<>b[j]) do j:=j+1;
            if j>n then  n:=n+1; b[n]:=a[i];  end;
     writeln(n);
     close(input); close(output);
end.


23.9 20:19 2. Различные числа 4 / 4 Все тесты успешно пройдены P047.PAS DelTA3 at DLServer Turbo Pascal 7.0
23.9 20:30 ОМ34. Различные числа 1 / 1 Все тесты успешно пройдены P047.PAS DelTA3 at Nit_server Turbo Pascal 7.0
______________________
Выберите себе работу по душе, и вам не придется работать ни одного дня в своей жизни.

Конфуций
Михаил Долинский

Темы: 1985
Сообщений: 47296

Мой профиль
Это не ошибка DL.
Я ответил здесь
 
Индекс форума ->Общего плана ->Сообщения об ошибках в DL
Time:0,031