Например, так: явно подсчитать кол-во, "загубив" повторяющиеся числа: int count_unique(int *a, int n){ int *ind = malloc(n * sizeof(int)); int i, j, count = 0; for (i = 0; i < n; i++) ind[i] = 1; for (i = 0; i < n; i++) for (j = i + 1; j < n; j++) if (a[i] == a[j]) ind[j] = 0; for (i = 0; i < n; i++) count += ind[i]; free(ind); return count; } или: отсортировать массив, а дальше по нему один раз пройтись. или: составить двусвязный список из элементов массива, а потом удалить повторяющиеся так же, как и в первом варианте. и т.д.
burtsev3339
05.01.2023
Var a, s: real; i: longint; begin readln(a); {с предусловием} i : = 2; s : = 1; while(s < = a) do begin s : = s + 1 / i; i : = i + 1; end; writeln(i - 1); {с постусловием} i : = 1; s : = 0; repeat s : = s + 1 / i; i : = i + 1; until(s > a); writeln(i - 1); end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Які програмні подіїі існують у середовищі scratch?