Другие языки программирования и технологии

Помогите с написанием программы на Pascal

Дан одномерный массив А(N). Отсортировать массив по возрастанию. Найти произведение неотрицательных элементов массива с четными номерами.
Просто в качестве примера сортировки целочисленного двубайтного рандомного массива:
 var i, j, k, m, n: integer; 
A: array of integer;

procedure print();
begin
j := 0;
for i := 0 to m do
begin
j := j + 1;
write(A[i]: 5);
if j = 10 then
begin
writeln();
j := 0
end
end;
if j > 0 then writeln()
end;

begin
write('n: ');
readln(n);
setlength(A, n);
randomize();
m := n - 1;
j := 0;
writeln('Исходный массив:');
for i := 0 to m do
A[i] := random(1999) - 999;
print();
for i := 1 to m do
for j := m downto i do
if A[j - 1] > A[j] then
begin
k := A[j - 1];
A[j - 1] := A[j];
A[j] := k
end;
writeln('Массив, отсортированный по возрастанию:');
print()
end.
Это - Паскаль, а Pascal ABC - это Паскаль скорее лишь только по названию и уже давным давно не поддерживается. Кроме того Вы не написали что у Вас там за одномерный массив длины N и откуда он берётся, так что доводить до логического завершения вышеприведённую программу бессмысленно...
ВП
Владимир Писчиков
66 572
Лучший ответ
#include <iostream>
#include <clocale>
#include <cstdlib>
#include <ctime>

int main() {
srand(time(NULL));
setlocale(LC_ALL, "Russian");
int size = 0;
__int64 mult = 1;

std::cout << "Ââåäèòå ðàçìåð ìàññèâà: ";
std::cin >> size;

int *array = new int[size];
std::cout << "Ìàññèâ: " << std::endl;
for (int i = 0; i < size; i++) {
std::cout << (array[i] = rand() % 25) << " ";
if (!(i % 2) || !(i))
mult *= array[i];
}
std::cout << "\nÏðîèçâåäåíèå ýëåìåíòîâ ñ ÷åòíûìè íîìåðàìè: " << mult << std::endl;

for (int i = 0; i < size - 1; i++) {
int min = i;
for (int j = i + 1; j < size; j++)
if (array[j] < array[min])
min = j;
int tmp = array[i];
array[i] = array[min];
array[min] = tmp;
}

std::cout << "Îòñîðòèðîâàííûé ìàññèâ: " << std::endl;
for (int i = 0; i < size; i++)
std::cout << array[i] << " ";
std::cout << std::endl;
delete [] array;

system("pause");
return 0;
}
Константин Wirt Pascal? Какой ещё Pascal?