В отсортированном массиве найти кол-во минимальных элементов. (Программу нужно написать на Паскале, чтобы там присутствовали операторы такие, как: Random и Randomize)

1

Ответы и объяснения

2013-05-18T16:39:24+00:00

Немного не понял с тем что искать, поетому искал количество елементов которые <0

#include "stdafx.h"
#include<iostream>
#include<time.h>
using namespace std;
int const N = 15;
void main(){
setlocale(0,"");
srand(time(NULL));
int arr[N];
for (int i = 0; i < N ; i++) arr[i]=rand()%71-30;


int tmp;

for(int i = 0; i < N - 1; ++i) // i - номер прохода
{
for(int j = 0; j < N - 1; ++j) // внутренний цикл прохода
{
if (arr[j + 1] < arr[j])
{
tmp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = tmp;
}
}
}

int count(0);
for (int i = 0; i < N; i++) {
if (arr[i]<0) count++;
cout<<arr[i]<<" ";

}


cout<<endl<<"Kolichestvo otricatelnih chisel = "<<count<<endl;
system("pause");
}

 

 

______ ПАСКАЛЬ ____

 

const
m = 10;

var
arr: array[1..m] of integer;
i, j, k,min: integer;

begin
cls; min:=0;
randomize;

for i := 1 to m do begin
arr[i] := random(71)-30;
end;
writeln; writeln;


for i := 1 to m-1 do
for j := 1 to m-i do
if arr[j] > arr[j+1] then begin
k := arr[j];
arr[j] := arr[j+1];
arr[j+1] := k
end;

write ('Îòñîðòèðîâàííûé ìàññèâ: ');
for i := 1 to m do
begin
if arr[i]<0 then inc(min);
write (arr[i]:4);
end;
writeln;
write('min chisel = ',min);
writeln;

readln
end.