Напишите программу, которая сортирует массив и находит количество различных чисел в нем.
10-11 класс
|
Используйте алгоритм быстрой сортировки.
var i, j, h, a, z, n, k: integer;
array1: array [1..100] of integer;
array2: array [1..100] of integer;
procedure swap(var x, y: integer);
var t: integer;
begin
t := x; x := y; y := t
end;
begin
randomize;
write('Введите значение N: ');
readln(n);
for i := 1 to n do
begin
array1[i] := random(10) + 1;
end;
for i := 1 to n do
begin
writeln('Массив:');
for i := 1 to n do write(array1[i], ' ');
writeln;
end;
for h := 1 to n - 1 do
for z := 1 to n - h do
if array1[z] > array1[z + 1] then
swap(array1[z], array1[z + 1]);
for i := 1 to n do
begin
writeln('После сортировки:');
for i := 1 to n do write(array1[i], ' ');
writeln;
end;
for i:=1 to n do
begin
k := 0;
for j := 1 to n do
if array1[i] <> array1[j] then k:=k+1;
if k = n - 1 then array2[i] := array1[i];
end;
for i := 1 to n do
if array2[i] > 0 then a := a + 1;
writeln('Различных чисел: ', a);
end.
Другие вопросы из категории
диагонали. Напечатать матрицу В и значение произведения.
Читайте также
двузначных элементов массива, которые не оканчиваются на 3. №2. Дан массив из 100 элементов. Каждый элемент может принимать целочисленные значения от 1 до 500. Напишите программу, которая позволит найти и вывести минимальное значение среди элементов массива, которые делят максимальное значение элементов массива без остатка.
подсчитать среднее арифметическое положительных элементов массива, которые кратны первому элементу массива. №2. Дан массив из 40 элементов. Каждый элемент может принимать целочисленные значения от 0 до 200. Напишите программу, которая позволит найти наиболее часто встречающийся элемент массива
определяет количество чисел, кратных 4. Программа получает на вход
количество чисел в последовательности, а затем сами числа. В
последовательности всегда имеется число, кратное 4. Количество чисел не
превышает 1000. Введённые числа не превышают 30 000. Программа должна
вывести одно число — количество чисел, кратных 4.
2. Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, кратное 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 3. Количество чисел не превышает 1000. Введённые числа не превыша ют 30 000. Программа должна вывести одно число — минимальное число, кратное 3.
Напишите программу, которая вычисляет НОК двух чисел. Используйте функцию.
а)удвоенное значение числа,если число положительное; б)абсолютное значение числа,если число отрицательное.
2)Напишите программу которая анализирует введенное с клавиатуры число на четность и сообщает о результате.