Вот сама та задача:
Входной файл: 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
______________________
Выберите себе работу по душе, и вам не придется работать ни одного дня в своей жизни.
Конфуций