Линейная таблица, Подсчитать количество чисел |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Линейная таблица, Подсчитать количество чисел |
Ксюша |
Сообщение
#1
|
Гость |
Привет. Помогите решить задачу: Подсчитать количество различных чисел, встречающихся в ленейной таблице.
|
APAL |
Сообщение
#2
|
Смотрю... Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: 6 |
F.A.Q. по матрицам читала?
-------------------- |
Ксюша |
Сообщение
#3
|
Гость |
Читать - то читала, но что такое линейная таблице?
|
APAL |
Сообщение
#4
|
Смотрю... Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: 6 |
Я так думаю, что это матрица array [1..n] of ....
-------------------- |
volvo |
Сообщение
#5
|
Гость |
Код const n = 50; { размер линейной таблицы } var table: array[1 .. n] of integer; { сама таблица } was: array[1 .. n] of integer; { доп. массив } i, j, current, count: integer; found: boolean; begin { ввод таблицы } ... { подсчет } for i := 1 to n do begin found := false; for j := 1 to current do found := found or (was[j] = table[i]); if not found then begin inc(current); was[current] := table[i]; end end; writeln('количество различных чисел = ', current) end. Набирал без проверки, прямо сюда, так что могут быть ошибки... P.S. Если числа ограничены 0 - 255, можно использовать множества - будет работать быстрее |
APAL |
Сообщение
#6
|
Смотрю... Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: 6 |
volvo, ну вот. Как всегда впереди всех. Мог бы и подождать - может Ксюша сама сделала бы - это было бы полезней...
-------------------- |
Rothmans |
Сообщение
#7
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: 0 |
Код const n=100; var a:array[1..n] of integer; i,j,k:integer; begin k:=0; for i:=1 to n do a[i]:=random(1000); for i:=1 to n do if a[i]=0 then k:=1; for i:=1 to n-1 do for j:=i+1 to n do if a[j]=a[i] then a[j]:=0; for i:=1 to n do if a[i]<>0 then Ink(k); writeln(k); end. Вот такой вариантик. Только от массива останутся только уникальные числа. |
Текстовая версия | 11.01.2025 21:39 |